
내 xssfinder 도구의 개선된 버전 - URL 목록에서 다양한 유형의 XSS를 스캔합니다.
이것은 이미 "xssfinder"로 공개된 초기 아이디어를 기반으로 한 확장 버전입니다. 이 개인 버전은 공격자가 GET뿐만 아니라 POST 요청도 수행할 수 있도록 합니다. 또한 모든 요청을 Burp 또는 다른 터널을 통해 프록시할 수 있습니다.
example.app-settings.conf 파일의 이름을 app-settings.conf 로 변경하고 설정을 조정하세요. 기본적으로 바로 작동해야 하지만, 대상에 따라 청크 크기를 조정하는 것이 좋습니다.
이 도구는 CLI를 통해 인수를 받지 않습니다. 따라서 다음을 입력하면 됩니다:
python3 extended-xss-search.py
많은 옵션과 설정을 지정할 수 있으므로 몇 가지 설명을 제공합니다.
기본 설정 파일은 "app-settings.conf"이며, 모든 작업은 이 파일에서 이루어져야 합니다! 그 외에도 헤더, URL, 쿠키와 같은 더 복잡한 데이터를 설정할 수 있는 다른 파일들이 있습니다.
config/cookie-jar.txt
이 파일을 사용하여 쿠키 문자열을 추가합니다. 저는 보통 Burp 요청에서 볼 수 있는 쿠키 문자열을 복사합니다. "Cookie:" 헤더의 값만 복사하세요. 기본 파일에 샘플 입력이 있습니다.
config/http-headers.txt
이 파일은 요청에 추가되고 조작되는 HTTP 헤더를 정의합니다(각 헤더에 페이로드가 추가됨). 가장 중요한 헤더들은 이미 파일에 있습니다. 필요하면 더 추가하세요.
config/parameters.txt
이 도구는 GET 및 POST 매개변수를 무차별 대입하는 옵션이 있습니다. 이 경우 해당 매개변수들(+쿼리 문자열에 있는 매개변수들)이 사용됩니다. 각 매개변수는 페이로드를 값으로 받습니다. 가장 중요한 것들은 이미 파일에 있습니다.
config/urls-to-test.txt
이것이 바로 필요한 파일입니다! 여기에 스캔할 링크를 추가하세요. 다음 형식이 허용됩니다:
마지막 경우가 감지되면 "http://"가 앞에 추가됩니다. 이 도구는 좋은 URL 목록과 함께 작동하도록 설계되었습니다. 좋은 방법 중 하나는 Burp를 사용하여 URL을 내보내는 것입니다. 그러면 유효한 URL 목록이 생깁니다. 쿠키만 추가하면 됩니다.
logs/
모든 것이 기록되는 로그 폴더입니다!
app-settings.conf는 프로그램 워크플로를 정의합니다. 가장 중요한 파일이며, 여기서 다양한 모듈을 활성화/비활성화할 수 있습니다.
기본 설정
HTTPTimeout
일부 요청은 오래 걸릴 수 있습니다. 여기서 하나의 요청에 대한 최대 실행 시간을 정의할 수 있습니다. 2초에서 6초 사이의 값을 권장합니다.
MaxThreads
스레드가 많을수록 스크립트가 더 빠르지만, 많은 연결을 다루기 때문에 개인 컴퓨터에서는 보통 10개 미만, VPS에서는 약 30개로 유지합니다.
공격 유형
OnlyBaseRequest
이 값을 true로 설정하면 "기본 요청"만 수행됩니다. 즉, URL 목록을 스파이더링하고 흥미로운 매개변수를 추출하는 것입니다. 이를 사용하여 Burp 사이트맵을 빠르게 채울 수 있습니다.
UsePost
이 값을 "false"로 설정하면 POST 요청을 건너뛸 수 있습니다.
UseGet
이것도 비슷합니다. "false"로 설정하면 GET 요청을 건너뜁니다.
공격 유형 설정
GetChunkSize
한 요청에서 테스트할 GET 매개변수는 몇 개입니까?
PostChunkSize
한 요청에서 테스트할 POST 매개변수는 몇 개입니까?
터널링
터널(예: "127.0.0.1:8080" (Burp Proxy))을 사용하여 Burp 내에서 모든 트래픽을 모니터링할 수도 있습니다.
Active
이 값을 "true"로 설정하면 스크립트가 터널 연결을 사용하도록 강제합니다.
Tunnel
여기에 프록시 서버 "ip:port"를 설정하세요.
결과는 다음과 같습니다. Burp를 열면 HTTP 기록을 볼 수 있습니다:



이슈를 생성하고 기능 요청으로 태그를 지정해 주세요.
이 도구가 마음에 드시나요? 현상금을 따는 데 도움이 되었나요? 보답/지원을 원하시나요? 그럼 왜 안 되겠습니까?