티스토리 뷰

📌 3줄 요약
1. Burp AI Agent(현재 이름 Custom AI Agent)는 Burp Suite 안에서 로컬·클라우드 AI 12종을 골라 붙여 요청 분석, AI 패시브·액티브 스캔, MCP 연동까지 해주는 오픈소스(MIT) 확장입니다.
2. 설치는 GitHub Releases의 JAR 다운로드 → SHA-256 검증 → Extensions > Add 순서이며, 공식 문서 기준 BApp Store에는 아직 등록 전입니다.
3. 0.9.x의 MCP 인증 우회·세션 쿠키 미마스킹, 1.0.0의 감사 로그 평문 기록 등 보안 결함이 잇달아 수정됐으니, 반드시 v1.0.1(2026.10.09) 이상으로 업그레이드하고 해당되면 토큰·쿠키를 교체하세요.
혹시 응답 하나 해석하려고 Repeater 내용을 통째로 복사해서 브라우저의 AI 채팅창에 붙여넣고 계신가요? 그 복사본 안에 고객사 세션 쿠키와 Authorization 헤더가 그대로 들어 있다면 어떨까요.
Burp 화면을 떠나지 않고 AI에게 바로 묻고, 민감한 값은 자동으로 가려서 보내는 방법이 있습니다. 이 글에서는 웹 모의해킹 점검원과 버그바운티 헌터 사이에서 많이 쓰이는 Burp AI Agent를 소개하고, 설치부터 실무 활용, 그리고 꼭 알아야 할 보안 주의점까지 한 번에 정리합니다.
🧭 Burp AI Agent란?
Burp AI Agent는 six2dez가 공개한 Burp Suite 확장입니다. Burp에 프록시로 쌓인 트래픽을 AI 모델에게 넘겨 분석시키고, 반대로 외부 AI 도구가 MCP(Model Context Protocol)로 Burp를 조작할 수 있게 해주는 "다리" 역할을 합니다.
이름이 두 개라 헷갈릴 수 있는데요. PortSwigger의 BApp Store 명명 규칙을 맞추고 Burp 내장 기능인 Burp AI와 혼동되지 않도록 확장 이름이 Custom AI Agent로 바뀌었습니다. GitHub 저장소, 문서 사이트, 설정 폴더(~/.burp-ai-agent/)는 예전 이름을 그대로 씁니다. Burp 안에서는 "Custom AI Agent" 탭으로 보입니다.

