OpenAI의 Codex를 겨냥한 4건의 CVE가 9월 1일 18:30 UTC에 GitHub Advisory Database에 공개됐으며, 유지관리자 공지가 아니라 NVD를 통해 유입됐다. 각 항목은 공격자가 제어하는 .git/config가 Codex의 편의 기능을 코드 실행으로 바꾸는 방식을 다룬다.

작동 방식

CVE-2026-19590core.hooksPath를 악성 git hook을 가리키도록 악용한다. CVE-2026-19592는 일반적인 메타데이터 수집 중 실행되는 보조 프로그램이 있는 core.fsmonitor를 이용한다. CVE-2026-19591은 PowerShell의 --% 중단 파싱 토큰을 악용해, 명령 안전성 파서가 이를 잘못 해석하도록 만들고 승인되지 않은 파일 쓰기 git 명령을 통과시킨다. CVE-2026-19593은 clean 또는 process 필터와 함께 attr.tree를 사용해 공격자 프로그램을 실행한다.

흔한 해석이 놓치는 점

이들은 새로 생긴 4개의 취약점처럼 보일 수 있다. 그러나 3건은 5월 중순에 이미 차단됐다. 수정 Pull Request는 각각 5월 15일, 5월 14일, 5월 14일에 병합됐으므로, 배포된 코드는 3개월 넘게 수정된 상태였고 공개 지연은 109일에서 110일에 이른다. 핵심은 새로운 노출이 아니라 지연과 비어 있는 항목들이다. 또 다른 흔한 반응인 “샌드박스가 이를 막았다”는 주장도 각 공지문 자체의 표현과 배치된다. 공격자 코드는 Codex의 명령 샌드박스 밖에서 실행되며, 승인 프롬프트도 없고, 두 경우에는 모델 상호작용조차 전혀 없다. 셋째, git clone이 공격이 아니다. 4건 모두 로컬 .git/config가 그대로 포함된 저장소를 여는 경우에만 성립한다. 즉 zip, 복사된 디렉터리, 공유 볼륨 같은 경우이며, 일반적인 clone에는 그런 내용이 실리지 않는다.

기록만 봐서는 거의 알 수 없다

4건 모두 v3든 v4든 심각도는 “unknown”이고 CVSS 점수도 전혀 없다. 더 중요한 점은 각 항목의 vulnerabilities 배열이 모두 비어 있다는 사실이다. 따라서 어떤 공지도 영향받는 범위나 패치된 버전을 적지 않았고, 기록 어디에도 “X로 업그레이드하라”는 문구가 없다. 4번째 CVE에는 수정 Pull Request 자체가 전혀 언급되지 않아, 기록만으로는 수정 여부를 판단할 수 없다.

이 사례가 속한 패턴

이는 에이전틱 코딩 위협 모델의 가장 순수한 형태다. 실행 원시 요소는 작업공간이 열릴 때 git 메타데이터를 자동으로 읽는 에이전트의 편의 기능이며, 모두가 신뢰하는 샌드박스는 모델이 호출되기 전 이미 우회된다.