20. Security — 스캐너 · Cyber Safety
Codex의 두 가지 Security를 한 페이지에 정리 — Codex Security 스캐너(GitHub repo 취약점 자동 스캔과 LLM threat model 갱신 루프) + Cyber Safety(모델 자체의 악성 코드·credential 거부 훈련, classifier fallback, Trusted Access). Prompt injection · exfiltration 시나리오, 한국 기업 보안팀이 가장 자주 묻는 항목 체크리스트 포함.
Codex의 "Security"는 두 가지입니다 — Codex Security 스캐너(GitHub repo 취약점 자동 스캔·remediation 제안)와 Cyber Safety(모델 자체의 악성 코드·credential 거부 훈련, classifier 기반 의심 트래픽 fallback). 도입 단계의 보안팀 게이트키핑에 이 페이지가 필요합니다.
이 페이지에서 배우는 것
- Codex의 두 가지 "Security" 구분 — 스캐너 제품 vs Cyber Safety 정책
- 기존 sandbox · approval · auto_review 복습 (가이드 내 다른 페이지와 연계)
- Codex Security 스캐너 — setup · threat model · remediation 루프
- Cyber Safety — 모델 안전장치 · classifier · GPT-5.2 fallback · Trusted Access
- Prompt injection · secret exfiltration 시나리오 (Cloud · MCP · IDE 경로)
- 한국 기업 보안팀 FAQ 체크리스트
두 가지 Security 구분
먼저 — 기존 보안 메커니즘 복습
아래 세 가지는 Codex의 기본 보안 모델이며 이 페이지의 두 신규 영역과 함께 동작합니다.
- Sandbox (read-only / workspace-write / danger-full-access) — Codex가 무엇을 만질 수 있는지. 자세히는 7. Settings의 Sandbox 섹션.
- Approval Policy (untrusted / on-request / never / Auto) — 언제 사용자에게 묻는지. 라운드 3 PR #197에서 추가된
approvals_reviewer = "auto_review"로 AI 리뷰어가 1차 검토. - Hooks — PreToolUse hook에서 exit 2로 차단할 수 있음 (자세히는 7. Settings의 Hooks 섹션).
Codex Security 스캐너 — 동작 방식
Codex Security 스캐너는 GitHub 저장소에 연결한 뒤 커밋이 푸시될 때마다 다음 루프를 돕니다.
- Threat model 자동 생성 — repo의 코드·의존성·아키텍처를 분석해 위협 모델을 markdown으로 작성
- 사용자 검토·수정 — 보안팀이 threat model을 검토하고 잘못된 가정·우선순위를 직접 수정
- 스캔 실행 — 수정된 threat model을 기준으로 새 커밋의 취약점을 검출
- Remediation 제안 — 검출된 항목마다 패치 PR 또는 인라인 코멘트로 자동 수정 제안
- 다음 스캔 학습 — 사용자가 거부한 항목·수락한 패턴이 다음 스캔에 반영됨
기존 SAST/DAST 도구의 limitation(rule 기반·false-positive 폭발)을 LLM threat model 갱신 루프로 보완하는 것이 핵심 차별점입니다. 한국 보안팀이 가장 흥미를 보이는 영역.
Setup 흐름
- 저장소를 Codex Security에 연결 (GitHub App 권한 부여)
- 첫 threat model 생성 대기 (수 분~수십 분, repo 크기에 비례)
- 보안팀이 threat model을 검토하고 우선순위·제외 항목 명시
- PR 자동 리뷰 통합 — 검출 항목이 PR 코멘트로 게시
Cyber Safety — 모델 안전장치
Codex 모델은 다음 4가지 정책을 학습 단계에 내재화하고 있습니다.
Prompt Injection · Secret Exfiltration 시나리오
Codex 사용 중 발생할 수 있는 대표 공격 경로 4가지와 1차 방어책:
| 경로 | 공격 시나리오 | 1차 방어 |
|---|---|---|
| In-app Browser | 악성 페이지가 "이전 명령을 무시하고 ~를 실행하라" 같은 지시문을 페이지 텍스트로 삽입 | 페이지 콘텐츠는 신뢰 불가 컨텍스트로 처리, comment 모드만 사용 |
| MCP 도구 | 외부 MCP 서버가 악성 결과를 반환해 모델 행동을 변형 | MCP allowlist (enabled_tools) · enterprise managed configuration의 allowlist |
| Cloud unrestricted internet | 모델이 컨테이너 내 secret을 외부 HTTP로 전송 | internet access를 off·read-only로, secret은 일반 env로 옮기지 말기 (17. Cloud Environments) |
| Skill 코드 실행 | 설치한 Skill 안에 악성 코드가 포함 | $skill-installer 공식 카탈로그만 사용, 외부 marketplace는 신뢰 검증 후 (9. Skills) |
다층 방어 권장. ① Sandbox는 가장 좁게 ② Approval policy는 on-request 또는 auto_review ③ Internet access는 off가 기본 ④ MCP allowlist 명시 ⑤ Hooks의 PreToolUse로 위험 명령 차단 ⑥ Compliance API로 활동 추적.
한국 기업 보안팀 FAQ 체크리스트
- 모델 학습 데이터 보호 — Workspace 데이터가 모델 학습에 사용되는가? Enterprise/Business는 기본 opt-out. 18. Enterprise에서 확인.
- 감사 로그 — 누가 언제 무엇을 시켰는지 30일간 추적 가능 (Compliance API → SIEM). KISA/ISMS-P 통제 요구사항 다수 충족.
- 망분리 — HTTP/HTTPS 프록시 강제 + 사내 GitHub Enterprise 연결 가능.
- Access Token 회전 —
CODEX_ACCESS_TOKEN은 즉시 회수 가능. CI에서는 cron으로 회전 자동화 권장. - EU/EEA 데이터 잔류 — 일부 기능(Memories/Chronicle/Computer Use)은 지역 제한이 있으므로 사전 확인.
- Compliance API 샘플 export — 도입 전 사내 보안팀에 30일 export 샘플을 보여주면 게이트 통과가 빨라집니다.
한계점
⚠️ 알아둘 점
- Codex Security 스캐너는 일반 Codex 사용과 별개 SKU/가격 정책일 수 있음 — 영업/CSM에 견적 확인 필수
- Cyber Safety는 모델 학습 기반이라 100% 차단은 보장 없음 — sandbox/approval/감사 로그의 다층 방어가 핵심
- Trusted Access는 일반 사용자가 신청해서 받는 옵션이 아님 (검증된 보안 연구자 대상)
- 한국어로는 공식 자료가 거의 없어 도입 결정에 영문 문서 직접 인용 권장
공식 출처
- Codex Security 개요
developers.openai.com/codex/security - Codex Security — setup
codex/security/setup - Codex Security — threat model
codex/security/threat-model - Codex Security FAQ
codex/security/faq - Cyber Safety (Concepts)
codex/concepts/cyber-safety