주요 기능
| 기능 | 설명 |
|---|---|
| AI 백엔드 | 12종 기본 제공. Burp AI(내장), Ollama, LM Studio, NVIDIA NIM, Perplexity, Anthropic, OpenAI 호환 API, Gemini·Claude·Codex·Copilot·OpenCode CLI |
| 우클릭 분석 | Proxy History의 요청을 우클릭해 바로 AI 분석. 전송 전 마스킹된 내용을 미리 보여줌 |
| AI 패시브 스캔 | 추가 요청 없이 지나가는 트래픽만 분석. 신뢰도 85% 이상이면 [AI Passive] 이슈 생성 (Burp Pro 전용) |
| AI 액티브 스캔 | 62개 취약점 유형을 대상으로 실제 테스트 요청 전송. 위험 등급·스캔 모드 선택, 403 우회 테스트 포함 |
| MCP 서버 | 기본 127.0.0.1:9876(SSE). Claude Desktop·Claude Code 같은 외부 AI가 Burp 도구를 호출. 전체 빌드 59개, 스토어 빌드 8개 도구 |
| 프라이버시 모드 | STRICT / BALANCED / OFF. AI로 나가기 전 쿠키·토큰·호스트명을 가림 |
| 감사 로그 | AI 요청 이력을 JSONL로 기록. v1.0.1부터 프롬프트·응답은 기본적으로 SHA-256 해시와 길이만 남김 |
Burp AI(내장)와 무엇이 다른가
| 구분 | Burp AI (PortSwigger 내장) | Custom AI Agent (이 확장) |
|---|---|---|
| 에디션 | Burp Suite Professional | Community·Pro 모두 (단, 패시브 스캔과 Burp AI 백엔드는 Pro 필요) |
| 모델 | PortSwigger가 제공하는 모델 | 로컬 모델 또는 원하는 클라우드 API·CLI 선택 |
| 비용 | AI 크레딧 차감 | 선택한 제공사 요금 (로컬 모델은 별도 과금 없음) |
| 외부 연동 | Burp 안에서 사용 | MCP로 터미널·데스크톱 AI 도구와 연결 가능 |
둘은 경쟁 관계라기보다 함께 쓸 수 있는 관계입니다. 이 확장의 백엔드 목록에 Burp AI 자체도 들어 있어서, Pro 사용자는 크레딧을 쓰다가 민감한 대상만 로컬 모델로 바꾸는 식으로 운용할 수 있습니다.
🔐 편한 만큼 따져봐야 할 위험
AI 확장은 점검 속도를 확실히 올려주지만, 점검원이 다루는 데이터는 대부분 고객사의 것입니다. 도입 전에 아래 네 가지는 짚고 가는 게 좋습니다.
| 위험 | 무슨 일이 생기나 | 대응 |
|---|---|---|
| 외부 전송 | 클라우드 백엔드를 쓰면 요청·응답 일부가 제3자 AI 제공사로 나감 | 계약서·NDA의 외부 반출 조항 확인, 민감 대상은 로컬 모델이나 STRICT 모드 |
| 실제 공격 트래픽 | 액티브 스캐너는 대상 서버에 진짜 요청을 보냄. 프라이버시 모드는 AI로 가는 데이터만 통제함 | Scope Only 체크, SAFE 등급부터 시작, 허가 범위 문서화 |
| MCP 포트 | 외부 접근을 켜면 Burp를 원격에서 조작하는 창구가 열림 | 기본값(루프백) 유지, 외부 접근 시 강한 토큰·TLS, MCP 도구를 Scope로 제한 |
| AI 오판 | 오탐·환각, 그리고 대상 응답 본문에 심어둔 문장으로 AI를 속이는 프롬프트 인젝션 가능성 | AI 결과는 단서로만 보고 Repeater로 직접 재현한 것만 보고 |
⚠️ BALANCED가 기본값이니 안전하다? 버전별 함정
v0.6.0부터 프라이버시 모드 기본값이 BALANCED(쿠키 제거·토큰 마스킹)로 바뀌었습니다. 그래서 "설정 안 건드려도 쿠키는 알아서 가려지겠지"라고 생각하기 쉬운데요, 실제로는 그렇지 않았던 기간이 있습니다. 2026년 8월 5일 진행된 외부 보안 검토에서, 배포된 0.9.2를 직접 실행해 두 가지 결함이 확인됐습니다. 영향 범위는 0.9.0~0.9.2 전체이고, 8월 22일 첫 안정판인 v1.0.0에서 수정됐습니다. 프로젝트는 두 건 모두 CVE·GHSA 번호가 발급되지 않았다고 밝혔습니다.
| 결함 | 내용 | 심각도 |
|---|---|---|
| SEC-04 | MCP 서버의 접근통제 검사가 요청 처리 뒤에 실행되도록 등록돼 있었음. 외부 접근을 켠 경우 인증 없이 MCP 도구 호출이 가능했고, 로컬 모드에서도 Origin·Host 검사와 보안 헤더가 적용되지 않았음 | Critical |
| PRIV-05 | 패시브 스캐너가 쿠키를 "Cookie:" 접두어 없이 프롬프트에 넣어 마스킹 규칙을 비껴감. JSESSIONID, PHPSESSID 같은 세션 쿠키가 STRICT·BALANCED에서도 AI 백엔드로 그대로 전송됨 | High |

