Anthropic의 레드팀이 Firefox를 보안 강화한 방법: Claude Opus 4.6으로 2주 만에 취약점 22개 발견
Hardening Firefox with Anthropic's Red Team
TL;DR Highlight
Claude Opus 4.6이 Mozilla와 협력해 Firefox에서 고위험 취약점 14개를 포함한 22개 취약점을 2주 만에 발견하여 2025년 Firefox 고위험 취약점의 약 1/5을 차지했다.
Who Should Read
오픈소스 프로젝트를 유지보수하거나 보안 감사를 담당하는 개발자. AI를 활용한 자동화된 취약점 탐색 도구 도입을 고민하는 보안 엔지니어.
Core Mechanics
- Claude Opus 4.6이 Firefox 코드베이스 분석을 시작한 지 단 20분 만에 JavaScript 엔진에서 Use After Free(UAF) 취약점을 발견했다. UAF는 메모리에서 해제된 객체를 다시 참조해 공격자가 악성 데이터를 덮어쓸 수 있는 심각한 메모리 취약점이다.
- 총 2주 동안 C++ 파일 약 6,000개를 스캔해 112개의 고유 보고서를 제출했고, 이 중 Mozilla가 22개를 실제 취약점으로 확인했다. 14개는 고위험(high-severity)으로 분류됐는데, 이는 2025년 한 해 전체 고위험 Firefox 취약점의 약 20%에 해당한다.
- Firefox를 테스트 대상으로 선택한 이유는 단순히 보안이 취약해서가 아니라, 수억 명이 사용하는 복잡하고 잘 검증된 오픈소스 프로젝트이기 때문이다. '어려운 시험'으로 AI 능력을 검증하기 위한 의도적 선택이었다.
- Claude는 기존에 알려진 CVE(공개 취약점)를 이전 버전 코드에서 재현하는 데도 높은 성공률을 보였다. 다만 일부 CVE가 학습 데이터에 포함됐을 가능성을 배제할 수 없어, 신뢰도에 의문이 남는다고 Anthropic 스스로 인정했다.
- 현재 Claude Opus 4.6은 취약점을 발견하고 수정하는 능력이 '직접 악용(exploitation)'하는 능력보다 훨씬 앞서 있다. 이 격차가 방어자에게 유리한 창을 제공하지만, Anthropic은 이 격차가 오래 지속되지 않을 수 있다고 경고했다.
- Anthropic은 이번 협업에서 CVD(Coordinated Vulnerability Disclosure, 조율된 취약점 공개) 절차를 따랐다. Claude가 제안한 패치도 함께 제출해 Mozilla가 근본 원인을 파악하고 수정하는 데 도움을 줬고, 대부분의 수정사항은 Firefox 148.0에 반영됐다.
- Claude가 작성한 익스플로잇 코드는 샌드박스와 같은 실제 브라우저 보안 기능을 제거한 테스트 환경에서만 작동했다. 즉, 현실의 Firefox는 '다층 방어(defense in depth)' 덕분에 이 취약점들의 직접적인 피해를 막을 수 있는 상태였다.
Evidence
- Zulip 프로젝트 유지보수자는 Claude Code로 직접 보안 감사를 해봤는데, Claude에게 각 발견 사항을 스스로 재검토하도록 시키자 대부분의 false positive가 제거됐다고 공유했다. 그 후 두 번째 감사에서는 이미 주석으로 보안 의도를 명시한 코드에서는 중복 경고가 나오지 않았다는 실용적인 팁도 덧붙였다.
- 한 개발자가 오픈소스 프로젝트를 공개했더니 Reddit 유저가 Claude로 보안 감사를 실행해 FTS 인젝션, LIKE 와일드카드 인젝션, API 인증 누락 등 15개 이슈를 발견했다고 공유했다. 특히 '문서가 약속한 보안 기능이 실제 코드에 구현되어 있는지'를 검증하는 '스펙 vs 실제' 분석이 가장 유용했다는 평가가 주목받았다.
- LLM의 보안 감사 한계에 대한 냉정한 지적도 있었다. 한 경험자는 Claude가 실제로는 불충분한 보안 경계를 '극도로 안전하다'고 잘못 판단한 사례를 여러 번 겪었다고 했다. 특히 여러 기능이 조합될 때 나타나는 취약점(non-local vulnerability)은 현재 AI가 잡아내기 매우 어렵다는 한계를 지적했다.
- 취약점이 발견됐지만 구체적인 버그 내용이 공개되지 않은 점을 지적하는 댓글도 있었다. '실제로 위험한 케이스인지, 아니면 현실에서 발생하기 어려운 엣지 케이스인지' 알 수 없어 발표의 실질적 의미를 판단하기 어렵다는 비판이었다.
- Anthropic 보고서가 '취약점 발견 능력이 악용 능력보다 현재 앞서 있지만 이 격차는 오래 못 갈 것'이라고 경고한 부분이 특히 주목받았다. 한 보안 전문가는 'AI 사이버 역량 레이스가 아직 냉전 상태처럼 보이지만, 올해 안에 그 상태가 끝날 것'이라고 전망했다.
How to Apply
- 오픈소스 프로젝트를 관리한다면 Claude Code로 보안 감사를 시도해볼 수 있다. 토큰 비용이 대략 $3 수준이므로, '악의적인 행위자가 이미 내 코드를 스캔했을 것'이라는 가정 하에 먼저 직접 스캔하는 것이 현실적인 방어 전략이다.
- Claude로 보안 감사를 할 때 false positive를 줄이려면, 각 발견 사항에 대해 Claude 스스로 재검토하도록 프롬프트를 추가하라. 남은 false positive 항목은 코드에 보안 의도를 설명하는 주석을 추가하면 다음 감사에서 반복 경고를 방지할 수 있다.
- LLM 보안 감사는 로컬한 패턴 버그(포인터 역참조, 배열 접근 등)에는 효과적이지만, 여러 기능이 결합될 때 생기는 복합 취약점은 여전히 수동 검토가 필요하다. AI 감사 결과를 100% 신뢰하지 말고, AI가 '안전하다'고 판단한 경계도 사람이 한 번 더 확인하는 프로세스를 유지하라.
- Anthropic이 CVD 절차를 따른 것처럼, AI로 외부 오픈소스 프로젝트의 취약점을 발견했을 경우 즉시 공개하거나 악용하지 말고 해당 프로젝트 메인테이너에게 먼저 보고하는 책임 있는 공개 절차를 지켜야 한다.
Terminology
관련 논문
OpenKnowledge – Obsidian/Notion의 오픈소스 AI-first 대안
Git 기반 동기화와 Claude/Codex/Cursor 연동을 내장한 로컬 우선 마크다운 에디터로, AI 에이전트의 두 번째 뇌(LLM Wiki)로 활용할 수 있는 오픈소스 도구다.
Unfireable Safety Kernel: AI 에이전트를 위한 Execution-Time AI Alignment
AI 에이전트가 자신의 안전장치를 우회할 수 없도록, 에이전트 프로세스 바깥에 수학적으로 증명된 강제 통제 게이트를 배치하는 아키텍처
RubyLLM: 주요 AI 프로바이더를 모두 지원하는 Ruby 프레임워크
OpenAI, Claude, Gemini 등 주요 AI 프로바이더를 단일 인터페이스로 통합한 Ruby 프레임워크로, Rails 통합과 에이전트 기능까지 지원해 Ruby 개발자가 AI 기능을 빠르게 붙일 수 있다.
Qwen-AgentWorld: 범용 에이전트를 위한 Language World Model
Alibaba Qwen 팀이 AI 에이전트가 행동 결과를 미리 시뮬레이션할 수 있는 'Language World Model'을 공개했다. 에이전트 훈련과 실행 경로 검증에 새로운 패러다임을 제시하는 연구다.
SHERLOC: Code Repair Agent를 위한 구조화된 Diagnostic Localization 프레임워크
버그 위치만 알려주는 게 아니라 '왜, 어떻게 고쳐야 하는지'까지 진단 리포트를 생성해서 코드 수정 에이전트의 성능을 높이는 training-free 프레임워크
peerd – 브라우저에서 완전히 실행되는 AI Agent Harness
백엔드 서버 없이 Chrome/Firefox 확장 프로그램으로만 동작하는 AI 에이전트 실행 환경으로, 브라우저 탭을 직접 조작하고 WASM Linux VM까지 구동할 수 있어 프라이버시와 보안을 동시에 챙길 수 있다.