뉴스 목록
BleepingComputer2026. 09. 20.

연구자들, OpenAI Codex 샌드박스 탈출해 호스트 명령 실행 성공

한 줄 요약

보안 연구팀이 OpenAI의 AI 코딩 도우미 Codex에서 샌드박스(격리 실행 환경)를 탈출하는 취약점 두 가지를 발견했습니다. 그중 'Heapjack'는 가장 엄격한 읽기 전용 모드에서도 공격자가 심어 둔 저장소를 개발자가 열기만 해도 그 개발자의 컴퓨터에서 임의 명령을 몰래 실행할 수 있는 RCE(원격 코드 실행) 취약점입니다. 두 취약점 모두 "격리를 담당하는 장치가 격리 대상과 같은 공간에 있었다"는 구조적 설계 실수에서 비롯됐습니다. OpenAI는 신고를 받은 지 8일 만에 두 취약점을 모두 수정했으며, 사용자는 Codex Desktop 26.818.21641 또는 Codex CLI 0.149.0 이상으로 업데이트해야 합니다.

사건

보안 연구원 Oren Yomtov(Accomplish AI)가 OpenAI Codex에서 샌드박스 탈출 취약점 두 가지(Heapjack, Overpatch)를 발견해 2025년 8월 12일 신고했다.

영향

Heapjack은 읽기 전용 최고 제한 모드에서도 공격자가 준비한 저장소를 열기만 하면 개발자 호스트 시스템에서 화면 표시 없이 임의 명령이 실행된다. Overpatch는 작업 공간 외부 파일(예: .zshrc)을 변조해 다음 터미널 실행 시 공격자 코드가 구동된다.

원인

Heapjack: 신뢰·비신뢰 JavaScript 컨텍스트가 같은 Node.js 프로세스의 힙 메모리를 공유해 비신뢰 코드가 v8.getHeapSnapshot()으로 인증 토큰을 탈취 가능했다. Overpatch: apply_patch 도구가 공격자가 제공한 경로에서 직접 쓰기 권한을 유도해 심볼릭 링크를 통해 홈 디렉터리 접근이 가능했다.

대응

OpenAI가 8일 내 패치 완료: Heapjack → Codex Desktop 빌드 26.818.21641, Overpatch → Codex CLI 0.149.0.

실무 포인트

Codex를 사용하는 개발자는 즉시 최신 버전으로 업데이트해야 한다. 같은 유형의 '샌드박스 내부에서 외부를 조작하는' 공격 기법은 Cursor·Gemini CLI 등 타 AI 에이전트에서도 이미 시연된 바 있어, AI 코딩 에이전트 도입 환경 전반의 격리 설계를 재검토할 필요가 있다.

본문

보안 연구원들이 OpenAI Codex 샌드박스를 탈출하는 방법 두 가지를 발견했다. 그중 하나는 Codex의 가장 엄격한 제한 모드에서도 개발자 컴퓨터에서 명령을 실행할 수 있으며, 승인 요청 화면도 표시되지 않는다.

Accomplish AI의 Oren Yomtov에 따르면 두 취약점은 모두 8월 12일 OpenAI에 신고되었고 8일 안에 수정됐다.

두 취약점 중 더 심각한 것은 연구팀이 'Heapjack'라고 부르는 것으로, 평범한 행동을 원격 코드 실행(RCE)으로 만든다. 타인의 저장소를 Codex에서 열고 코드에 대해 질문하기만 해도, 그 저장소를 작성한 사람이 피해자의 컴퓨터에서 샌드박스 밖 명령을 실행할 수 있게 된다.

Codex는 OpenAI의 코딩 에이전트로, 명령줄 도구와 데스크톱 앱으로 제공된다. 경쟁 에이전트들과 마찬가지로, 신뢰할 수 없는 코드가 더 넓은 시스템에 접근하지 못하도록 모델의 행동을 샌드박스 안에서 실행한다. 두 탈출 기법 모두 해당 경계를 내부에서 무력화하는 방식으로 작동한다.

Heapjack

Yomtov의 분석 글에 따르면, Heapjack 기법은 node_repl이라는 구성 요소를 표적으로 삼는다. Codex Desktop은 설치 시 전역 파일인 *'~/.codex/config.toml'*에 이 항목을 기록한다.

별도의 동의 절차나 비활성화 설정이 없으며, 항목이 공유 설정 파일에 존재하기 때문에 일반 Codex CLI 사용자도 아무런 안내 없이 동일한 도구를 함께 물려받게 된다.

node_repl은 두 개의 별도 JavaScript 실행 컨텍스트를 가진 단일 Node.js 프로세스를 실행한다. 하나는 신뢰할 수 있는 컨텍스트로 OpenAI 자체 코드를 실행하고, 다른 하나는 신뢰할 수 없는 컨텍스트로 에이전트 코드를 실행한다. 신뢰된 컨텍스트는 실행 시마다 새로 생성되는 무작위 토큰을 제시하는 방식으로 신뢰 여부를 증명한다.

문제는 두 컨텍스트가 하나의 Node 프로세스 안에서 동작하며 하나의 메모리 힙을 공유한다는 점이다. 즉, 해당 토큰은 신뢰할 수 없는 쪽에서도 읽을 수 있는 메모리 내 문자열에 불과하다.

Heapjack 공격 경로