끝이 아닙니다. 2026년 10월 9일 나온 v1.0.1에서도 1.0.0까지 남아 있던 보안 문제가 여럿 고쳐졌습니다. 점검원 입장에서 특히 눈여겨볼 항목만 추리면 이렇습니다.
| 구분 | 1.0.0까지의 문제 (1.0.1에서 수정) |
|---|---|
| 감사 로그 | 감사 로그를 켜면 MCP 토큰, 커스텀 인증 헤더 값, 프롬프트 전문이 디스크에 평문으로 기록됐고 파일 권한도 다른 로컬 계정이 읽을 수 있는 수준이었음 |
| 우클릭 전송 | 요청의 URL 필드가 마스킹 없이 함께 전송돼 쿼리스트링 토큰이 새어 나갔고, 스캐너 이슈 본문도 모든 모드에서 그대로 전송됨 |
| SAFE 등급 | IDOR 테스트가 메서드와 무관하게 원 요청을 재전송해 SAFE에서도 DELETE·PUT 같은 상태 변경 요청이 다른 객체 ID로 반복될 수 있었음. 이제 GET·HEAD·OPTIONS 외 요청은 DANGEROUS에서만 재전송 |
| 요청 변조 | 일부 비ASCII 문자가 따옴표·괄호로 바뀌는 인코딩 문제로, 대상 페이지 내용이 AI 백엔드 요청 JSON 구조를 바꿀 수 있었음 |
0.9.x는 지원이 종료됐고 백포트도 없습니다. 이전 버전을 썼다면 업그레이드와 별개로 아래 조치가 필요합니다.
| 사용 환경 | 해야 할 일 |
|---|---|
| 외부 MCP 접근 켬 | 노출 기간 동안 인증 없는 호출이 있었다고 가정하고 MCP 토큰 교체. Burp 로그와 감사 로그에서 직접 하지 않은 도구 호출이 있는지 확인 |
| 클라우드로 패시브 스캔 | 스캔을 거친 세션 쿠키는 해당 AI 제공사에 노출된 것으로 보고 교체. 고객사 애플리케이션 쿠키라면 교체 여부는 고객사가 판단할 일이므로 알려야 함 |
| 1.0.0 + 감사 로그 | 이전 버전이 남긴 audit.jsonl·bundles 파일에 MCP 토큰과 프롬프트가 들어 있을 수 있음. MCP 토큰 재생성, 필요 시 기존 파일 삭제 |
| 로컬 모델만 사용 | Ollama·LM Studio처럼 로컬에서만 돌렸다면 데이터가 PC 밖으로 나가지 않았음. 업그레이드만 진행 |
💡 의외의 사실 두 가지 더
BApp Store에 안 보이는 게 정상입니다. README 일부에는 BApp Store 설치가 가능하다고 적혀 있지만, 공식 문서의 설치 페이지는 아직 등록 전(PortSwigger 심사 진행 중)이라고 안내합니다. 지금은 GitHub Releases가 공식 배포처이니, 다른 곳에서 받은 JAR은 쓰지 마세요.
API 키 암호화는 만능이 아닙니다. 저장된 키는 AES-256-GCM으로 암호화되지만, 그 마스터 키도 같은 Burp 설정 안에 함께 저장됩니다. 설정 파일이나 내보낸 프로젝트 파일을 넘기는 건 키를 넘기는 것과 같다고 보세요.
🛠 설치 방법
준비물
| 항목 | 조건 |
|---|---|
| Burp Suite | Community 또는 Professional. 현재 문서 기준 2026.2 이상 권장 (README의 2023.12+ 표기는 예전 기준) |
| Java | 실행은 Burp 내장 런타임으로 충분. 소스에서 빌드할 때만 Java 21 필요 |
| AI 백엔드 | 최소 1개 (로컬 모델, API 키, 또는 로그인된 CLI) |
| Node.js | Claude Desktop을 MCP로 연결할 때만 18 이상 필요 |

