Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Extractor — Extension adds a new tab in Burp Suite called Extractor | Kitploit
도구/GitHubGitHub/nccgroup/extractor
Encryption/Decryption ToolsWeb Proxies & InterceptionScripting & AutomationWeb Application ExploitationPenetration TestingUtilities & Frameworks
GitHubnccgroup/extractor

Extractor

Extension adds a new tab in Burp Suite called Extractor

저장소 보기
41117년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

직접 컴파일하고 싶지 않은 사람들을 위한 설치 방법:

  1. Maven에서 Google의 GSON 라이브러리를 다운로드한다. (http://central.maven.org/maven2/com/google/code/gson/gson/2.8.2/gson-2.8.2.jar) wget http://central.maven.org/maven2/com/google/code/gson/gson/2.8.2/gson-2.8.2.jar

  2. Burp의 Extender/Options/Java Environment에서 Google의 GSON 라이브러리를 다운로드한 폴더를 선택한다.

  3. Burp의 Extender/Extensions 탭에서 확장 기능을 추가한다. (확장 기능은 저장소의 dist 폴더에 있는 jar 파일이다).

컴파일 방법:

  1. 저장소를 클론한다.

  2. Burp의 Extender/APIs 탭으로 이동하여 Save interface files 버튼을 클릭한 후, Burp의 인터페이스 파일들을 새 폴더에 저장한다. 그런 다음 이 파일들을 클론한 저장소의 src/burp 디렉터리에 복사한다.

  3. Maven에서 Google의 GSON 라이브러리를 다운로드한다. (http://central.maven.org/maven2/com/google/code/gson/gson/2.8.2/gson-2.8.2.jar) wget http://central.maven.org/maven2/com/google/code/gson/gson/2.8.2/gson-2.8.2.jar

추출기 디렉터리에서: 4. mkdir build 5. javac -cp gson-2.8.2.jar -d build src/burp/*.java 6. jar cf extractor.jar -C build burp

그런 다음 Burp의 Extender 탭에서 extractor.jar 파일을 로드한다. (또한 GSON 라이브러리를 저장한 폴더로 Burp의 경로를 지정해야 한다: Burp Extender > Options > Java Environment)

Burp에 Extractor라는 새 탭이 추가된다.

Extractor tab screenshot

사용자 매뉴얼:

개요:

이 확장 기능은 Burp Suite에 Extractor라는 새 탭을 추가한다.

이 탭 안에서 트리에 노드를 추가하여 요청 또는 응답의 데이터가 어떻게 생겼는지 설명할 수 있다. 해당 트리의 각 리프(Leaf)는 쿼리 또는 응답이 표시되는 모든 곳에 새 탭을 생성하며, 해당 특정 리프까지의 모든 상위 노드에 따라 변환된 쿼리 데이터를 표시한다.

예를 들어, 요청 본문이 특정 태그에 Base64로 인코딩된 문자열을 포함하는 XML 페이로드라면, 트리는 다음과 같아야 한다:

node tree sample image

위와 같이 설정하면 모든 요청과 응답에 이제 Body>XML:tag_name>Base64라는 이름의 탭이 포함되며, 해당 탭에는 요청 본문의 XML 태그 tag_name에 포함된 Base64 디코딩된 데이터가 표시되어야 한다. 해당 탭의 데이터를 변경하면 데이터가 Base64로 인코딩되어 요청 본문의 동일한 XML 태그에 다시 주입된다. (따라서 Proxy/Intercept에서 요청을 가로채는 동안 수정하거나 Repeater에서 페이로드를 제작할 수 있다).

노드 유형 목록:

Base64:

매개변수 없음.
이 노드는 전달된 데이터를 Base64 디코딩하고, 해당 레벨이나 하위 노드에서 데이터를 수정하면 체인을 따라 다시 인코딩한다.

Url Decode

매개변수 없음.
이 노드는 전달된 데이터에 대해 기본 URL 디코딩을 수행한다. 이 노드 또는 하위 노드 내에서 수정된 데이터는 잘못된 URL 문자만 다시 인코딩되므로 체인을 따라 다시 인코딩되면 다르게 보일 수 있다는 점에 주의한다.

GZip

매개변수 없음.
이 노드는 전달된 데이터의 GZip 압축을 풀고, 자신 또는 하위 노드가 수정되면 다시 GZip 압축한다.

BinToHex (2진수를 16진수로)

매개변수 없음.
이 노드는 전달된 데이터를 2진수에서 16진수 문자열로 변환한다. 이 노드의 데이터 또는 하위 노드 데이터가 수정되면 데이터를 16진수 문자열에서 2진수로 다시 변환한다.

HexToBin (16진수를 2진수로)

매개변수 없음.
이 노드는 전달된 데이터를 16진수 문자열에서 2진수로 변환한다. 이 노드의 데이터 또는 하위 노드 데이터가 수정되면 데이터를 2진수에서 16진수 문자열로 다시 변환한다.

Url Parameter

매개변수 1개:

  • URL Parameter Name: 추출할 URL 매개변수의 이름을 지정한다.

이 노드는 x-www-form-urlencoded 유형의 URL 매개변수 하나에서 데이터를 추출한다. 요청의 URL에서 URL 매개변수를 추출하기 위해 Header 하위 노드로 직접 사용하거나, 본문에 URL 스타일 매개변수만 포함된 경우 body 하위 노드로 사용하거나, URL 또는 x-www-form-urlencoded 매개변수를 포함하는 다른 노드의 하위 노드로 사용할 수 있다. 수정된 데이터는 동일한 위치의 매개변수에 다시 주입된다.

Body Parameter

매개변수 2개:

  • Parameter Name: 추출해야 하는 본문 매개변수의 이름.
  • Boundary String: 요청의 boundary 플래그 내용을 이 매개변수에 복사한다. (여기에 추가 대시를 넣지 않는다)

이 노드는 multipart/form-data 유형의 본문 매개변수를 추출하는 데 사용된다. 수정된 데이터는 동일한 위치의 매개변수에 다시 주입된다.

Cookie

매개변수 1개:

  • Cookie Name: 처리해야 하는 쿠키의 이름.

이 노드는 하나의 쿠키에서 데이터를 추출하며, 수정된 데이터는 쿠키에 다시 주입된다. 이 노드는 Header 노드의 직접적인 하위 노드로 사용해야 한다.

Header Flag

매개변수 1개:

  • Header flag name: 요청에서 추출해야 하는 플래그의 이름.

이 노드는 하나의 헤더 플래그의 내용을 추출하며, 수정된 데이터는 플래그에 다시 주입된다. 이 노드는 Header 노드의 직접적인 하위 노드로 사용해야 한다.

XML

매개변수 1개:

  • XML node name: 데이터를 추출할 노드의 이름.

이 노드는 XML 노드 이름 매개변수와 일치하는 첫 번째 XML 노드에서 값을 추출한다. 수정된 데이터는 해당 노드의 값에 다시 주입된다.

XML Parameter

매개변수 2개:

  • XML node name: 데이터를 추출할 노드의 이름.
  • XML node Parameter: 추출할 매개변수 값의 이름.

이 노드는 XML 노드 이름과 일치하는 첫 번째 XML 노드에서 매개변수 값을 추출한다. 수정된 데이터는 해당 노드의 매개변수에 다시 주입된다.

Json

매개변수 2개:

  • Name: 추출할 json 객체의 이름.
  • Index (선택 사항): 객체가 테이블인 경우 이 인덱스를 사용하여 추출할 부분을 결정한다. 인덱스가 제공되지 않았고 데이터가 테이블이면 전체 테이블이 추출된다. 객체가 테이블이 아니면 이 필드를 비워 둔다.

이 노드는 JSON 페이로드에서 데이터를 추출한다. 전달된 페이로드의 최상위 레벨 데이터만 추출할 수 있다. 그러나 이 노드를 다른 Json 노드와 연결하여 JSON 객체 내에 포함된 JSON 객체를 추출할 수 있다.

AND

매개변수 1개:

  • AND with (in hex): AND 연산할 데이터의 16진수 표현.

이 노드는 전달된 데이터를 매개변수의 데이터와 AND 연산한다. 노드에 전달되는 데이터는 2진수 형식이어야 한다 (필요하면 먼저 HextoBin 노드를 사용한다). 수정된 데이터는 AND 연산되어 다시 주입되지만, AND 연산자는 전단사 (bijective)가 아니므로 이 연산은 의미가 거의 없다는 점에 유의한다 (다시 주입된 데이터가 해당 컨텍스트에서 의미가 있기를 기대할 수 없다).

OR

매개변수 1개:

  • OR with (in hex): OR 연산할 데이터의 16진수 표현.

이 노드는 전달된 데이터를 매개변수의 데이터와 OR 연산한다. 노드에 전달되는 데이터는 2진수 형식이어야 한다 (필요하면 먼저 HextoBin 노드를 사용한다). 수정된 데이터는 OR 연산되어 다시 주입되지만, OR 연산자는 전단사가 아니므로 이 연산은 의미가 거의 없다는 점에 유의한다 (다시 주입된 데이터가 해당 컨텍스트에서 의미가 있기를 기대할 수 없다).

XOR

매개변수 1개:

  • XOR with (in hex): XOR 연산할 데이터의 16진수 표현.

이 노드는 전달된 데이터를 매개변수의 데이터와 XOR 연산한다. 노드에 전달되는 데이터는 2진수 형식이어야 한다 (필요하면 먼저 HextoBin 노드를 사용한다). 수정된 데이터는 XOR 연산되어 다시 주입된다.

Identity :

매개변수 없음
이 노드는 처리를 수행하지 않는다. 전달된 데이터를 표시만 하며, 노드 체인을 따라 전달되는 데이터가 해당 노드가 삽입된 특정 지점에서 올바른지 확인하기 위한 제어 지점을 추가할 때 주로 유용하다.

Regex

매개변수 1개:

  • Regex: 하나의 하위 일치(submatch)를 포함하는 정규 표현식.

이 노드는 정규 표현식으로 콘텐츠를 전달하여 하위 일치만 추출한다. 다른 노드로 전달하기 전에 노드를 준비하는 데 유용하다. 샘플 ==> Callback\\((.*)\\)

직접 노드 만들기:

Java로 자신만의 노드를 만들 수 있다. 샘플 노드 파일이 코드에 QueryNodeXXX.java라는 이름으로 제공되어 있으므로 복사/붙여넣기 후 이름을 바꾸고 파일 안에 제공된 지침을 따르면 된다. 또한 새로 만든 노드를 Globals.java의 목록 끝부분에 추가해야 한다 (아무것도 깨뜨리지 않으려면 해당 목록의 처음 두 줄은 변경하지 않는다).

도구 다운로드