CMS Detector is a versatile tool for detecting the CMS (Content Management System) used by websites. It supports multiple detection modes, concurrent processing, and customizable options for tailored scanning.
- CMS Detection: Identify CMS types from domains or titles.
- Multi-threading: Speed up detection with concurrent processing.
- Flexible Modes: Choose between internal detection or file-based matching.
- Customizable Options: Adjust timeouts, ports, and debug levels.
- Real-time Output: Monitor progress and results live.
- JSON Results: Save structured results with timestamped filenames.
cms-detector [options]
Option | Type | Description | Default |
---|---|---|---|
--file |
string | Path to file containing domains (required) | - |
--threads |
int | Number of concurrent threads | 10 |
--timeout |
int | Request timeout in seconds | 10 |
--mode |
string | Detection mode: intern or file |
intern |
--title |
string | Path to titles.txt file (required for file mode) |
- |
--port |
string | Custom port for scanning | 80/443 |
--debug |
int | Debug level (0 , 1 , 3 ) |
0 |
--help |
- | Show this help message | - |
- Basic usage with internal detection:
./cms-detector --file domains.txt ./cms-detector --file domains.txt --threads 1000 --timeout 10 --mode intern
- Using file mode with custom titles:
./cms-detector --file domains.txt --mode file --title titles.txt ./cms-detector --file domains.txt --threads 1000 --timeout 10 --title titles.txt --mode file
- Custom port scanning with more threads:
./cms-detector --file domains.txt --port 8080 --threads 20
- Debug mode with custom timeout:
./cms-detector --file domains.txt --debug 3 --timeout 15
A plain text file with one domain per line:
example.com
domain.com
site.org
A file containing path and title pairs in Path|Title
format:
/wp-admin/|Wordpress</title>
/phpmyadmin/|phpMyAdmin</title>
- Progress Tracking: Real-time updates during scanning.
- Results: Saved as
results_YYYY-MM-DD_HH-MM-SS.json
. - JSON Content: Includes details such as URL, CMS type, detection method, and timestamp.
- Both HTTP and HTTPS are supported.
- Custom ports can be used with either protocol.
- Use debug level
3
for troubleshooting detailed output. - Press
Ctrl+C
to stop processing at any time.
This tool is open-source and distributed under the MIT License. Contributions are welcome!