Multi-Agent LLM 시스템으로 취약점 자동 발견 및 재현하기 - FuzzingBrain V2
Multi-Agent LLM System for Automated Vulnerability Discovery and Reproduction
TL;DR Highlight
LLM 기반 멀티 에이전트 시스템으로 C/C++ 코드의 보안 취약점을 자동으로 찾고 재현하는 FuzzingBrain V2 논문으로, AIxCC 2025 대회에서 40개 중 36개(90%) 취약점 탐지에 성공했다.
Who Should Read
C/C++ 오픈소스 프로젝트의 보안 취약점을 자동화하고 싶은 보안 엔지니어나 DevSecOps 담당자, 또는 LLM을 활용한 코드 분석 도구를 연구하는 개발자.
Core Mechanics
- 2025년에만 CVE(공개 취약점 데이터베이스에 등록된 보안 결함)가 약 50,000건 보고됐는데, 기존 LLM 기반 취약점 탐지 도구는 오탐율이 높고 실제로 재현 가능한 증거를 제공하지 못한다는 문제가 있었다.
- 기존 도구들은 함수 단위로 분석하면 컨텍스트가 너무 넓어지고, 라인 단위로 분석하면 맥락이 부족한 딜레마가 있었는데, FuzzingBrain V2는 이 사이의 최적 단위를 찾기 위해 'Suspicious Point'라는 제어 흐름(control flow) 기반의 새로운 추상화 단위를 도입했다.
- Google의 OSS-Fuzz(오픈소스 프로젝트를 대상으로 구글이 운영하는 퍼징 자동화 인프라) 위에 시스템을 구축해서, 보고된 모든 취약점이 퍼저(fuzzer, 무작위 입력으로 버그를 찾는 도구)로 실제 재현 가능하다는 것을 보장한다.
- 함수 간 복잡한 의존성이 있는 취약점을 추론하기 위해 로직 기반 계층적 함수 분석(logic-driven hierarchical function analysis)과 두 단계 퍼징(dual-layer fuzzing)을 결합해 제한된 컴퓨팅 자원 안에서도 함수 커버리지를 높였다.
- MCP(Model Context Protocol, LLM이 외부 도구를 호출하는 표준 프로토콜)를 통해 정적 분석(소스코드를 실행 없이 분석)과 동적 분석(실제로 실행해서 분석)을 모두 연결하고, 컨텍스트 엔지니어링으로 복잡한 취약점 추론 능력을 강화했다.
- AIxCC 2025 Final Competition의 C/C++ 데이터셋에서 40개 취약점 중 36개를 탐지해 90% 탐지율을 달성했다.
- 실제 운영 환경에서 12개 오픈소스 프로젝트에서 29개의 제로데이(이전에 알려지지 않은 신규) 취약점을 발견했고, 모두 해당 프로젝트 관리자에게 확인 및 수정됐으며 그 중 2개는 CVE ID를 받았다.
Evidence
- '제로데이 취약점'이라는 표현이 마케팅 과장이라는 지적이 있었다. 보통 zero-day는 이미 야생에서 악용 중인 취약점을 뜻하는데, 책임 공개(responsible disclosure) 프로그램을 통해 제보된 것을 zero-day라고 부르는 건 용어를 잘못 쓰는 것이라는 비판이다.
- 누군가 방어 대신 공격형 대응 AI를 만들면 어떨지에 대한 SF적 상상도 나왔다. 침입 탐지가 트리거되면 공격자를 역으로 해킹하려는 공세적 AI를 자동으로 풀어놓는 시나리오인데, '재미있겠지만 위험한 발상'이라는 뉘앙스로 언급됐다.
How to Apply
- C/C++ 오픈소스 프로젝트를 유지관리하면서 주기적인 보안 감사가 어렵다면, FuzzingBrain V2가 OSS-Fuzz 위에서 동작하기 때문에 OSS-Fuzz에 프로젝트를 등록하고 이 시스템의 분석 파이프라인을 참고해 자동화된 취약점 탐지 흐름을 구성할 수 있다.
- LLM 기반 코드 분석 도구를 만들 때 함수 단위와 라인 단위 중 어떤 granularity를 쓸지 고민된다면, 이 논문의 'Suspicious Point' 개념(제어 흐름 기반 중간 단위 추상화)을 참고해 맥락은 유지하되 불필요한 노이즈는 줄이는 분석 단위 설계에 적용해볼 수 있다.
- LLM 에이전트가 정적/동적 분석 도구를 호출해야 하는 보안 자동화 파이프라인을 구축 중이라면, MCP(Model Context Protocol)를 통해 도구를 연결하는 이 논문의 아키텍처를 참고해 에이전트-도구 통합 설계를 검토할 수 있다.
- AIxCC 같은 보안 CTF나 취약점 발굴 대회에 참가하거나 준비 중이라면, FuzzingBrain V2의 멀티 에이전트 구성과 dual-layer fuzzing 전략을 벤치마크로 삼아 자신의 접근법과 비교해볼 수 있다.
Terminology
관련 논문
프로덕션 AI 에이전트를 GPT-5.6으로 마이그레이션: 2.2배 빠르고 27% 저렴
마케팅 웹사이트를 자동 생성하는 프로덕션 AI 에이전트를 Claude Opus 4.8에서 GPT-5.6 Sol로 전환한 실전 경험담으로, 단순 모델 교체가 아니라 eval 하네스, 툴 스키마, 캐싱, 추론 리플레이까지 손봐야 했던 과정을 구체적인 수치와 함께 정리했다.
xAI Grok Build CLI가 xAI 서버로 전송하는 데이터: 네트워크 레벨 분석
xAI의 공식 코딩 CLI 도구 Grok Build가 사용자 동의 없이 전체 Git 저장소와 .env 시크릿 파일을 xAI 서버로 업로드한다는 사실이 네트워크 트래픽 분석으로 밝혀졌다.
중요할 때 기억하라: Long-Horizon 에이전트를 위한 Proactive Memory Agent
LLM 에이전트가 긴 작업 중 중요한 정보를 잊어버리는 문제를 별도의 메모리 에이전트가 '적절한 타이밍에' 끼어들어 해결하는 방법
WebSwarm: 깊고 넓은 웹 검색을 위한 재귀적 Multi-Agent Orchestration
복잡한 웹 검색을 재귀적으로 분해하고 각 노드에 적합한 검색 모드를 동적으로 할당하는 멀티에이전트 프레임워크
웹 앱을 리버스 엔지니어링해서 AI Agent 도구로 자동 변환하기
로그인된 웹 앱의 API 호출을 브라우저에서 감시해 자동으로 MCP 도구로 변환하는 에이전트를 만들었다. 소스 코드나 공식 API 문서 없이도 Jira, Spotify 같은 서비스에 AI 어시스턴트를 붙일 수 있다.
FableCut – AI 에이전트가 조작할 수 있는 브라우저 기반 비디오 에디터 (zero deps)
타임라인 전체를 JSON 파일 하나로 표현하고 MCP/REST로 AI 에이전트가 직접 편집할 수 있는 브라우저 비디오 에디터로, Claude 같은 AI가 프롬프트 하나로 영상을 자동 컷편집하고 결과를 실시간으로 UI에 반영해준다.