패턴 매칭을 넘어 증명 가능성까지: VulnHunter 소개
요약
VulnHunter는 소스 코드의 취약점을 공격자 관점에서 선제적으로 분석하는 오픈소스 에이전트형 AI 보안 도구입니다. 기존 SAST 스캐너와 달리, 악용 가능한 결함을 식별하고 증거 기반의 수정 방안을 제안합니다. 이 시스템은 Claude Opus에 최적화되었으며, 발견(Hunt), 수정(Fix), 검증(Verify)의 다단계 과정을 거칩니다.
핵심 포인트
- 공격자 중심 분석으로 실제 악용 가능한 결함 식별
- 발견-수정-검증의 3단계 프로세스 제공
- Claude Opus 환경에 최적화된 에이전트형 도구
- 오픈소스 커뮤니티를 통해 공개되어 활용 가능
VulnHunter는 소스 코드에 대한 선제적이고 공격자 중심의 분석을 적용하는 오픈소스, 에이전트형 AI 보안 도구입니다.
단순히 의심스러운 패턴을 플래그 지정하고 종종 오탐(false positives)을 유발하는 전통적인 수동 SAST 스캐너와 달리, VulnHunter는 적대자처럼 추론합니다. 이는 실제로 악용 가능한 결함을 식별하고, 잠재적인 공격 경로를 매핑하며, 목표 지향적이고 증거 기반의 수정 방안을 제안합니다.
현대의 소프트웨어 공급망은 깊이 상호 연결되어 있습니다. 널리 사용되는 오픈소스 컴포넌트의 단일한 취약점은 수천 개의 기업에 동시에 파급될 수 있습니다.
Capital One 내부에서 개발된 VulnHunter는 어느 한 조직도 이 문제를 혼자 해결할 수 없기 때문에 커뮤니티에 공개됩니다.
경고
사이버 보호 면책 조항
VulnHunter는 이중 용도의 사이버 보안 작업(취약점 발견 및 악용)을 수행합니다. 만약 Anthropic의 사이버 검증 프로그램에 등록되지 않은 계정으로 실행할 경우, 실시간 사이버 보호 기능이 요청을 차단하거나 사용이 사이버 남용으로 플래그 지정될 수 있습니다. Anthropic의 자체 플랫폼(Claude API / Claude Code)에서 VulnHunter를 사용할 계획이라면, 먼저 검증 포털을 통해 등록하는 것을 강력히 권장합니다.
중요
사전 요구 사항 및 모델 요구 사항
Claude Code에서 실행되는 Claude Opus에 맞춰 구축되고 최적화되었습니다. 이 프레임워크는 깊고 다단계적인 추론에 의존하므로, 최첨단 Opus급 모델이 필요합니다. 사용자가 직접 모델 접근 권한을 제공해야 합니다.
공격자 중심 순방향 분석 (Attacker-First Forward Analysis): 기존 도구들은 종종
| Skill | Phase | Core Responsibility |
|---|---|---|
/vulnhunt | Hunt | 위험한 Sink 지점을 Entry Point로 매핑합니다. 다단계의 허위화 파이프라인(Recon → Parallel Hunt → Adversarial Disprove → Capability Filter)을 통해 발견 사항을 필터링합니다. 실행 가능한 Exploit과 제안된 수정 사항이 있는 검증된 문제만을 방출합니다. |
/vulnhunter-fix | Fix | 개발자 주도, 테스트 기반의 Remediation입니다. Exploit 데모를 작성하고, 실패하는 보안 테스트(RED)를 생성하며, 코드 수정(GREEN)을 구현하고, 회귀 없이 Exploit이 차단되는지 검증한 후, 리뷰 가능한 PR을 만듭니다. |
/vulnhunt-fix-verify | Verify | 발견 사항이 성공적으로 Remediation되었는지 독립적으로 검증하는 완전히 분리된 읽기 전용 에이전트입니다. 수정 사항이 믿음에 의존하지 않고 증명되도록 각 발견 항목별 판결을 방출합니다. |
참고: 이 루프를 대규모로 무인 자동화하여 실행하려면, vulnhunter-agent/가 스캐너를 헤드리스(headless) 런타임으로 감싸고, harness/는 이를 배치(batch) 단위로 여러 리포지토리에서 구동합니다.
명칭에 관해서: 이 전체 시스템은 VulnHunter이지만, 핵심 스캐너 명령어는 /vulnhunt (그리고 검증기인 /vulnhunt-fix-verify)입니다. 짧은 형태를 사용한 것은 의도적이며 오타가 아닙니다. /vulnhunter-fix Remediation 스킬과 vulnhunter-agent/ 런타임에서는 전체 철자를 유지합니다.
각 구성 요소는 자체 포함된 서브트리(subtree)로 정리되어 있습니다:
| Path | Description | |
|---|---|---|
vulnhunt/ | 핵심 /vulnhunt 스캐너 스킬 (프롬프트 전용: SKILL.md + 단계). vulnhunt/README.md를 참조하세요. | |
vulnhunter-fix/ | /vulnhunter-fix 스킬, 그 동반 Python 헬퍼 패키지 및 테스트. vulnhunter-fix/README.md를 참조하세요. | |
vulnhunt-fix-verify/ | /vulnhunt-fix-verify 독립형 검증 스킬 (프롬프트 전용). vulnhunt-fix-verify/README.md를 참조하세요. | |
vulnhunter-agent/ | 스캔을 실행하고 GitHub 이슈 파일을 만드는 설정 기반 헤드리스 런타임 래퍼. vulnhunter-agent/README.md를 참조하세요. | |
harness/ | 대규모 배치 스캔 및 탐지 정확도 벤치마킹을 위한 개발자 도구. harness/README.md를 참조하세요. |
- Claude Code CLI는 Claude Opus에 대한 접근 권한으로 인증됩니다. - Python 3.12 이상 (런타임 에이전트 및 벤치마킹 하니스에서만 필수). 책임 점검: 분석을 명시적으로 승인받은 코드베이스만 스캔해야 합니다.
# 저장소 복제
git clone https://github.com/capitalone/vulnhunter.git
cd vulnhunter
...
Windows에서는 cmd.exe 또는 PowerShell 프롬프트의 .cmd 등가물을 사용하세요:
git clone https://github.com/capitalone/vulnhunter.git
cd vulnhunter
REM Copy skills into %USERPROFILE%\.claude\skills\
...
참고: install.sh/install.cmd는 심볼릭 링크(symlink)가 서브 에이전트 내의 find/glob 기능에 문제를 일으킬 수 있으므로 파일을 직접 복사해야 합니다. 로컬 환경을 새로 고치려면 설치 스크립트를 다시 실행하세요.
claude --model opus --add-dir ~/.claude/skills/vulnhunt --add-dir ~/.claude/skills/vulnhunt/phases
# Claude Code 세션 내부에서 호출:
/vulnhunt
The fixer는 git, 대상 저장소에 인증된 GitHub CLI (gh), 그리고 설치된 Python 헬퍼(pip install -e ".[dev]"를 vulnhunter-fix/ 디렉토리 내에서 실행)가 필요합니다.
claude --model opus --add-dir ~/.claude/skills/vulnhunter-fix
# Claude Code 세션 내부에서 호출:
/vulnhunter-fix
고급 운영 모드 및 구성 설정은 vulnhunter-fix/README.md를 참조하세요.
검증기(verifier)는 제한적인 도구 환경(읽기/쓰기/편집/Glob/Grep/Agent—Bash 실행 불가, 네트워크 접근 불가) 하에서 신뢰할 수 있는 루트에 대해 엄격하게 읽기 전용으로 작동합니다. 호출자는 출력(out) 디렉토리를 미리 생성해야 합니다.
claude --model opus --add-dir ~/.claude/skills/vulnhunt-fix-verify \
--add-dir ~/.claude/skills/vulnhunt-fix-verify/phases
# Claude Code 세션 내부에서 호출:
...
비대화형(non-interactive) 또는 CI/CD 파이프라인의 경우, vulnhunter-agent/가 스캐너를 헤드리스 워크플로우로 래핑합니다. 이는 대상을 복제하고 /vulnhunt를 실행합니다.
, 결과를 게시하고 확인된 버그에 대해 GitHub 이슈를 생성합니다. 이는 Anthropic API를 통해 네이티브하게 연결됩니다.
배포 청사진(deployment blueprints)은 vulnhunter-agent/README.md에서 검토하십시오.
harness/ 디렉터리는 워크스테이션 규모의 개발자 도구(developer tooling)를 제공합니다. 초기화하려면 `cd harness && pip install -e
모델에 대한 참고 사항 (A Note on Models): VulnHunter는 Claude Opus와 Claude Code를 위해 정밀하게 조정(precision-tuned)되었습니다. 이 도구의 낮은 오탐률(false-positive discipline)은 최첨단 수준의 추론 능력(frontier-class reasoning)에 크게 의존하지만, 기반이 되는 오케스트레이션 패턴(orchestration patterns)은 다른 고급 파운데이션 모델(foundation models)에도 적용할 수 있습니다.기여 (Contributing): 핵심 프레임워크 개선 사항, 프롬프트 업데이트 또는 더 광범위한 모델 지원 구성을 제안하려면 CONTRIBUTING.md를 참고하십시오.보안 (Security): VulnHunter 자체에서 발견된 보안 취약점을 안전하게 보고하는 방법에 대한 지침은 SECURITY.md를 검토해 주십시오.라이선스 (License): Apache License, Version 2.0의 약관에 따라 배포됩니다. 자세한 내용은 LICENSE를 참조하십시오.
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub AI Coding Assistants의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기