HTTP 요청 스머글링 취약점의 자동 탐지 및 익스플로잇을 위한 Burp Suite 확장 프로그램으로, HTTP/1.1 및 HTTP/2-다운그레이드 디싱크 공격을 지원하며 파서 불일치 탐지를 포함합니다.
이 Burp Suite 확장 프로그램은 PortSwigger 연구원 James Kettle이 개발한 고급 desynchronization 기술을 사용하여 HTTP Request Smuggling 취약점을 자동으로 탐지하고 악용합니다. HTTP/1.1 및 HTTP/2-downgrade desync 취약점, 클라이언트 측 desync, 연결 상태 공격에 대한 포괄적인 스캐닝을 지원합니다.
버전 3.0은 2025년에 출시되어 광범위한 desync 방어를 우회하고 훨씬 더 효과적으로 만드는 파서 불일치 탐지를 추가합니다. 자세한 내용은 백서 HTTP/1.1 Must Die: The Desync Endgame을 참조하세요.
Burp Suite DAST, Professional 및 Community 에디션과 완벽하게 호환됩니다. Pro 및 Community 에디션에는 새로운 기술을 탐색하기 위한 '연구 모드'가 있으며, DAST 통합은 새로운 위협이 출시되는 즉시 플래그를 지정하는 정기 스캔을 원하는 경우 유용합니다.
가장 쉬운 설치 방법은 Burp Suite의 Extender -> BApp Store를 이용하는 것입니다.
jar를 수동으로 로드하려면 Burp Suite (Community 또는 Pro)에서 Extender -> Extensions -> Add를 사용하여 build/libs/http-request-smuggler-all.jar을 로드하세요.
Turbo Intruder는 이 프로젝트의 종속성입니다. turbo-intruder-all.jar로 이 소스 트리의 루트에 추가하세요.
다음을 사용하여 빌드:
Linux: ./gradlew build fatjar
Windows: gradlew.bat build fatjar
출력은 build/libs/desynchronize-all.jar에서 가져옵니다.
요청을 마우스 오른쪽 버튼으로 클릭하고 Launch Smuggle probe를 클릭한 다음, Extender->Extensions->HTTP Request Smuggler 아래의 Organizer 및 확장 프로그램 출력 창을 확인하세요.
Burp Pro를 사용하는 경우, 모든 발견 사항은 스캔 문제로도 보고됩니다.
청크 인코딩을 사용하는 요청을 마우스 오른쪽 버튼으로 클릭하면 Launch Smuggle attack이라는 또 다른 옵션이 표시됩니다. 이 옵션을 선택하면 prefix 변수를 편집하여 다양한 공격을 시도할 수 있는 Turbo Intruder 창이 열립니다.
고급 사용법은 비디오를 시청하세요.
연습을 위한 무료 온라인 실습실 모음을 출시했습니다. 첫 번째 실습실인 HTTP request smuggling, basic CL.TE vulnerability를 해결하기 위해 도구를 사용하는 방법은 다음과 같습니다:
7단계에서 'prefix' 변수를 변경하면 모든 실습실과 사실상 모든 실제 시나리오를 해결할 수 있습니다.