[Claude] Burp MCP를 통한 사이트 점검 & 모의해킹 방법
개요
최근 Claude에 MCP(Model Context Protocol) 기능이 붙으면서 Burp Suite와 연동할 수 있게 되었다. 사실 Burp Suite 자체도 강력한 도구지만, AI가 프록시 히스토리를 읽고 직접 요청을 날리고 분석까지 해주면 편하지 않을까? 라는 생각에서 시작된 것 같다. 실제로 써보니까 단순 반복 작업이나 패턴 분석 같은 건 확실히 빠르다.
이 글에서는 Burp MCP를 세팅하는 방법부터 실제로 사이트 점검에 어떻게 활용할 수 있는지까지 정리할 것이다.
주의 : 이 글은 본인이 소유하거나 명시적으로 허가받은 대상에 대해서만 수행해야 한다. 허가 없이 타인의 시스템을 점검하는 것은 불법이다.
Burp MCP란?
MCP(Model Context Protocol)는 AI 모델이 외부 도구와 통신할 수 있게 해주는 프로토콜이다. Burp Suite에서 MCP 서버를 열면 Claude 같은 AI가 Burp의 기능을 직접 호출할 수 있게 된다.
쉽게 말하면 Claude한테 "Burp에서 프록시 히스토리 보여줘", "이 요청 Repeater로 보내줘" 같은 걸 시킬 수 있다는 뜻이다.
사용할 수 있는 주요 기능은 다음과 같다.
get_proxy_http_history: 프록시 HTTP 히스토리 조회get_proxy_http_history_regex: 정규식으로 히스토리 필터링send_http1_request/send_http2_request: HTTP 요청 직접 전송create_repeater_tab: Repeater 탭 생성send_to_intruder: Intruder로 요청 전송url_encode/url_decode/base64_encode/base64_decode: 인코딩/디코딩set_proxy_intercept_state: 인터셉트 on/off 제어get_active_editor_contents/set_active_editor_contents: 에디터 내용 조회/수정
꽤 많은 기능을 지원한다.
환경 세팅
1. Burp Suite 준비
Burp Suite Professional 또는 Community Edition이 필요하다. MCP 확장을 설치해야 하는데, BApp Store에서 "MCP" 또는 "AI" 관련 확장을 검색하면 된다.
설치 후 Burp의 MCP 서버가 활성화되면 Claude Desktop이나 Claude in Chrome 등의 MCP 클라이언트에서 연결할 수 있다.
2. Claude 연결
Claude Desktop의 경우 claude_desktop_config.json에 MCP 서버 설정을 추가하면 된다. Claude in Chrome의 경우 브라우저 확장에서 Burp MCP 서버에 자동으로 연결된다.
연결이 잘 됐다면 Claude에게 Burp 관련 명령을 내릴 수 있는 상태가 된다.
실전 활용 방법
1단계 : 프록시 히스토리 분석
가장 기본적인 활용법이다. 브라우저에서 대상 사이트를 돌아다니면서 Burp 프록시로 트래픽을 캡처한 다음, Claude에게 분석을 맡기면 된다.
"프록시 히스토리에서 최근 50개 요청을 보여줘"이렇게 하면 Claude가 get_proxy_http_history를 호출해서 히스토리를 가져온다.
여기서 더 나아가면 정규식 필터링이 가능하다.
"프록시 히스토리에서 /api/ 경로를 포함하는 요청만 보여줘"이러면 get_proxy_http_history_regex로 API 엔드포인트만 뽑아볼 수 있다. 수동으로 하나하나 찾는 것보다 훨씬 빠르다.
2단계 : 취약점 패턴 탐색
히스토리를 기반으로 Claude에게 분석을 요청할 수 있다.
"프록시 히스토리를 보고 SQL Injection이 가능해 보이는 파라미터를 찾아줘""응답에 Set-Cookie 헤더가 있는 요청 중 HttpOnly 플래그가 없는 것을 찾아줘""CORS 헤더가 잘못 설정된 응답이 있는지 확인해줘"Claude가 히스토리를 읽고 패턴 매칭을 해서 의심되는 부분을 알려준다. 물론 AI가 완벽한 건 아니기 때문에 직접 검증은 필수다. 그래도 1차 필터링 용도로는 꽤 쓸만하다.
3단계 : Repeater로 수동 테스트
의심되는 요청을 발견했다면 Repeater로 보내서 수동 테스트를 할 수 있다.
"이 요청을 Repeater 탭으로 보내줘. 탭 이름은 'SQLi Test'로 해줘"또는 Claude한테 직접 변조된 요청을 보내도록 시킬 수도 있다.
"이 요청의 id 파라미터에 ' OR 1=1-- 을 넣어서 보내보고 응답을 분석해줘"이러면 Claude가 send_http1_request나 send_http2_request로 직접 요청을 날리고 응답까지 분석해준다. 여기서 주의할 점은 AI가 보내는 요청이 실제로 서버에 도달한다는 것이다. 테스트 환경이 아닌 운영 환경에서는 조심해야 한다.
4단계 : Intruder를 활용한 자동화 테스트
패턴이 확인됐다면 Intruder로 보내서 자동화 테스트를 할 수 있다.
"이 요청을 Intruder로 보내줘. username 파라미터를 페이로드 위치로 설정해줘"Intruder에 보낸 후에는 Burp에서 직접 페이로드 리스트를 설정하고 공격을 실행하면 된다. Claude가 Intruder까지 완전히 자동으로 돌리는 건 아니고, 요청을 세팅해주는 역할이라고 보면 된다.
5단계 : 인코딩/디코딩 활용
모의해킹 하다 보면 인코딩된 값을 까봐야 할 때가 많다. Base64로 인코딩된 토큰이라든지, URL 인코딩된 파라미터라든지.
"이 값을 Base64 디코딩 해줘 : eyJhbGciOiJIUzI1NiJ9""이 페이로드를 URL 인코딩 해줘 : <script>alert(1)</script>"사실 이런 건 CyberChef 같은 도구로도 할 수 있는데, 대화 흐름 안에서 바로 처리할 수 있다는 게 편하다.
점검 시나리오 예시
실제 점검 흐름을 시나리오로 정리하면 이런 식이다.
시나리오 : 로그인 기능 점검
1) 트래픽 수집
대상 사이트의 로그인 페이지에서 로그인 시도를 하면서 Burp 프록시로 트래픽을 캡처한다.
2) 히스토리 분석 요청
"프록시 히스토리에서 login 관련 요청을 찾아줘"3) 보안 헤더 점검
"로그인 응답의 보안 헤더를 분석해줘. X-Frame-Options, CSP, HSTS 등이 설정되어 있는지 확인해줘"4) 세션 관리 점검
"Set-Cookie 헤더를 분석해줘. Secure, HttpOnly, SameSite 속성이 제대로 설정되어 있는지 확인해줘"5) 인증 우회 테스트
"로그인 요청을 Repeater로 보내서 비밀번호 필드를 빈 값으로 보내보고 응답을 확인해줘"6) 결과 정리
"지금까지 발견된 이슈들을 정리해줘"이런 식으로 대화형으로 점검을 진행할 수 있다. 물론 실제 모의해킹에서는 이것보다 훨씬 복잡한 테스트가 필요하지만, 기본적인 점검 흐름은 이 정도로도 충분히 커버 가능하다.
활용 팁
프록시 히스토리를 정규식으로 잘 필터링하자
히스토리가 많아지면 전부 다 보는 건 비효율적이다. 정규식을 잘 활용하면 원하는 요청만 빠르게 뽑을 수 있다.
예를 들어 password|token|session|key 같은 정규식으로 민감 정보가 포함된 요청을 필터링하면 편하다.
인터셉트 제어를 활용하자
Claude한테 set_proxy_intercept_state로 인터셉트를 켜고 끄는 것도 가능하다. 특정 시점에만 인터셉트를 걸고 싶을 때 유용하다.
에디터 연동을 활용하자
Burp에서 요청을 편집 중일 때 get_active_editor_contents로 현재 에디터 내용을 Claude에게 보여주고, 수정 사항을 set_active_editor_contents로 바로 반영할 수 있다. 복잡한 요청을 수동으로 수정하는 것보다 빠르다.
WebSocket 히스토리도 잊지 말자
요즘 웹앱은 WebSocket을 많이 쓴다. get_proxy_websocket_history로 WebSocket 트래픽도 분석할 수 있으니 놓치지 말자.
한계점
솔직히 만능은 아니다. 몇 가지 한계점이 있다.
첫째, AI가 분석한 결과를 100% 신뢰하면 안 된다. 오탐(False Positive)이 있을 수 있고, 미탐(False Negative)은 더 위험하다. AI가 "문제없다"고 했다고 진짜 문제없는 게 아니다.
둘째, 복잡한 비즈니스 로직 취약점은 AI가 잡기 어렵다. 권한 상승이나 IDOR 같은 건 비즈니스 컨텍스트를 이해해야 하는데, 이건 아직 사람이 직접 해야 한다.
셋째, 대량의 히스토리를 한번에 분석하는 데는 한계가 있다. 컨텍스트 윈도우 제한 때문에 너무 많은 데이터를 한번에 넘기면 잘려나간다. 적절히 필터링해서 넘기는 게 중요하다.
마무리
Burp MCP는 기존 모의해킹 워크플로우에 AI를 자연스럽게 붙일 수 있는 좋은 도구다. 특히 초기 정찰이나 패턴 분석 같은 반복적인 작업에서 시간을 많이 줄여준다. 다만 최종 판단은 항상 사람이 해야 한다는 걸 잊지 말자.
도구는 도구일 뿐이다. 결국 중요한 건 도구를 쓰는 사람의 역량이다.
'webhacking' 카테고리의 다른 글
| [CodeGate 2025] 예선 Web문제 Write-up (0) | 2025.03.31 |
|---|---|
| [드림핵] 익스텐션 개발 - 다운로드 파일명 지정 (0) | 2025.03.26 |
| blind sql injection 실습 환경 구축 방법 + 개념 설명 (0) | 2025.01.20 |
| XSS 실습 환경 구축 방법 정리(docker + selenium) (0) | 2025.01.20 |
| Webhacking.kr old-20번 (0) | 2025.01.07 |