VulnHunter: Capital One이 공개한 에이전트형 AI 코드 보안 도구
VulnHunter: Capital One's agentic AI code security tool
TL;DR Highlight
스스로 반박해 보는 단계를 넣어 오탐을 줄이는 오픈소스 보안 에이전트
Who Should Read
SAST 오탐 분류에 시간을 쓰는 보안·백엔드 개발자
Core Mechanics
- 진입점에서 앞으로 추적한다
- 기존 도구는 위험한 코드(sink)에서 거꾸로 공격자를 찾는 방식이라고 한다.
- VulnHunter는 API·네트워크 메시지·파일 업로드 같은 진입점에서 출발해 로직을 따라간다.
- 결과를 스스로 반박해 본다
- 취약점을 찾으면 그 주장을 깨려는 추론 단계(falsification engine)를 돌린다.
- 성립하지 않는 가정이나 공격 경로의 논리 구멍을 찾아 근거 없는 건 버린다.
- 살아남은 것만 수정안까지 만든다
- 코드베이스 전반에서 근거를 모아 공격 경로 전체를 그린다.
- 결함 설명, 공격자가 얻는 권한, 리뷰용 코드 수정안을 낸다.
- Claude Opus 4.8과 Claude Code가 필요하다
- 모델 최적화 대상은 Claude Opus 4.8이고 첫 구현은 Claude Code skill이다.
- 프레임워크는 다른 하네스와 모델에서도 쓸 가능성이 있다고만 적혀 있다.
- 내부 검증은 수치 없이 규모만 공개
- 자사 코드로 먼저 돌려 수천 개 저장소, 수십 개 사업 영역에서 취약점을 찾아 고쳤다고 한다.
- 오탐률 같은 구체적 수치는 원문에 없다.
Community Reactions
- 이건 도구보다 방법론이라는 의견
- 일반 원칙에 맞춰 평가하는 방법을 적은 마크다운 파일 묶음이라는 의견이다.
- 보안 컨설팅사들이 이미 쓰는 방법론을 LLM에 넣은 것이라 자연스럽다는 의견이다.
- 오픈소스가 아니라는 반발
- Claude Code CLI와 Opus 접근 권한이 필요해 진짜 오픈소스가 아니라는 의견이 있었다.
- Anthropic 검증 포털에 몇 주 전 신청했지만 답이 없었다는 경험담도 있었다.
- 차별점이 없고 허위 안심이 걱정된다는 의견
- 이런 보안 하네스는 다 비슷해 해자(moat)가 없다는 의견이다.
- Visa와 Cloudflare도 비슷한 도구를 냈다는 링크가 공유됐다.
- 실제로 버그를 잘 찾는다고 들었지만 허위 안심이 걱정된다는 의견도 있었다.
- 같은 모델로 찾고 반박하는 구조가 흥미롭다는 의견
- 같은 모델로 발견과 반증을 모두 하는 점이 흥미롭다는 반응이 있었다.
- 내부 사용 사례를 더 공개해 달라는 요청도 있었다.
How to Apply
- 오늘 코드 한 모듈에 반박 프롬프트 돌리기
- 보안 리뷰 중인 API 핸들러 하나를 골라 아래 프롬프트를 Claude에 붙여넣는다.
- 찾은 취약점마다 반증을 시도하게 하고 살아남은 것만 확인한다.
- 기존 스캐너 결과에 반증 단계 붙이기
- SAST 오탐 목록에서 10건을 뽑아 진입점부터 앞으로 추적하게 한다.
- 공격 경로가 끊기는 건을 오탐 후보로 분류한다.
- Quickstart로 사내 저장소 하나에 시범 적용하기
- Claude Opus와 Claude Code 접근 권한이 있는지 먼저 확인한다.
- 소규모 저장소 하나에 돌려 결과를 수동 분류 결과와 비교한다.
Try It
# Claude 또는 Claude Code에 붙여넣기 (VulnHunter 방식의 간이 버전)
너는 보안 리뷰어다. 아래 코드에서 외부 공격자가 악용할 수 있는 취약점을 찾아라.
1단계: 공격자가 접근 가능한 진입점(API, 네트워크 메시지, 파일 업로드)을 나열한다.
2단계: 각 진입점에서 시작해 데이터 변환과 보안 검사를 거치는 경로를 앞으로 추적하고 취약점 후보를 낸다.
3단계: 각 후보를 스스로 반박한다. 성립하지 않는 가정, 공격 경로의 논리 구멍, 공격을 막는 조건을 찾는다. 근거 없는 가정에 기댄 후보는 버린다.
4단계: 살아남은 것만 결함 설명, 공격자가 얻는 권한, 최소한의 수정 코드를 보여 준다.
코드:
{{코드}}
이어서 해 볼 것: 버려진 후보와 버린 이유도 함께 출력하게 해서 반박 단계가 타당한지 확인한다.Terminology
관련 논문
같은 시뮬레이션, 다른 근거: 도구 출력을 파일로 넘기면 LLM 에이전트 정확도가 어디서 깎이나
긴 툴 출력을 파일로 넘기자 GPT-5.1은 정확도 11.3%p 하락, 정식 출력 지정하니 회복
가짜 뉴스가 진짜 폭락을: LLM 트레이딩 에이전트 대상 정보 주입 공격
가짜 헤드라인 한 줄로 LLM 트레이딩 에이전트 62%를 조종했다(프롬프트 주입은 14%)
Harness Engineering 101: LLM은 뇌, harness는 몸
에이전트는 JSON 배열을 관리하는 루프이고, 16개 챕터로 직접 만들어 본다
Harness²: 에이전트 harness를 스스로 고쳐 쓰는 재귀 최적화 프레임워크
모델은 고정하고 harness를 재귀로 고쳤더니 벤치마크 점수가 최대 11.8%p 올랐다
해고된 Savannah 경찰관, ICE 요원 남편에게 Flock 계정 공유
경찰관이 Flock 계정을 남편(ICE 요원)에게 공유했고, 감사에서 983건 검색이 드러나 해고됐다
tmux와 Claude Code: 세션, send-keys, 그리고 한계선
tmux로 Claude Code 여러 개를 돌리면 편하지만 에이전트 4개쯤에서 한계가 온다
Hybrid Reasoning Agents: 잠재 공간에서 생각하고 텍스트로 행동하는 LLM 에이전트
잠재 공간 추론과 텍스트 도구 호출을 섞었더니 성능 10.4%↑, 토큰 최대 54.7%↓