XSS Scanner Tool is a powerful tool built in Java using Selenium to help bug bounty hunters and penetration testers detect XSS vulnerabilities on target websites. The tool supports multi-threading, cookie management, custom payloads, and more. It is available as an executable JAR and requires Java to run.
- Java JDK 22 (Set the
JAVA_HOME
path in environment variables) - ChromeDriver (Download and set the path in
C:\Drivers\chromedriver.exe
)
- Multi-threading support for faster scanning
- Custom XSS Payloads with a default payloads file
- Cookie Injection for testing authenticated sessions
- Negative Results Logging for tracking unsuccessful scans
- Timeout Configuration for delaying the execution
- View Mode to show or hide the browser during scanning
- Right Now it will scan the only url which have one parameter only ------> https://example.com/search?q=hi
Ensure that you have Java JDK 22 or later installed. Set up the environment variables to run the tool.
- Download Java JDK: Download Link
- Set JAVA_HOME Environment Variable:
- Go to System Properties.
- Click on Environment Variables.
- Under System Variables, click on New.
- Add
JAVA_HOME
as the variable name and the path of your JDK folder as the value (e.g.,C:\Program Files\Java\jdk-22
). - Edit the Path variable, and add C:\Program Files\Java\jdk-22\bin`.
You must have ChromeDriver installed and placed in C:\Drivers\chromedriver.exe
.
- Download ChromeDriver: Download Link
- Place the downloaded file in
C:\Drivers\chromedriver.exe
.
Once Java and ChromeDriver are set up, you can run the XSS scanner.
The tool can be run with various command-line arguments for flexible scanning.
FusionXss.exe --url <url> [options]
FusionXss.exe --file urls.txt --threads 4 --timeout 2 --payloads Min_Payloads.txt
FusionXss.exe --file urls.txt --threads 4 --timeout 2 --payloads Min_Payloads.txt
FusionXss.exe --url https://example.com --cookies sessionId:abc123:/ --payloads customPayloads.txt
Option | Description |
---|---|
--url <url> |
Specify the target URL to scan. |
--file <file> |
File containing a list of URLs to test. |
--cookies <name:value:path> |
Add cookies for authenticated sessions (format: name:value:path). |
--payloads <payload file> |
Use a custom payload file for scanning. |
--negative <true/false> |
Log unsuccessful scans. |
--timeout <seconds> |
Set request timeout in seconds. |
--threads <number> |
Number of threads for concurrent scanning. |
--view <on/off> |
Toggle browser visibility (default: off). |