
주요 AI 코딩 도구(Claude Code, OpenAI Codex, GitHub Copilot, Google Gemini CLI)의 플러그인 설치·업데이트 과정에서 검증된 코드와 실제 실행되는 코드가 달라질 수 있는 공급망 취약점 '플러그인4셸(Plugin4Shell)'이 공개됐습니다. 공격자가 플러그인 저장소를 장악하면, AI 코딩 에이전트의 자동 업데이트 기능을 이용해 사용자가 아무 행동을 하지 않아도 악성코드가 실행될 수 있는 '제로클릭 RCE(원격에서 시스템을 마음대로 실행하는 공격)' 경로가 만들어집니다. AI 코딩 에이전트는 소스코드·인증 토큰·클라우드 자격증명·SSH 키·CI/CD 환경에 광범위하게 접근할 수 있어 악성 플러그인 하나로도 피해 범위가 매우 넓어질 수 있습니다. Anthropic은 Claude Code 2.1.179에서, OpenAI는 Codex 0.146.0에서 각각 수정했으나, GitHub Copilot과 Gemini CLI는 완전한 패치 여부가 불분명합니다. 현재까지 실제 공격에 악용된 사례는 확인되지 않았지만, 기업은 AI 플러그인을 소프트웨어 공급망으로 엄격히 관리해야 합니다.
AI 보안업체 AIR Security가 Claude Code, OpenAI Codex, GitHub Copilot, Google Gemini CLI의 플러그인 검증 과정에서 SHA 고정 우회 취약점 '플러그인4셸(Plugin4Shell)'을 발견했다. 공격자가 플러그인 저장소를 장악하면 검증된 버전처럼 위장해 실제로는 다른 악성코드를 실행시킬 수 있다.
자동 업데이트 기능과 결합하면 사용자의 조작 없이도 악성코드가 실행되는 '제로클릭 RCE'가 가능하다. AI 코딩 에이전트는 소스코드·인증 토큰·클라우드 자격증명·SSH 키·CI/CD 환경에 폭넓게 접근하므로 별도 권한상승 없이도 피해 범위가 크게 확대될 수 있다.
플러그인 무결성 검증 시 커밋 해시(SHA pinning)를 고정하지만, 일부 에이전트가 다운로드 후 실제 코드가 지정된 커밋과 일치하는지 재확인하지 않는다. Git이 커밋 해시와 유사한 이름의 브랜치를 처리하는 방식의 허점도 악용된다.
Anthropic은 Claude Code 2.1.179에서, OpenAI는 Codex 0.146.0에서 수정 완료. GitHub Copilot은 별도 패치 미공개(단, GitHub 자체가 해시형 브랜치명을 제한해 GitHub 호스팅 저장소는 조건 제한됨). Google은 Gemini CLI 대신 새 에이전트 환경으로 이전을 안내. 실제 악용 사례는 미확인, CVE 번호 미부여.
Claude Code·Codex 사용 조직은 각각 2.1.179·0.146.0 이상으로 즉시 업데이트해야 한다. 외부 플러그인 마켓 사용을 제한하고, 플러그인 저장소 소유권 변경 및 자동 업데이트 정책을 점검하며, AI 플러그인을 소프트웨어 공급망 관리 체계에 포함시켜야 한다.
본문
주요 AI 코딩 에이전트의 플러그인 설치·업데이트 과정에서 검증된 코드와 실제 실행되는 코드가 달라질 수 있는 공급망 취약점이 공개됐다.
AI 보안업체 에어 시큐리티(AIR Security)는 앤스로픽의 클로드 코드(Claude Code), 오픈AI 코덱스(Codex), 깃허브 코파일럿(GitHub Copilot), 구글 제미나이 CLI(Gemini CLI)에 영향을 주는 취약점을 발견하고 이를 '플러그인4셸(Plugin4Shell)'이라고 명명했다.
"검증한 버전이라고 믿었지만 다른 코드 실행 가능"
문제의 핵심은 플러그인의 무결성을 확인하는 과정에 있다.
AI 코딩 에이전트의 플러그인 마켓은 특정 시점에 검토한 플러그인의 깃 커밋 해시를 고정하는 이른바 'SHA 고정(SHA pinning)' 방식을 사용한다. 일반적으로 커밋 해시는 특정 소스코드 상태를 가리키기 때문에, 이를 고정하면 이후 코드가 변경되더라도 검증된 버전만 실행할 수 있다고 본다.
그러나 연구진은 일부 AI 코딩 에이전트가 해당 커밋을 내려받도록 요청한 뒤 실제로 내려받은 코드가 지정된 커밋과 일치하는지 다시 확인하지 않는 문제를 발견했다. 공격자가 플러그인 저장소를 제어할 수 있다면 검증된 버전처럼 보이게 하면서 실제로는 다른 악성코드를 실행하도록 만들 수 있다는 설명이다.
클로드 코드와 코덱스, 깃허브 코파일럿에서 확인된 공격 방식은 깃(Git)이 커밋 해시와 비슷한 이름의 브랜치를 처리하는 방식을 악용한다. 다만 깃허브는 40자리 16진수 형태의 브랜치 이름을 제한하고 있어, 깃허브에 호스팅된 저장소에는 동일한 방식이 그대로 적용되지 않는다. 반면 비트버킷(Bitbucket)이나 일부 자체 구축 깃 서버처럼 이런 이름을 허용하는 환경은 영향을 받을 수 있다.
제미나이 CLI에서는 다른 방식의 검증 우회가 확인됐지만, 결과적으로 고정된 코드와 실제 실행되는 코드가 달라질 수 있다는 점은 동일하다.
자동 업데이트 결합하면 사용자 동작 없이 악성코드 실행
위험성이 커지는 부분은 플러그인 자동 업데이트다.
에어 시큐리티는 클로드 코드와 코덱스에서 이미 설치된 플러그인의 업데이트가 백그라운드에서 수행될 수 있기 때문에 공격자가 저장소를 장악한 뒤 악성코드를 배포하면 사용자가 별도의 플러그인을 새로 설치하거나 승인하지 않아도 코드가 실행될 수 있다고 설명했다.
이 때문에 연구진은 이를 '제로클릭 원격코드실행(RCE)' 공격 경로로 분류했다.
공격 시나리오는 크게 두 가지다. 공격자가 처음부터 정상적인 플러그인을 만들어 배포한 뒤 이용자가 늘어난 시점에 악성화하거나, 기존에 신뢰받고 있는 플러그인의 개발자 계정이나 저장소를 탈취해 악성코드를 배포하는 방식이다.
AI 코딩 에이전트 권한 커 피해 범위 커질 수 있어
일반적인 개발도구 확장기능보다 위험성이 큰 이유는 AI 코딩 에이전트가 사용하는 권한 때문이다.
AI 코딩 에이전트는 개발 과정에서 소스코드와 프로젝트 파일을 읽고 수정하거나 터미널 명령을 실행할 수 있다. 사용 환경에 따라 깃 저장소, 인증 토큰, 클라우드 자격증명, SSH 키, 내부 개발시스템, 지속적 통합·배포(CI/CD) 환경 등에 접근할 수도 있다.
따라서 악성 플러그인이 실행되면 별도의 권한상승 과정 없이 AI 코딩 에이전트가 이미 가지고 있는 권한을 그대로 악용할 가능성이 있다. 에어 시큐리티도 플러그인을 단순 부가기능이 아니라 사용자의 권한을 상속받는 애플리케이션으로 봐야 한다고 지적했다.
클로드 코드·코덱스 수정…코파일럿·제미나이 CLI는 대응 상황 달라
9월 18일 기준 공개된 대응 현황을 보면 앤스로픽은 클로드 코드 2.1.179에서 관련 문제를 수정했으며, 오픈AI는 코덱스 0.146.0에서 대응한 것으로 확인됐다.
에어 시큐리티에 따르면 깃허브 코파일럿은 당시 별도의 수정 버전이 공개되지 않았다. 다만 깃허브 자체는 커밋 해시처럼 보이는 브랜치명을 제한하기 때문에 깃허브에 저장된 플러그인의 경우 공격 조건이 제한될 수 있다. 외부 마켓이나 비트버킷, 자체 구축 깃 서버 등을 사용하는 환경은 별도로 점검할 필요가 있다.
구글은 기존 제미나이 CLI 대신 새로운 에이전트 환경으로 이동할 것을 안내한 것으로 전해졌다. 공개자료만으로는 모든 제미나이 CLI 환경에서 해당 문제가 어떤 방식으로 처리되는지 명확하지 않은 부분도 있다.
현재까지 플러그인4셸이 실제 공격에 악용됐다는 증거는 공개되지 않았다. 별도의 CVE 번호도 공개 당시에는 부여되지 않은 것으로 확인됐다. 따라서 이번 사안을 실제 대규모 침해사고로 확대해 해석하기보다는 AI 개발도구 생태계의 새로운 소프트웨어 공급망 위험으로 보는 것이 적절하다.
국내 기업, AI 플러그인도 '소프트웨어 공급망'으로 관리해야
국내 기업들도 AI 코딩 에이전트에서 사용하는 플러그인, 스킬, 모델 콘텍스트 프로토콜(MCP) 서버와 각종 확장기능을 기존 통합개발환경(IDE) 확장 프로그램보다 더 엄격하게 관리할 필요가 있다.
특히 기업 내부에서 승인되지 않은 외부 플러그인 마켓 사용을 제한하고, 플러그인 저장소의 소유권 변경이나 유지관리자 계정 탈취 여부를 점검해야 한다. 자동 업데이트 정책과 플러그인의 실행 권한도 최소화할 필요가 있다.
클로드 코드와 코덱스를 사용하는 조직은 각각 수정 버전인 2.1.179 이상과 0.146.0 이상으로 업데이트했는지 확인하는 것이 우선이다. 외부 깃 저장소 기반 플러그인을 사용하는 경우에는 소스 저장소와 실제 실행 코드가 일치하는지 추가 검증하는 체계도 필요하다.
관련 투런 솔루션
이 뉴스의 취약점·위협, 투런 솔루션으로 대응하세요.






