기술

Claude Code·Codex, 웹사이트가 ‘다운로드’ 폴더에 떨군 파일의 지시를 그대로 따른다

Susan Hill
Google에서 추가하기

웹사이트가 다운로드 폴더에 저장한 텍스트 파일이 이제 컴퓨터의 AI 코딩 에이전트에 명령을 내릴 수 있다. Forever Security 연구진은 고객의 컴퓨터에서 악성코드 설치를 지시하는 AGENTS.md 파일을 발견했다. AGENTS.md는 OpenAI의 Codex 같은 도구가 실행될 때 읽는 일반 텍스트 형식의 지침 파일이다. 파일을 정리하거나 방금 내려받은 파일을 다루려고 다운로드 폴더에서 Claude Code나 Codex를 실행한 적이 있다면, 이 폴더를 자신의 프로젝트 폴더와 똑같이 신뢰한 셈이다.

에이전트는 자체 규칙을 어긴 것이 아니다. AGENTS.md와 Claude에 해당하는 CLAUDE.md는 프로젝트가 에이전트에 사용할 도구와 테스트 실행 방법 등을 알려주기 위한 파일이며, 에이전트는 이런 지침을 따르도록 만들어졌다. 연구진이 지적하는 문제는 웹이 마음대로 파일을 채워 넣을 수 있는 폴더가 바로 다운로드 폴더라는 점이다. 연구진은 “OpenAI나 Anthropic이 패치로 해결할 문제는 없습니다”라며 “폴더에 있는 AGENTS.md를 따르는 에이전트는 정확히 그렇게 작동하도록 만들어진 것”이라고 썼다.

실제 파일은 엔지니어링 지침이라는 제목의 13KB 문서였다. 공격 지시는 문서 끝부분에 숨겨져 있었고, 설정 안내문처럼 차분한 어조로 작성됐다. Codex에 설정 파일에 ‘프로젝트 도구’ 서버를 추가하고 function-color라는 npm 패키지를 설치하라고 지시했다. 연구진은 이 패키지가 약 2년간 들키지 않은 캠페인에서 사용된 악성코드라고 설명했다. Forever의 소프트웨어가 코드 실행 전에 설치를 차단했다. 팀이 진행한 테스트에서는 대부분 계산기만 여는 무해한 대체 프로그램을 사용했는데, Codex는 시도의 90%가 넘는 경우 파일의 지시를 수행했다. 실제 패키지도 격리된 가상 머신에서 한 차례 실행됐다. 설정 변경은 Codex의 시스템 전체 설정 파일에 저장돼, 이후 어느 폴더에서 Codex를 실행하든 공격자가 심어 놓은 서버가 로드된다.

Claude Code를 속이기는 더 어려웠다. 연구진은 회사 게이트웨이로 위장한 공격자 통제 서버를 통해 Claude의 API 트래픽을 보내도록 유도하는 자체 CLAUDE.md를 작성했다. 이 설정 하나로 Claude 로그인 토큰이 넘어가는데, 연구진은 이를 Anthropic의 실제 API에 다시 제출해 피해자 행세를 했다. 또한 가짜 서버는 모델인 것처럼 응답하며 샌드박스를 끈 상태로 명령을 보낼 수 있다. Claude는 이처럼 설정을 바꾸려면 사람의 승인을 요청하고, 이를 거부하는 경우도 많지만, 설정 변경은 약 절반의 경우 실제로 이뤄졌다.

파일을 컴퓨터에 넣는 일은 생각보다 간단하다. Chrome, Edge, Firefox는 기본적으로 저장 위치를 묻지 않고 다운로드 폴더에 파일을 저장하며, 웹페이지는 파일 이름과 내용을 정할 수 있다. 이번 조사 결과를 보도한 BleepingComputer는 연구진의 개념 증명 페이지에 접속해 무해한 AGENTS.md 파일이 다운로드되는 것을 확인했다. Brave는 먼저 권한을 요청했다. Forever의 연구원 갈 와이즈먼(Gal Weizman)은 이 매체에 회사 고객 수백 명이 다운로드 폴더에서 Claude Code, Codex 또는 Cursor의 명령줄 에이전트를 실행하고 있으며, Claude Code만 해도 해당 폴더에서 1,300회가 넘는 세션을 시작했다고 말했다.

이번 연구에는 밝혀지지 않은 부분도 있다. Forever는 악성 파일이 고객의 컴퓨터에 어떻게 들어갔는지 확인하지 못했고, 공격이 성립하려면 그 뒤 누군가가 해당 폴더에서 에이전트를 실행해야 한다. Chrome, Edge, Firefox는 다운로드 알림을 표시하므로 주의 깊은 사용자는 이를 알아챌 수 있다. 실제 페이로드는 macOS용으로 작성됐다. Forever는 AI 에이전트 모니터링 소프트웨어도 판매하므로, 회사가 설명한 위험과 관련해 상업적 이해관계가 있다. 보고서에는 OpenAI나 Anthropic의 답변도 담기지 않았다. 관련 도구는 전 세계에서 판매되고 있으므로, 개발자들이 이를 사용하는 모든 시장에서 노출 위험은 같다.

대응책은 대부분 습관의 문제다. 다운로드 폴더에서 코딩 에이전트를 실행하지 말고, 에이전트가 작업할 프로젝트 폴더에서 실행해야 한다. OpenAI와 Anthropic도 이미 이렇게 권고하고 있다. 직접 작성하지 않은 AGENTS.md나 CLAUDE.md는 에이전트가 읽기 전에 내용을 확인하고, 승인 요청과 샌드박스는 켜 둬야 한다. Codex 설정 파일에서 직접 추가하지 않은 서버 항목이 있는지 살펴보자. 프로젝트의 Claude 설정에서는 자신이 지정하지 않은 API 주소가 있는지 확인해야 한다. 그런 항목을 발견했다면 로그인 토큰이 탈취된 것으로 보고 폐기해야 한다. npm이 이후 삭제한 function-color를 설치한 컴퓨터 역시 침해된 것으로 간주해야 한다.

Forever는 10월 22일 보고서를 공개했고, BleepingComputer는 10월 25일 후속 보도를 내놨다. 연구진은 지침 파일을 읽고 자체 설정을 다시 쓸 수 있는 에이전트라면 무엇이든 같은 방식으로 조종할 수 있다고 말한다. Codex와 Claude Code는 더 긴 목록에 오른 첫 두 사례일 뿐이다. 브라우저에서 파일을 내려받아도 누군가 열기 전까지는 무해하다고 여겨졌다. 이제는 에이전트가 폴더를 읽기 시작하는 순간 파일이 스스로 열리는 셈이다.

태그: , , , , ,

Google에서 추가하기

토론

댓글 0개가 있습니다.