(​​​​​Accomplish.ai)

신뢰할 수 없는 코드는 *'v8.getHeapSnapshot()'*으로 힙 스냅샷을 찍고 UUID 형태의 모든 문자열을 시도한다. 틀린 추측은 "not authorized"를 반환하고, 올바른 토큰에 잘못된 인자를 넣으면 실제 유효성 검사 오류가 반환되어 토큰이 맞다는 사실을 알 수 있다.

토큰을 획득한 뒤, 신뢰할 수 없는 코드는 신뢰된 컨텍스트가 네이티브 비샌드박스 상위 프로세스와 통신하는 데 사용하는 것과 동일한 파이프에 자신의 요청을 기록한다.

상위 프로세스는 토큰을 확인하고 유효하다고 판단해 요청을 처리한다. 개념 증명(PoC)에서는 시스템의 'open' 명령을 이용해 Codex 프로세스 트리 바깥의 애플리케이션을 실행했다. 동일한 접근 권한으로 Unix 소켓에도 접근할 수 있으며, Docker 데몬 소켓이 가장 명백한 표적이고, 전역 설정 파일 편집 도구도 마찬가지다.

이 모든 과정이 에이전트가 아무것도 쓰지 않아야 하는 가장 엄격한 샌드박스 모드인 읽기 전용 모드에서 실행된다.

Overpatch

두 번째 취약점인 Overpatch는 오픈소스 Codex CLI에 존재한다. 작업 공간 쓰기 모드에서 에이전트는 프로젝트 폴더 내부에만 쓸 수 있으며, 홈 디렉터리를 대상으로 하는 셸 명령은 거부된다.

연구팀은 Codex 자체 패치 도구인 apply_patch를 이용해 홈 디렉터리에 쓰는 데 성공했다.

해당 도구는 패치에 명시된 각 경로의 상위 폴더에 쓰기 권한을 부여하는 방식으로 동작한다. 경로로 '/tmp'를 지정하면 디스크 루트에 대한 쓰기 권한이 부여된다.

실제 동작하는 익스플로잇은 두 가지 변경 사항이 담긴 패치를 사용한다. 하나는 '/tmp'를 명시해 권한을 넓히는 역할만 하고, 다른 하나는 홈 디렉터리로의 심볼릭 링크를 통해 '.zshrc'에 한 줄을 추가한다.

첫 번째 변경을 제거하면 쓰기가 거부된다. 해당 변경이 포함되면 이후 개발자가 터미널을 열 때 공격자의 코드가 샌드박스 없이 실행된다.

동일한 근본적 실수

두 버그는 같은 형태를 공유한다. 적용 메커니즘이 적용 대상 안에 존재했다는 점이다. apply_patch는 공격자가 제공한 입력으로 자체 권한을 계산했고, node_repl은 신뢰·비신뢰 코드를 구분하는 비밀값을 비신뢰 코드와 동일한 메모리에 보관했다.

두 경우 모두, 샌드박스는 내부에서 무언가를 통과시키라는 지시를 받았다.

이 버그 유형이 새로운 것은 아니다. 2026년 7월, Pillar Security 연구원들은 Cursor, Codex, Gemini CLI, Google의 Antigravity 전반에 걸쳐 동일한 개념을 시연했다. 샌드박스 안에 머무는 에이전트가 파일을 작성하면, 샌드박스 밖의 신뢰된 도구가 나중에 해당 파일을 실행하는 방식이었다.

Yomtov의 X 게시글에 반응한 한 댓글 작성자는 "V8 컨텍스트는 전역 변수를 격리할 뿐 메모리는 격리하지 않으므로, 샌드박스는 힙이 한 번도 동의한 적 없는 약속에 불과했다"고 썼다. 또 다른 댓글 작성자는 신뢰 경계를 "방 칸막이"에 비유했다. 기본 활성화 동작 자체도 비판을 받았으며, 특권 토큰이 왜 처음부터 비신뢰 JavaScript에서 접근 가능했는지를 묻는 댓글도 있었다.

대응 방법

Accomplish에 따르면 OpenAI는 Codex Desktop 빌드 26.818.21641에서 Heapjack을, Codex CLI 0.149.0에서 Overpatch를 수정했다.

사용자는 해당 버전 이상으로 업데이트해야 한다. Yomtov는 OpenAI가 신고 후 8일 만에 두 문제를 모두 해결했다고 밝혔다.

BleepingComputer는 게시 전 OpenAI에 논평을 요청했다.

AI 기반 공격에 대비한 보안 청사진 구축

Mikko Hyppönen과 NFL, CHANEL, Atlassian의 보안 리더들이 함께하는 2시간짜리 디지털 서밋에 참여하세요. AI 속도의 공격이 무엇을 바꾸는지, 방어자가 멈춰야 할 것은 무엇인지, 그리고 머신 속도로 검증·결정·수정·재검증하는 방법을 다룹니다.

자리를 예약하세요

출처
BleepingComputer · bleepingcomputer.com
원문 보기

분야별 뉴스

관심 분야의 보안 이슈를 모아 보세요.

TORUN SECURITY

투런이 제공하는 보안 솔루션

공격 표면 관리부터 엔드포인트·내부정보 보호까지, 기업 환경에 맞는 보안 솔루션을 투런이 함께 설계합니다.