OpenAI가 Codex 보안 방어를 강화하고, 파괴적 작업을 방지하기 위한 정리 및 권한 제어 메커니즘을 새로 추가했습니다
OpenAI는 사용자 의도를 벗어난 파괴적 작업에 대한 여러 건의 신고를 조사한 후 Codex의 보안 제어 메커니즘을 업그레이드했습니다.
문제는 AI 프로그래밍 에이전트가 명령을 실행할 수 있다는 점이 아닙니다. 이는 오히려 Codex의 핵심 가치입니다. 위험은 광범위한 권한을 가진 에이전트가 정리 또는 파일 관리 작업을 수행할 때 대상 경로를 잘못 해석하는 상황에서 발생합니다.
OpenAI Codex 엔지니어링 책임자 Thibault "Tibo" Sottiaux에 따르면, 회사는 Codex에서 요청 범위를 벗어난 파괴적 작업을 수행한少数의 GPT-5.6 사례를 조사했습니다. 반복적으로 나타난 패턴 중 하나는 임시 디렉터리 정리와 관련이 있었으며, 특히 광범위한 액세스 권한과 제한적인 샌드박스 보호 없이 세션을 실행할 때 두드러졌습니다.
OpenAI의 최신 완화 조치는 여러 계층에서 동시에 적용됩니다:
- 파괴적 작업 전에 삭제 대상을 검증
- 민감한 환경 변수를 재사용하는 대신 전용 임시 디렉터리 사용
- 고위험 명령에 대한 탐지 및 검토 강화
- "완전 액세스" 모드가 실수로 활성화되기 어렵게 변경
- 자동 검토 기능을 개선하여 파괴적 작업을 더욱 안정적으로 식별
- 팀이 관찰한 실패 사례를 기반으로 새로운 평가 및 훈련 작업 추가
핵심 변화는 단일 금지 목록이 아닙니다. OpenAI는 모델의 지침과 그 주변의 실행 환경을 동시에 강화하고 있습니다.
조사는 임시 디렉터리 정리에 초점을 맞춤
OpenAI의 조사 결과, 일부 파괴적 오류는 임시 작업 디렉터리의 정리 로직과 관련이 있는 것으로 나타났습니다.
프로그래밍 에이전트는 작업 과정에서 임시 위치를 자주 생성합니다. 작업에는 압축 파일 풀기, 중간 파일 생성, 테스트 실행, 패치 준비 또는 일회성 빌드 산출물 생성이 포함될 수 있습니다. 이러한 파일을 사후에 정리하는 것은 일반적으로 안전합니다.
임시 디렉터리를 식별하는 변수가 모호하거나, 재사용되거나, 잘못된 형식이거나, 의도치 않게 중요한 위치를 가리킬 때 위험이 발생합니다.
Sottiaux는 다음과 같은 실패 모드를 설명했습니다: 모델이 시스템 환경 변수(예: $HOME)를 임시 작업 디렉터리로 재사용합니다. 이후 정리 명령이 해당 변수를 잘못 해석하면, 임시 디렉터리를 삭제하려던 명령이 사용자의 실제 홈 디렉터리를 가리킬 수 있습니다.
이 오류 체인은 높은 수준에서 다음과 같이 이해할 수 있습니다:
임시 작업 공간 생성 또는 식별
↓
광범위한 시스템 변수 재사용
↓
정리 명령 구성
↓
잘못된 대상 경로 해석
↓
광범위한 권한으로 파괴적 작업 실행
↓
의도된 범위를 벗어난 파일 삭제
제한이 없는 세션에서는 이러한 위험이 특히 심각합니다.
엄격하게 제한된 샌드박스 환경에서는 운영 체제가 잘못된 명령이 관련 없는 디렉터리에 영향을 미치는 것을 방지할 수 있습니다. 완전 액세스 모드에서는 이러한 경계가 의도적으로 제거되므로, 경로 해석 오류가 더 큰 영향 범위를 가질 수 있습니다.
OpenAI의 현재 Codex 문서는 이 차이를 명확히 설명합니다: 일반 workspace-write 모드는 일상적인 편집을 현재 작업 공간으로 제한하는 반면,
danger-full-access는 파일 시스템 및 네트워크 샌드박스 경계를 제거합니다.
Codex는 이제 파괴적 대상을 더 명확하게 확인합니다
첫 번째 주요 완화 조치는 삭제 또는 유사한 파괴적 작업 전에 더 강력한 대상 검증을 수행하는 것입니다.
Codex는 더 이상 정리를 일상적인 마지막 단계로 간주하지 않고, 대상 경로가 실제로 수정하려는 경로인지 확인하도록 명시적으로 지시받습니다.
이는 파괴적 셸 명령이 일반적으로 인수가 올바를 때만 안전하기 때문에 중요합니다.
예를 들어, 전용 임시 디렉터리 삭제와 상위 작업 공간 삭제의 차이는 잘못된 변수 확장, 인용 오류, 경로 정규화 문제 또는 누락된 인수 하나로 발생할 수 있습니다.
새로운 접근 방식은 암시적 가정에 대한 의존도를 줄입니다.
고위험 파일 시스템 작업을 실행하기 전에 시스템은 다음 질문을 더 신중하게 고려해야 합니다:
- 이 명령이 실제로 영향을 미치는 디렉터리는 무엇인가?
- 해당 디렉터리가 이 작업을 위해 생성된 임시 위치인가?
- 경로가 의도된 작업 공간 내에서 해석되는가?
- 대상이 의도치 않게 너무 광범위한가?
- 삭제가 되돌릴 수 없는가?
- 사용자에게 묻지 않고 진행해도 될 만큼 범위가 명확한가?
이는 에이전트 행동 수준에서의 안전 개선입니다.
이는 샌드박스를 대체하지 않지만, 위험한 명령이 샌드박스 경계에 도달할 가능성을 먼저 낮춥니다.
전용 임시 디렉터리가 위험한 변수 재사용을 대체
OpenAI는 또한 Codex가 임시 작업을 처리하는 방식을 변경하고 있습니다.
이미 중요한 의미를 가진 시스템 변수를 재사용하는 대신, 새로운 특수 목적의 임시 디렉터리를 생성하는 것이 더 안전한 패턴입니다.
$HOME과 같은 변수는 일반적으로 프로젝트 파일, 구성, 자격 증명, 애플리케이션 상태 및 기타 개인 데이터를 포함하는 실제 사용자 디렉터리를 가리키기 때문에 특히 민감합니다.
전용 임시 경로를 사용하면 두 가지 이점이 있습니다.
첫째, 대상이 더 좁은 의미론적 의미를 가집니다: 일회성 작업 데이터에만 사용됩니다.
둘째, 시스템이 삭제 대상을 작업 초기에 생성된 정확한 임시 디렉터리와 비교할 수 있으므로 정리 검증이 더 쉬워집니다.
이는 직접적인 엔지니어링 원칙이지만, 자율 에이전트가 기계 속도로 셸 명령을 실행할 수 있을 때 더욱 중요해집니다.
더 안전한 패턴은 실제로 다음과 같습니다:
새로운 임시 디렉터리 생성
↓
작업별 임시 파일을 해당 위치에 저장
↓
정확한 경로 추적
↓
정리 전에 동일한 경로 검증
↓
검증된 임시 디렉터리만 삭제
목표는 광범위한 환경 상태가 정리 대상이 되는 것을 방지하는 것입니다.
위험한 명령 탐지 및 검토 강화
경로 검증은 방어의 한 계층일 뿐입니다.
OpenAI는 또한 위험한 명령을 식별하고 검토에 회부하는 메커니즘을 강화했습니다.
Codex 변경 로그에는 강제 rm 작업에 대한 더 강력한 탐지와 Full Access 확인의 일관성 개선이 이미 기록되어 있습니다. 현재 자동 검토 정책은 현저한 되돌릴 수 없는 손상 위험이 있는 파괴적 작업을 차단 대상 범주에 명시적으로 포함합니다.
중요한 이유는 명령이 문법적으로 완전히 합법적이더라도 안전하지 않을 수 있기 때문입니다.
삭제 명령이 셸 문법 규칙을 완전히 준수하더라도 다음과 같은 이유로 여전히 위험할 수 있습니다:
- 대상 디렉터리 범위가 너무 광범위함
- 작업 공간 외부의 데이터에 영향을 미침
- 해석되지 않은 변수를 사용함
- 대규모 디렉터리 트리를 재귀적으로 삭제함
- 커밋되지 않은 작업 결과를 손상시킴
- 보안 제어를 약화시킴
- 여러 위험한 작업을 단일 셸 호출에 결합함
따라서 OpenAI의 업데이트된 보안 메커니즘은 명령을 실행할 수 있는지 여부만 판단하지 않습니다.
현재 권한과 사용자 승인 하에 이 명령을 실행해야 하는지 여부도 판단합니다.
완전 액세스 권한이 실수로 활성화되기 더 어려워짐
원문은 또한 Codex 완전 액세스 기능의 변화를 강조합니다.
완전 액세스는 의도적으로 매우 강력하게 설계되었습니다. OpenAI의 현재 권한 문서에 따르면 해당 모드에서 Codex는 컴퓨터의 모든 파일을 편집하고 네트워크 액세스 권한이 있는 명령을 승인 없이 실행할 수 있습니다.
이는 임시 가상 머신, 전용 개발 환경 또는 운영자가 의도적으로 무제한 자동화를 원하는 기타 엄격하게 통제된 시스템에서 유용합니다.
그러나 일반 워크스테이션에서는 이 모드가 실수로 인한 결과를 크게 증가시킵니다.
OpenAI는 이제 이 모드를 활성화하는 데 더 높은 장벽을 설정했습니다.
현재 Codex 문서에 따르면, 완전 액세스는 먼저 데스크톱 앱 설정에서 명시적으로 활성화되어야 선택 가능한 권한 모드로 표시됩니다. 인터페이스는 또한 데이터 손실, 유출 및 예기치 않은 동작 가능성에 대한 더 강력한 경고를 표시합니다.
승인된 고위험 보안 모델의 경우, OpenAI는 데스크톱 앱이 완전 액세스 활성화 전에 해당 모델에 대한 추가 경고를 표시하고, 더 안전한 "대신 승인" 모드를 권장한다고 밝혔습니다.
주요 권한 모드 설명
| 모드 | 샌드박스 | 승인 동작 | 실제 위험 |
|---|---|---|---|
| 승인 요청 | workspace-write | 사용자가 모든 경계 외 요청 검토 | 대부분의 로컬 작업에 권장되는 기본 모드 |
| 대신 승인 / 자동 검토 | workspace-write | 검토 에이전트가 적격한 승격 요청 평가 | 동일한 샌드박스 경계를 유지하면서 운영 마찰 감소 |
| 완전 액세스 | danger-full-access | 일반적인 승인 경계 없음 | 가장 높은 위험; 광범위한 파일 시스템 및 네트워크 액세스 권한 보유 |
| 읽기 전용 | read-only | 수정 시 권한 승격 필요 | 검사 및 계획에 적합 |
핵심은 다음과 같습니다: 자동 검토와 완전 액세스는 동일하지 않습니다.
자동 검토는 샌드박스 메커니즘을 유지합니다. 변경되는 것은 샌드박스 경계를 넘는 요청을 평가하는 주체입니다.
완전 액세스는 샌드박스 경계 자체를 직접 제거합니다.
자동 검토는 이제 파괴적 작업을 더 엄격하게 식별합니다
OpenAI는 또한 파괴적 작업을 더 잘 식별하기 위해 자동 검토 규칙을 업데이트했습니다.
몇 분 만에 쇼케이스 사이트를 만들고 리드를 늘리세요
아이디어를 한 문장으로 입력하면 We0 AI가 쇼케이스 사이트, 페이지, CMS를 생성하고 출시 후 고객과 트래픽 확보를 돕습니다.
무료 등록을 위한 하나의 완전한 프로젝트 생성
하나의 완전한 생성 흐름을 시도하고 첫 번째 프로젝트 초안을 빠르게 보는 데 가장 적합합니다.
자동 검토는 독립적인 검토 에이전트로, 기본 Codex 에이전트가 샌드박스 경계를 넘으려 할 때 적격 요청을 평가합니다.
정상적인 흐름은 다음과 같습니다:
기본 Codex 에이전트가 샌드박스 내에서 작업
↓
특정 작업에 추가 권한 필요
↓
Codex가 승인 요청 생성
↓
자동 검토가 해당 요청 평가
↓
승인 → 계속 실행
거부 → Codex는 더 안전한 경로를 찾거나 사용자에게 문의
OpenAI의 문서에 따르면 자동 검토는 다음을 포함하는 요청을 평가할 수 있습니다:
- 승격된 셸 또는 실행 권한
- 차단된 네트워크 접근
- 쓰기 가능한 루트 디렉터리 외부의 수정
- 부작용을 발생시키는 외부 MCP 또는 앱 도구 호출
- 새 웹사이트 또는 도메인에 대한 컴퓨터 사용 접근
해당 정책은 자격 증명 탐지, 데이터 유출, 보안 제어의 지속적 약화, 중대한 돌이킬 수 없는 손상 위험이 있는 파괴적 행위를 포함한 요청을 거부하거나 제한하는 것을 목표로 합니다.
이로 인해 자동 검토는 사용자에게 중요한 보안 계층이 되며, 수동 개입을 줄이면서도 기본 코딩 에이전트에 무제한 접근 권한을 부여하지 않습니다.
그러나 OpenAI는 자동 검토가 샌드박스 메커니즘을 대체할 수 없다고 명시적으로 밝혔습니다.
사용자가 완전한 접근 권한을 선택하고 샌드박스를 제거하면, 자동 검토기는 더 이상 존재하지 않는 경계를 다시 만들 수 없습니다.
OpenAI는 새로운 평가에서 장애를 재생하고 있습니다
완화 작업은 모델 테스트에도 피드백되고 있습니다.
소티오에 따르면, OpenAI는 조사 과정에서 발견된 다양한 유형의 장애를 재생하는 맞춤형 평가를 구축했습니다. 또한 이러한 위험에 대한 강화 학습 과제와 스코어러를 추가하고 있습니다.
이는 드문 파괴적 오류가 고립된 사례로만 평가된다면 개선하기 어렵기 때문에 중요합니다.
실제 장애를 반복 가능한 테스트로 전환함으로써 팀은 다음과 같은 질문을 제기할 수 있습니다:
- 모델이 의도치 않게 과도한 삭제 대상을 인식할 수 있는가?
- 민감한 환경 변수를 재사용하는 것을 피하는가?
- 범위가 불명확할 때 작업을 중단하는가?
- 가능한 경우 복구 가능한 작업을 우선시하는가?
- 자동 검토가 해당 작업을 올바르게 승격 또는 거부하는가?
- 미래의 모델이 동일한 장애를 반복할 것인가?
즉, 이 사건은 회귀 테스트 커버리지로 전환되고 있습니다.
보안 목표는 단순히 하나의 명령 패턴을 패치하는 것이 아니라, 미래의 Codex 버전이 더 넓은 범주의 장애를 재현할 가능성을 낮추는 것입니다.
샌드박스와 권한은 단순한 프롬프트보다 여전히 더 중요합니다
이 조사는 또한 코딩 에이전트 보안에 관한 더 넓은 관점을 강화했습니다.
"파일을 조심히 처리하라"와 같은 자연어 지시는 강력한 보안 경계가 아닙니다.
실행 샌드박스가 바로 그것입니다.
OpenAI 자체 배포 가이드는 샌드박스와 승인을 상호 보완적인 통제 수단으로 설명합니다:
- 샌드박스는 Codex가 쓸 수 있는 위치와 접근할 수 있는 네트워크 리소스를 결정합니다.
- 승인 정책은 Codex가 해당 경계를 넘기 전에 언제 중지해야 하는지를 결정합니다.
대부분의 로컬 작업의 경우, OpenAI는 현재 무제한 실행보다 작업 영역 범위 구성을 권장합니다.
대표적인 더 안전한 구성은 다음과 같습니다:
sandbox_mode = "workspace-write"
approval_policy = "on-request"
approvals_reviewer = "user"
자동 승격 검토를 사용하려는 사용자는 동일한 샌드박스를 유지하면서 검토자만 변경할 수 있습니다:
sandbox_mode = "workspace-write"
approval_policy = "on-request"
approvals_reviewer = "auto_review"
이러한 구성은 정상적인 작업 영역 주변에 운영 체제 수준의 경계를 유지합니다.
반대로, 완전 접근은 의도적으로 해당 보호를 제거하며, 환경 자체가 필요한 격리를 제공하는 경우에만 사용해야 합니다.
이번 Codex 보안 업그레이드가 개발자에게 의미하는 바
개발자에게 이번 업데이트는 Codex가 결코 파괴적 오류를 저지르지 않는다는 것을 의미하지 않습니다.
OpenAI의 자체 문서는 자동화된 검토가 잘못될 수 있으며, 에이전트 수준의 보안 메커니즘은 복구 가능한 개발 관행의 대체물로 간주되어서는 안 된다고 경고합니다.
실질적인 변화는 심층 방어입니다.
고위험 작업은 이제 차단될 기회가 더 많아졌습니다:
- 모델이 대상을 검증하도록 지시됩니다.
- 임시 작업에는 더 안전한 전용 경로가 사용될 것으로 예상됩니다.
- 고위험 명령 패턴이 실행 프레임워크에 의해 식별될 수 있습니다.
- 샌드박스 경계가 작업 영역 외부 접근을 차단할 수 있습니다.
- 승인 또는 자동 검토가 경계를 넘는 요청을 평가할 수 있습니다.
- 완전 접근은 더 명확하고 신중한 사용자 작업을 요구합니다.
- 실패 사례가 평가 및 향후 학습에 추가됩니다.
이는 단일 보안 조치에 의존하는 것보다 훨씬 더 견고합니다.
일상적인 코딩의 경우, 가장 안전한 기본 설정은 여전히 간단합니다: 작업에 실제로 더 넓은 접근 권한이 필요하지 않는 한 에이전트를 작업 영역 내에 유지하는 것입니다.
자주 묻는 질문
Codex가 때때로 대상 디렉터리 외부의 파일을 삭제하는 이유는 무엇인가요?
OpenAI의 조사에 따르면 임시 디렉터리 정리와 관련된 실패 패턴이 발견되었습니다. 특정 경우에 $HOME과 같은 광범위한 시스템 변수가 임시 작업에서 재사용될 수 있으며, 잘못된 형식의 정리 경로가 일회성 디렉터리 대신 실제 사용자 데이터를 가리킬 수 있습니다.
조사 이후 Codex에서 무엇이 변경되었나요?
OpenAI에 따르면, Codex는 이제 삭제 대상을 더 명시적으로 확인하고, 더 안전한 임시 디렉터리 패턴을 사용하며, 파괴적 작업 탐지를 강화하고, 자동 검토를 개선하며, 완전 접근이 실수로 활성화되기 더 어렵게 만들었습니다. 또한 관찰된 실패를 기반으로 맞춤형 평가를 만들었습니다.
Codex 완전 접근이란 무엇인가요?
완전 접근은 일반적인 샌드박스 제한을 제거하여 Codex가 파일을 광범위하게 편집하고 일반적인 승인 경계 없이 네트워크 접근 권한이 있는 명령을 실행할 수 있게 합니다. OpenAI는 이로 인해 데이터 손실, 유출, 예기치 않은 동작의 위험이 크게 증가한다고 경고합니다.
자동 검토와 완전 접근은 같은 것인가요?
아닙니다. 자동 검토는 기존 샌드박스를 유지하고 적격한 승격 요청을 검토 에이전트에 보냅니다. 완전 접근은 샌드박스 경계를 제거하므로 두 모드가 제공하는 보호 수준은 매우 다릅니다.
자동 검토가 파괴적 명령을 차단할 수 있나요?
OpenAI의 현재 정책에 따르면 자동 검토는 중대한 돌이킬 수 없는 손상 위험이 있는 파괴적 작업과 자격 증명 탐지 및 데이터 도용과 같은 위험을 식별하고 차단하도록 설계되었습니다. 현재 샌드박스 및 승인 정책 하에서 이미 승인이 필요한 작업만 검토합니다.
대부분의 Codex 사용자는 어떤 권한 모드를 선택해야 하나요?
OpenAI는 대부분의 로컬 작업에 대해 일반 승인 기반 모드로 시작할 것을 권장합니다. 이는 작업 영역 내에서 일반적인 편집을 허용하면서 Codex가 해당 경계를 넘거나 제한된 리소스에 접근하기 전에 검토를 요구합니다.
이러한 변경 이후에도 Codex가 여전히 실수를 할 수 있나요?
그렇습니다. 이러한 조치는 위험을 줄이지만 오류 없는 동작을 보장하지는 않습니다. 버전 관리, 백업, 좁은 작업 영역 권한, 고위험 작업에 대한 의도적인 승인은 여전히 매우 중요합니다.
Codex의 권한 및 샌드박스 설정을 어디에서 확인할 수 있나요?
ChatGPT 데스크톱 앱 또는 IDE 확장 프로그램에서 작업과 연결된 권한 컨트롤을 사용하세요. Codex CLI에서 /permissions는 사용 가능한 모드를 표시하며, 공식 구성 문서는 sandbox_mode, approval_policy 및 approvals_reviewer를 설명합니다.
관련 도구
- OpenAI Codex: 로컬, IDE, 데스크톱 및 클라우드 워크플로우를 위한 공식 Codex 문서.
- Codex CLI: OpenAI의 오픈소스 명령줄 코딩 에이전트 및 릴리스 기록.
- Codex 권한: "승인 요청", "자동 검토", "완전 접근" 및 관련 권한 모드에 대한 공식 설명.
- Codex 자동 검토: 샌드박스 경계 승인 요청의 자동 검토에 대한 문서.
- Codex 샌드박싱: 샌드박스에 대한 공식 문서.
read-only, workspace-write, danger-full-access에 대한 공식 참고 자료입니다.
- Codex 규칙: 선택된 명령 패턴을 허용, 프롬프트 또는 차단하기 위한 명령 정책 제어.
관련 링크
- Thibault Sottiaux의 Codex 보안 업데이트: 조사 과정과 새로 발표된 완화 조치를 설명하는 OpenAI Codex 엔지니어링 업데이트.
- OpenAI에서 Codex를 안전하게 실행하기: 샌드박싱, 승인, 네트워크 제어, 호스팅 구성 및 감사 가능성에 대한 OpenAI의 개요.
- 에이전트 승인 및 보안: 샌드박스 경계, 승인 정책, 보호된 경로 및 자동 승인 검토에 대한 상세 가이드.
- Codex 자동 검토: 트리거 조건, 검토 프로세스, 파괴적 작업 정책 및 실패 동작을 다루는 공식 문서.
- Codex 권한: 사용자 대상 권한 모드 및 전체 액세스 경고에 대한 공식 설명.
- Codex 변경 로그: 강화된 강제
rm감지, 전체 액세스 확인 및 관련 보안 개선 사항을 기록한 릴리스 기록. - OpenAI Codex GitHub 저장소: 소스 코드, 이슈, 릴리스 노트 및 오픈소스 Codex CLI 구현.
요약
사용자가 의도한 범위를 벗어난 파일에 영향을 미치는 소수의 파괴적 정리 작업 사례를 조사한 후, OpenAI는 Codex를 강화했습니다. 주요 장애 패턴은 임시 디렉터리 처리, 과도하게 넓은 환경 변수, 대상 검증 부족, 그리고 과도한 권한으로 인해 잘못된 명령이 심각한 피해를 초래할 수 있는 세션과 관련이 있었습니다.
새로운 보안 조치는 대상 경로 검사, 더 안전한 임시 디렉터리 처리, 강화된 파괴적 명령 검토, 더 명확한 전체 액세스 경고, 그리고 개선된 자동 검토 정책을 추가했습니다. OpenAI는 또한 관찰된 실패를 반복 가능한 평가 및 훈련 작업으로 전환하고 있습니다.
이러한 변경 사항은 코딩 에이전트가 일반적인 정리 실수를 대규모 파일 시스템 사고로 확대할 가능성을 줄였지만, 제한 없는 실행이 무위험해진 것은 아닙니다.
대부분의 로컬 개발에서 가장 안전한 방법은 Codex를 작업 공간 샌드박스 내에 유지하고, 작업에 실제로 필요한 경우에만 권한을 상승시키는 것입니다.



