Ir al contenido

CMSeeK

Overview

CMSeeK is a powerful CMS detection and exploitation suite designed for penetration testers and security researchers. It automatically identifies 180+ content management systems (WordPress, Joomla, Drupal, Magento, etc.) and provides vulnerability scanning with automatic exploit suggestions. The tool streamlines reconnaissance and vulnerability assessment during security audits.

Installation

Prerequisites

  • Python 3.x
  • Git
  • pip

Basic Installation

git clone https://github.com/Tuhinshubhra/CMSeeK.git
cd CMSeeK
pip install -r requirements.txt
python3 cmseek.py

On Linux/macOS

chmod +x cmseek.py
python3 cmseek.py -u http://target.com

Docker Installation

docker pull tuhinshubhra/cmseek
docker run -it tuhinshubhra/cmseek python3 cmseek.py -u http://target.com

Basic Usage

CommandDescription
python3 cmseek.py -u <url>Detect CMS on target URL
python3 cmseek.py -u <url> -vVerbose output with detailed info
python3 cmseek.py -u <url> --followFollow redirects
python3 cmseek.py -u <url> --timeout 20Set custom timeout in seconds
python3 cmseek.py --helpDisplay help menu

CMS Detection

Single URL Detection

python3 cmseek.py -u http://example.com

Output includes:

  • CMS name and version
  • Detection confidence
  • Admin panel location
  • Vulnerable components
  • Recommended exploits

With Custom User-Agent

python3 cmseek.py -u http://example.com -a "Mozilla/5.0 (Windows NT 10.0; Win64; x64)"

Scan Multiple URLs from File

python3 cmseek.py -l urls.txt

Create urls.txt:

http://target1.com
http://target2.com
http://target3.com

Vulnerability Scanning

Basic Vulnerability Scan

python3 cmseek.py -u http://example.com --cms wordpress

Force CMS Type

python3 cmseek.py -u http://example.com --force-cms joomla

Supported CMS platforms:

  • WordPress
  • Joomla
  • Drupal
  • Magento
  • OpenCart
  • PrestaShop
  • Concrete5
  • Ghost
  • Typo3

Output Results

python3 cmseek.py -u http://example.com -o report.html

Advanced Options

Proxy Configuration

python3 cmseek.py -u http://example.com --proxy http://127.0.0.1:8080

SOCKS5 Proxy

python3 cmseek.py -u http://example.com --socks5 127.0.0.1:1080

SSL/TLS Options

python3 cmseek.py -u https://example.com --no-ssl-verify
python3 cmseek.py -u https://example.com --cert /path/to/cert.pem

Batch Scanning with Options

python3 cmseek.py -l urls.txt --follow --timeout 15 -v

WordPress Detection

WordPress-Specific Scanning

python3 cmseek.py -u http://example.com --cms wordpress

CMSeeK detects:

  • WordPress version
  • Active plugins
  • Active themes
  • Vulnerable plugins
  • Admin panel location (usually /wp-admin/)

WordPress Enumeration

python3 cmseek.py -u http://example.com -e wordpress

Joomla Detection

Joomla CMS Detection

python3 cmseek.py -u http://example.com --cms joomla

Identifies:

  • Joomla version
  • Installed components
  • Vulnerable extensions
  • Administrator panel

Joomla-Specific Vulnerability Check

python3 cmseek.py -u http://example.com --force-cms joomla --vuln

Drupal Detection

Drupal CMS Identification

python3 cmseek.py -u http://example.com --cms drupal

Detects:

  • Drupal version
  • Installed modules
  • Vulnerable modules
  • Core vulnerabilities

Module Enumeration

python3 cmseek.py -u http://example.com -e drupal-modules

Vulnerability Exploitation

Automatic Exploit Suggestions

python3 cmseek.py -u http://example.com --exploit

CMSeeK provides:

  • CVE numbers
  • Vulnerability descriptions
  • PoC links
  • Remediation steps

Get Exploits for Detected Vulnerabilities

python3 cmseek.py -u http://example.com -e all

Custom Exploit Database

python3 cmseek.py -u http://example.com --db /custom/exploits/

Output and Reporting

HTML Report Generation

python3 cmseek.py -u http://example.com -o results.html

JSON Output

python3 cmseek.py -u http://example.com -j results.json

CSV Export

python3 cmseek.py -l urls.txt -c results.csv

Verbose Console Output

python3 cmseek.py -u http://example.com -v

Configuration

Config File Location

~/.cmseek/config.conf

Common Settings

[DEFAULT]
timeout = 10
follow_redirects = true
user_agent = custom_ua
proxy = http://127.0.0.1:8080
threads = 5

Custom Configuration File

python3 cmseek.py -u http://example.com --config custom.conf

Performance Tuning

Multi-threading for Batch Operations

python3 cmseek.py -l urls.txt --threads 10

Timeout Configuration

python3 cmseek.py -u http://example.com --timeout 30

Connection Pooling

python3 cmseek.py -l urls.txt --keepalive

Security Headers Detection

Scan Security Headers

python3 cmseek.py -u http://example.com --headers

Checks for:

  • X-Frame-Options
  • Content-Security-Policy
  • X-Content-Type-Options
  • HSTS

Custom Header Scanning

python3 cmseek.py -u http://example.com --header "Authorization: Bearer token"

Filtering and Targeting

Skip Certain CMS Types

python3 cmseek.py -u http://example.com --skip wordpress,joomla

Target Specific CMS Only

python3 cmseek.py -u http://example.com --only drupal

URL Pattern Filtering

python3 cmseek.py -l urls.txt --filter "*.edu"

Common Workflows

Complete Reconnaissance

python3 cmseek.py -u http://example.com -v -e all -o report.html

Batch Site Auditing

python3 cmseek.py -l sites.txt --threads 5 -o results.html

Vulnerability Assessment

python3 cmseek.py -u http://example.com --cms wordpress --vuln --exploit

CMS Version Detection Only

python3 cmseek.py -u http://example.com --version-only

Troubleshooting

Connection Timeout Issues

python3 cmseek.py -u http://example.com --timeout 60 --follow

SSL Certificate Errors

python3 cmseek.py -u https://example.com --no-ssl-verify

Proxy Authentication

python3 cmseek.py -u http://example.com --proxy http://user:pass@127.0.0.1:8080

Update Exploit Database

python3 cmseek.py --update-db

Detection Signatures

WordPress Detection Methods

# Checks wp-content directory
# Looks for wp-includes files
# Scans readme.html
# Identifies wp-admin panel

Joomla Detection Methods

# Checks media/jui/css
# Scans robots.txt patterns
# Looks for administrator panel
# Detects Joomla version patterns

General Detection

CMSeeK uses:

  • HTTP header analysis
  • Source code fingerprinting
  • Cookie patterns
  • Directory enumeration
  • Version detection signatures

Best Practices

  1. Always obtain authorization before scanning production systems
  2. Use appropriate timeouts to avoid overwhelming target servers
  3. Respect rate limits when scanning multiple URLs
  4. Review results carefully - false positives can occur
  5. Keep exploit database updated regularly
  6. Use proxies/VPNs to maintain operational security
  7. Document all findings in reports

CMSeeK is designed for authorized security testing only. Ensure you have explicit permission from the system owner before conducting vulnerability assessments. Unauthorized access to computer systems is illegal.

Resources