Url Breaker is a lightweight Python tool designed to perform URL fuzzing.
It automatically generates various "broken" or modified variants of a target URL and tests each one to identify unexpected behaviors or potential server-side vulnerabilities.
This tool is particularly useful for web security testing, allowing you to verify if certain paths or URL variants not intended by the application are accessible or produce different responses.
- Automatic generation of URL variants including encodings, special sequences, path manipulations, and more.
- Support for a custom wordlist (
wordlist.txt
) to test your own additional variants. - Sends HTTP requests to each variant and displays the HTTP status code.
- Colorized terminal output for easier result interpretation.
- Robust error handling to prevent process interruptions due to network issues.
- Interactive console interface with mode selection and display preferences.
- Multithreaded scanning for faster execution.
- Stylish dynamic progress bar in reduced mode for a smooth UX.
- Python 3.6 or higher
- Python packages:
requests
colorama
Clone the repository or download the source files :
git clone https://github.com/V1ltrr/Url-Breaker.git
cd Url-Breaker
pip install requests colorama
Run the script by launching :
python url_breaker.py
-
Select the fuzzing mode:
- Default built-in list
- Custom wordlist from
wordlist.txt
- Exit the program
-
Select the display mode :
- Extended mode: view all tested URLs and their HTTP codes
- Reduced mode: view only a summary (200 & 403) with a progress bar
-
Enter the target URL:
- Must include the protocol (
http://
orhttps://
) - No spaces allowed
- Example:
https://example.com/admin
- Must include the protocol (
url-breaker/
├── LICENCE # This documentation file
├── README.md # This documentation file
├── url_breaker.py # Main script
├── wordlist.txt # Optional custom variants file
- Uses
requests
for HTTP requests. - URL variants are built using
urllib.parse.urljoin
to ensure valid URLs. - Handles network exceptions gracefully.
- Uses
colorama
for colored terminal output. - Interactive CLI with
print()
andinput()
for user interaction. - Uses concurrent.futures.ThreadPoolExecutor for concurrent requests.
Contributions are welcome! To contribute :
- Fork the repository
- Create a feature branch (
git checkout -b feature/your-feature
) - Commit your changes (
git commit -m 'Add new feature'
) - Push to the branch (
git push origin feature/your-feature
) - Open a Pull Request
This project is licensed under the GPL-3.0 License. See the LICENSE file for more details.