1단계. JAR 다운로드
GitHub Releases에서 최신 전체 빌드 Custom-AI-Agent-full-<버전>.jar와 같은 이름의 .jar.sha256 체크섬 파일을 함께 받습니다. 글 작성 시점(2026년 10월) 최신 버전은 v1.0.1입니다.
2단계. SHA-256 검증
보안 도구일수록 무결성 확인은 습관이 되어야 합니다. 출력된 값이 .sha256 파일 내용과 다르면 로드하지 말고 다시 받으세요.
# macOS / Linux
shasum -a 256 Custom-AI-Agent-full-1.0.1.jar
# Windows (PowerShell)
Get-FileHash -Algorithm SHA256 Custom-AI-Agent-full-1.0.1.jar
3단계. Burp에 로드
Extensions > Installed > Add에서 확장 유형을 Java로 고르고 JAR 파일을 선택합니다. 오류 없이 로드되면 상단에 Custom AI Agent 탭이 생깁니다. 첫 실행 때 홈 디렉터리에 ~/.burp-ai-agent/ 폴더가 만들어지고, 그 안의 AGENTS 폴더에 pentester, bughunter, auditor 세 가지 에이전트 프로필이 설치됩니다. 여기에 .md 파일을 추가하면 나만의 프로필도 만들 수 있습니다.
4단계. 백엔드 선택
Custom AI Agent 탭의 Settings에서 AI 백엔드를 고릅니다. 점검 상황별로 추천하면 이렇습니다.
| 상황 | 추천 백엔드 | 설정 포인트 |
|---|---|---|
| 외부 반출 불가 | Ollama, LM Studio | 로컬 서버 실행 후 모델 로드. 작은 모델이면 Small Model Mode로 컨텍스트 축소 |
| Burp Pro 사용 | Burp AI (내장) | Burp 설정에서 "Use AI for extensions" 활성화, AI 크레딧 필요 |
| 고성능 분석 | Anthropic API, Claude·Codex·Gemini CLI | API 키 입력, CLI는 Burp를 실행하는 같은 환경에서 미리 로그인 |
| 자체 게이트웨이 | Generic OpenAI 호환 | Base URL과 모델명 지정 |
HTTP 백엔드의 요청은 Burp의 네트워크 스택을 거치기 때문에 Proxy History에서 AI로 무엇이 나가는지 직접 확인할 수 있습니다. 처음 쓸 때 한 번은 열어보길 권합니다.
5단계. 프라이버시 모드 확인
| 모드 | 쿠키 | 인증 헤더·토큰 | 호스트명 | 언제 |
|---|---|---|---|---|
| STRICT | 제거 | 마스킹 | 가명 처리 | 클라우드 백엔드 + 민감 대상 |
| BALANCED | 제거 | 마스킹 | 유지 | 기본값, 호스트 맥락이 필요할 때 |
| OFF | 유지 | 유지 | 유지 | 로컬 모델로 하는 격리된 테스트만 |
기본 패턴 외에 사내 토큰 형식처럼 고유한 값은 Privacy & Logging 탭에 정규식으로 추가할 수 있고, 이 사용자 패턴은 OFF 모드에서도 적용됩니다. 문서에서도 프라이버시 모드는 노출을 줄이는 장치일 뿐 완전한 DLP는 아니라고 밝히고 있습니다.
(선택) 소스에서 직접 빌드
git clone https://github.com/six2dez/burp-ai-agent.git
cd burp-ai-agent
# 전체 빌드 (MCP 도구 59개)
./gradlew clean shadowJar
# 스토어 빌드 (확장 고유 AI 도구 8개만)
./gradlew clean shadowJar -PstoreBuild=true
결과물은 build/libs/에 생깁니다. 스토어 빌드는 프록시 히스토리·Repeater 같은 일반 Burp 도구를 MCP로 노출하지 않으므로, 외부 AI에 Burp 조작 권한을 덜 주고 싶을 때 선택지가 됩니다.
🛠 실무 활용 방법
1. 요청 하나를 바로 분석
Proxy > HTTP History에서 요청을 우클릭하고 Extensions > Custom AI Agent > Analyze this request를 누르면 채팅 세션이 열립니다. 보내기 전에 현재 프라이버시 모드와 마스킹된 JSON을 보여주는 미리보기 창이 뜨니, 여기서 Send 또는 Cancel을 고르면 됩니다. 자주 쓰는 질문은 Custom Prompts 탭에 저장해 우클릭 메뉴에서 바로 꺼낼 수 있습니다.
2. AI 패시브 스캐너로 후보 찾기
Burp Pro에서만 동작하며 기본은 꺼져 있습니다. 켜두면 추가 요청 없이 지나가는 트래픽만 분석해서, 신뢰도 85% 이상인 결과를 [AI Passive] 이슈로 남깁니다. JavaScript 응답에서 API 엔드포인트를 추출해주는 기능도 있어 초기 정찰에 쓸 만합니다.
클라우드 비용이 걱정되면 패시브 스캐너를 끄기 전에 응답 본문 길이, 헤더 수, 파라미터 수 제한부터 줄여보세요. 여러 요청을 한 번에 묶어 보내는 Batch 설정과 세션별 토큰 예산(경고·상한) 기능도 있습니다.
3. AI 액티브 스캐너로 검증
액티브 스캐너는 실제로 테스트 요청을 보냅니다. 그래서 위험 등급과 스캔 모드를 먼저 정해야 합니다.
| 설정 | 값 | 의미 |
|---|---|---|
| 위험 등급 | SAFE | 읽기 위주, 상태 변경 가능성 낮음. 여기서 시작 |
| MODERATE | 민감 정보 조회·인증 우회 시도 포함. 확인된 지점에만 | |
| DANGEROUS | 데이터 삭제·변경 가능. 명시적 허가 없이는 사용 금지 | |
| 스캔 모드 | BUG_BOUNTY | 영향도 높은 유형 위주, 노이즈 최소화 |
| PENTEST | 정보 노출 등 낮은 등급까지 포함, 모의해킹·컴플라이언스 점검용 | |
| FULL | 62개 유형 전체 |
자주 쓰게 되는 기능은 두 가지입니다. 하나는 Repeater 등에서 파라미터를 드래그로 선택한 뒤 실행하는 AI Scan on Selected Insertion Point로, 의심 지점 하나만 골라 검사합니다. 다른 하나는 403 응답을 받은 요청을 우클릭해 실행하는 Test 403 Bypass로, 헤더·경로·메서드 변형을 통한 접근통제 우회 가능성을 확인합니다.
WAF나 요청 제한이 있는 대상이라면 Request Delay를 늘리고 동시 스캔 수(기본 3)를 줄이세요.
🚫 하지 말 것
Scope Only를 끈 채 액티브 스캔을 돌리지 마세요. 분석 도구, CDN 같은 제3자 자산까지 공격 트래픽이 갈 수 있습니다.
사전 동의 없는 대상에 쓰는 것은 불법이며, 프로젝트도 이를 명시하고 있습니다. 운영 시스템에서는 허가 범위와 시간대를 문서로 확정한 뒤 사용하세요.
4. MCP로 외부 AI와 연결
Settings > MCP Server에서 서버를 켜면 기본으로 127.0.0.1:9876에서 대기합니다. Claude Desktop은 아래 설정을 추가하면 연결됩니다. (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json, Windows: %APPDATA%\Claude\claude_desktop_config.json)
{
"mcpServers": {
"burp-ai-agent": {
"command": "npx",
"args": ["-y", "supergateway", "--sse", "http://127.0.0.1:9876/sse"]
}
}
}
터미널에서 Claude Code를 쓴다면 저장소에 포함된 burp-scan 스킬을 복사해두면 됩니다. 이 경우 확장 내장 AI가 아니라 터미널의 AI가 판단을 맡고, Burp는 MCP로 도구만 제공합니다.
# 저장소를 clone한 폴더에서 실행 (전역 설치)
cp -r skills/burp-scan ~/.claude/skills/burp-scan
이후 "Burp MCP에 연결해서 범위 내 프록시 히스토리 중 숫자 ID를 쓰는 엔드포인트를 찾고 IDOR 가능성을 점검해줘"처럼 요청하면, AI가 히스토리 조회 → 의심 엔드포인트 선별 → 비교 요청 → 이슈 등록 순서로 진행합니다. 연결 전에 MCP 설정의 Restrict MCP tools to in-scope hosts를 켜두면 외부 AI가 범위 밖 대상에 접근하지 못합니다.

