A lightweight, multi-threaded Path Traversal Vulnerability Scanner.
PathSeeker is a Python-based tool designed to identify path traversal vulnerabilities in web applications. It uses a combination of multi-threading, random user agents, and a robust wordlist to efficiently test endpoints for potential security weaknesses. Developed by Praveen Kavinda, PathSeeker is intended for security researchers and penetration testers with explicit permission to test target systems.
WARNING: PathSeeker should only be used on systems you own or have explicit permission to test. Unauthorized use may violate laws and ethical guidelines.
- Multi-Threaded Scanning: Speeds up testing by processing multiple payloads concurrently.
- Random User Agents: Rotates user agents and headers to evade detection.
- Customizable Wordlist: Use the default payload list or provide your own.
- Smart URL Handling: Correctly modifies specified parameters without breaking query strings.
- Vulnerability Detection: Identifies potential leaks with keyword-based content analysis.
- Interactive Workflow: Prompts users to continue, skip, or exit upon finding vulnerabilities.
- Output Saving: Saves results to a file for later review.
-
Clone the Repository:
git clone https://github.com/praveenkavi5/PathSeeker.git cd PathSeeker -
Install Dependencies: PathSeeker requires Python 3.6+ and the
requestslibrary. Install it using:pip install requests
-
Run the Tool:
python pathseeker.py
Run PathSeeker with default settings:
python pathseeker.py- Base URL: Enter the target URL (e.g.,
https://example.com/page?url=test&w=256). - Parameter: Specify the parameter to test (e.g.,
url). - Custom Wordlist: (Optional) Provide a file path to your payload list.
- Max Threads: (Optional) Set the number of concurrent threads (default: 10).
==========================================================
PathSeeker
----------------------------------------------------------
Developed by Praveen Kavinda
Website: https://prav33n.me
----------------------------------------------------------
~ WARNING: Use only on systems you own or have explicit permission to test! ~
==========================================================
Enter the base URL (e.g., https://topads.lk/_next/image?url=TEST&w=256&q=75): https://topads.lk/_next/image?url=TEST&w=256&q=75
Enter the parameter to test (e.g., url): url
Enter custom wordlist file path (leave blank to use default):
Enter max threads (default 10): 5
[*] Starting PathSeeker Test...
[*] Target: https://prav33n.me/_next/image?url=TEST&w=256&q=75
[*] Parameter: url
[*] Total payloads: 60
[*] Max threads: 5
-
[>] https://prav33n.me/_next/image?url=TEST&a=test2&b=test3 | Status: 400 | Length: 26 | "url" parameter is invalid
...
[*] No clear vulnerabilities detected by PathSeeker. Check responses manually for subtle leaks.
Create a text file (e.g., payloads.txt) with one payload per line:
../../etc/passwd
../secret.txt
%2e%2e%2fconfig.php
Then provide the path when prompted.
- Python: 3.6 or higher
- Dependencies:
requests(install viapip install requests)
- Input Parsing: PathSeeker takes a base URL and a target parameter, preserving other query parameters.
- Payload Testing: It tests each payload (and its double-encoded version) using multi-threading.
- Response Analysis: Checks for HTTP 200 responses and sensitive keywords (e.g.,
root,passwd). - User Interaction: Prompts for next steps if vulnerabilities are found.
- Output: Optionally saves results to a file.
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature/your-feature). - Make your changes and commit (
git commit -m "Add your feature"). - Push to your branch (
git push origin feature/your-feature). - Open a Pull Request.
Please ensure your code follows PEP 8 guidelines and includes comments where necessary.
- Praveen Kavinda
- Website: https://prav33n.me
- GitHub: prav33n
PathSeeker is provided for educational and ethical security testing purposes only. The author is not responsible for any misuse or damage caused by this tool. Use responsibly and legally.
- Add proxy support for anonymity.
- Implement rate limiting to avoid detection.
- Enhance payload generation with OS-specific patterns.
- Improve false positive filtering with advanced content analysis.
Feel free to suggest new features via Issues!