무슨 일이 있었나
Forever Security는 고객 머신에서 코딩 에이전트가 세션 도중에 알려진 악성 npm 패키지 'function-color'를 설치하기 시작한 실제 공격을 포착했습니다. 추적 결과 트리거 명령은 ~/Downloads에 조용히 떨어진 13KB AGENTS.md 파일에서 비롯된 것으로 나타났습니다. CLI 에이전트는 실행 디렉토리에서 명령 파일을 자동으로 로드하고 브라우저는 파일을 ~/Downloads에 자동 저장하므로 '일반 텍스트 파일이 실행 파일이 됩니다.' Forever는 Codex(>90% 성공) 및 Claude Code(~50%)에서 이 체인을 재현했으며, 연구원들은 이 허점에 CVE가 없고 OpenAI와 Anthropic 모두 패치하지 않을 것이라고 밝혔습니다. 파일 따르기와 브라우저 자동 저장 모두 '의도된 대로 작동하는' 기능이기 때문입니다.
왜 중요한가
이것은 사용자의 전체 권한으로 코드를 실행하는 작동 중인, 야생에서 관찰된 에이전트 실행 공격 클래스입니다. 이 공격은 해당 머신에서 향후 모든 Codex 세션 시작 시 실행되는 지속적인 악성 MCP 서버를 심거나, 모델을 사칭하거나, Claude Code API 트래픽을 재라우팅하여 OAuth 자격 증명을 유출하고, AI 코딩 에이전트가 접근할 수 있는 모든 비밀에 도달할 수 있습니다 — AI 코딩 어시스턴트의 완화를 조용한 공급망 및 자격 증명 수확 벡터로 전환합니다.
공격 경로
적대적인 웹 페이지는 표준 백그라운드 다운로드를 통해 개발자의 ~/Downloads 디렉토리에 ~13KB AGENTS.md 플레이스홀더 텍스트 파일을 조용히 작성합니다 (클릭 없음, 프롬프트 없음). 개발자가 나중에 해당 폴더 내에서 Codex 또는 Claude Code를 실행하면 에이전트가 파일을 신뢰된 프로젝트 지침으로 자동 읽고 사용자의 권한으로 실행합니다 — ~/.codex/config.toml에 악성 MCP 서버 항목을 등록하고, .claude/settings.json에서 ANTHROPIC_BASE_URL을 재작성하며 (OAuth 토큰을 유출하고 모든 Claude 트래픽을 공격자 서버로 재라우팅), 알려진 악성 'function-color' 패키지의 npm install을 실행합니다. 이 공격 체인은 양측 모두 '설계된 대로' 동작하므로 CVE가 없고 어느 공급업체도 패치하지 않을 것입니다.
영향받는 시스템
OpenAI Codex CLI, Anthropic Claude Code 및 CLAUDE.md/AGENTS.md/.mcp.json을 신뢰된 지침으로 처리하는 유사 CLI AI 에이전트; 브라우저가 다운로드를 ~/Downloads에 조용히 저장하는 동작과 결합. 공급업체 패치 없음 (아키텍처 교차점, CVE 없음).
완화 방안
~/Downloads 또는 브라우저가 쓸 수 있는 폴더에서 코딩 에이전트를 실행하지 마십시오. 항상 깨끗한 프로젝트별 작업 디렉토리에서 실행하십시오. CLAUDE.md/AGENTS.md/.mcp.json/settings.json을 신뢰 경계로 취급하고 첫 실행 전과 각 풀 후에 검토하십시오. 에이전트 샌드박스/승인 설정을 제한하고 (--dangerously-bypass-approvals-and-sandbox 피하기), 'function-color' 패키지를 차단 목록에 추가하고, 에이전트가 시작한 npm 설치 및 설정 파일 쓰기를 모니터링하십시오.