정리하면, 범위를 정하는 일과 마지막에 재현·판단하는 일은 사람이 맡고, 그 사이의 반복 작업을 AI에게 맡기는 구조가 가장 안정적입니다. 문서에서도 AI 결과는 단서로 쓰고 보고 전에 Repeater로 직접 확인하라고 권합니다.
🎉 정리
Burp AI Agent(Custom AI Agent)는 Burp를 떠나지 않고 원하는 AI를 붙여 분석·스캔·MCP 자동화를 할 수 있게 해주는 확장입니다. GitHub Releases에서 받아 체크섬을 확인하고 로드하면 끝이고, 고객사 데이터를 다룬다면 로컬 모델이나 STRICT 모드부터 시작하는 게 안전합니다. 무엇보다 이전 버전을 쓰고 있다면 지금 v1.0.1 이상으로 올리고, 해당되는 토큰과 쿠키를 교체하세요.
✅ 도입 체크리스트
| 항목 | 확인 내용 | |
|---|---|---|
| 버전 | v1.0.1 이상인가 (0.9.x는 지원 종료, 1.0.0도 보안 수정 누락) | |
| 배포처 | GitHub Releases에서 받고 SHA-256을 비교했는가 | |
| 계약 조건 | 고객사 데이터를 외부 AI로 보내도 되는지 확인했는가 | |
| 프라이버시 | 클라우드 백엔드라면 STRICT 또는 BALANCED, OFF가 아닌가 | |
| Scope | 스캐너 Scope Only, MCP 범위 제한을 켰는가 | |
| MCP | 외부 접근이 꺼져 있는가, 켰다면 강한 토큰과 TLS를 쓰는가 | |
| 위험 등급 | 액티브 스캔을 SAFE부터 시작하는가 | |
| 검증 | AI 이슈를 Repeater로 재현한 뒤에만 보고서에 넣는가 |
💬 자주 묻는 질문
Q. Burp Community에서도 쓸 수 있나요?
A. 네. Burp AI 백엔드를 제외한 모든 백엔드가 Community에서 동작합니다. 다만 AI 패시브 스캐너는 Burp Pro의 스캐너 엔진에 붙는 방식이라 Community에서는 돌지 않고, MCP의 ai_analyze·ai_passive_scan 도구도 Burp AI 설정이 꺼져 있으면 거부됩니다.
Q. BApp Store에서 검색해도 안 나와요.
A. 공식 문서 기준 아직 심사 중이라 등록 전입니다. GitHub Releases에서 받으세요.
Q. 인터넷이 막힌 점검 환경에서도 되나요?
A. Ollama나 LM Studio 같은 로컬 백엔드를 쓰면 됩니다. 이 경우 분석 데이터가 PC 밖으로 나가지 않습니다.
Q. 확장 자체는 유료인가요?
A. MIT 라이선스 오픈소스라 무료입니다. 비용은 선택한 AI 제공사 요금(또는 Burp AI 크레딧)에서만 발생합니다.
🔗 참고 자료
GitHub 저장소 (six2dez/burp-ai-agent)
GitHub Releases (전체 릴리스 노트)
v1.0.1 릴리스 노트 (2026.10.09)
SECURITY.md (SEC-04, PRIV-05 보안 권고)
공식 문서: 설치
공식 문서: 백엔드 개요
공식 문서: 프라이버시 모드
공식 문서: AI 패시브 스캐너
공식 문서: AI 액티브 스캐너
공식 문서: MCP 개요
'정보보안 > Penetration Testing' 카테고리의 다른 글
| self-signed certificate 오류 해결, 도구별 CA 설정 (0) | 2026.10.22 |
|---|---|
| PentestGPT 설치 방법 한 번에 정리, Kali VM 2026 (0) | 2026.10.22 |
| REA 6.5 업데이트 총정리: Frida·ADB 동적 분석까지 (0) | 2026.10.16 |
| 취약한 은행 앱 vuln-bank로 웹·API·LLM 보안 실습하기 (0) | 2026.10.15 |
| AI로 다크웹 유출을 찾는다고? darknet-mcp-server 66개 도구의 실체와 구축 방법 (0) | 2026.10.14 |
- Total
- Today
- Yesterday
- 취약점
- 사이버보안
- 취약점 분석평가
- 전자금융기반시설취약점분석평가
- 보안상식
- 개인정보보호
- 랜섬웨어
- 금취분평
- 전자금융기반시설
- 펜테스트
- mcp 서버
- 자율침투테스트
- 개인정보유출
- AI 모의해킹
- 해킹예방
- sast
- 정보보안
- AI모의해킹
- 악성코드
- 해킹주의
- 오픈소스보안
- PentestGPT
- cve
- 보안뉴스
- AI보안
- 시큐어코딩
- DevSecOps
- 선박사이버보안
- 공급망공격
- 개발자보안
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
