주요 AI 코딩 에이전트 4종에서 공격자가 검증된 버전 대신 악성 코드를 설치하게 만들 수 있는 취약점 ‘플러그인4셸(Plugin4Shell)’이 공개됐다. 현지 시각 9월 18일 해커뉴스(The Hacker News)의 보도다. 보안 기업 AIR 시큐리티가 발견했고, 앤트로픽 클로드 코드와 오픈AI 코덱스, 깃허브 코파일럿, 구글 제미나이 CLI가 영향을 받는다. 제로클릭은 이용자가 아무것도 누르지 않아도 공격이 성립하는 방식을 말한다.
에이전트는 온라인 마켓플레이스에서 플러그인을 설치한다. 마켓플레이스는 안전을 위해 각 플러그인을 커밋 해시(SHA)로 검토된 버전 하나에 고정한다. 커밋 해시는 소스 코드의 특정 시점을 가리키는 고유 문자열이다. AIR 시큐리티는 에이전트가 해당 커밋을 요청하기는 하지만 실제로 도착한 코드가 일치하는지 확인하지 않는다는 점을 발견했다. 커밋 해시처럼 보이는 이름의 브랜치를 만들 수 있는 호스트에서는 저장소 소유자가 다른 코드를 가리키게 할 수 있다.
플러그인은 에이전트를 사용하는 사람과 같은 접근 권한으로 실행된다. 교체된 코드는 이용자의 파일과 저장된 자격 증명, 로그인 가능한 시스템에 접근할 수 있다. 백그라운드 자동 업데이트가 켜져 있으면 이용자 개입 없이 공격이 진행되며, 자동 업데이트는 클로드 코드와 코덱스에서 기본으로 실행된다.
AIR 시큐리티는 5월 네 에이전트 모두에서 동작하는 시험 공격을 제작했고 6월 업체들에 통보했다. 앤트로픽은 클로드 코드 2.1.179에서, 오픈AI는 코덱스 0.146.0에서 각각 패치를 배포했다. 깃허브 코파일럿은 아직 패치가 없고, 구글은 제미나이 CLI를 패치하지 않고 신형 에이전트 안티그래비티로 이전하라고 권고했다.
깃허브는 커밋 해시처럼 보이는 브랜치·태그명을 허용하지 않는다. AIR 시큐리티는 비트버킷이나 기업 자체 git 서버처럼 이런 이름을 허용하는 호스트에서 공격이 성립한다고 지적했다. 제미나이 CLI는 메인 브랜치 이름이 FETCH_HEAD인 저장소로 설치 프로그램을 속이는 다른 방식으로 공격받는다.
각 에이전트가 이용자 기기에서 잠금을 확인하는 구조라 마켓플레이스가 해결할 수 없고, 수정은 에이전트 자체에 포함돼야 한다. 9월 18일 기준 CVE 식별자는 배정되지 않았고, 네 업체 모두 보안 권고를 발표하지 않았으며 실제 공격에 사용된 흔적도 없다. 오픈AI는 공개 수정 사항에서 “Git이 요청된 커밋 SHA를 브랜치 이름으로 해석할 수 있다”고 설명했다. 업데이트가 이미 교체된 플러그인을 제거하는지, 향후 교체만 차단하는지는 공개되지 않았다.
자세한 내용은 해커뉴스(The Hacker News)에서 확인할 수 있다.
이미지 출처: 이디오그램 생성
AI Matters 뉴스레터 구독하기



