Skip to main content

Advanced HTTP auditing & reconnaissance framework — WAF detection, TLS audit, subdomain enum, port scan

Project description

🛡️ HTTP Auditor Ultra v2.0.0

Advanced HTTP auditing & reconnaissance framework for authorized security assessments.

Python License Tests Version


✨ Features

Module Capability
🔍 HTTP Auditing Concurrent async requests, retry with exponential backoff
🧱 WAF Detection 30+ signatures — Cloudflare, AWS, ModSecurity, Akamai, Imperva & more
🖥️ Tech Fingerprinting Nginx, Apache, PHP, WordPress, React, CDNs and more
🔒 TLS/SSL Audit Certificate expiry, cipher strength, weak signatures, SANs
📋 Security Headers OWASP scoring — CSP, HSTS, X-Frame-Options, and 7 more
🌐 Subdomain Enum DNS brute-force + Certificate Transparency logs (crt.sh)
🔌 Port Scanning Async TCP scan on common HTTP/S ports
📂 Path Discovery Wordlist-based directory/file brute-force
📊 Reports JSON, CSV, and dark-themed HTML dashboard

📁 Project Structure

http_auditor_ultra/
├── http_auditor_ultra/
│   ├── __main__.py        # Entry point & orchestrator
│   ├── config.py          # Configuration management (YAML/JSON)
│   ├── client.py          # Async HTTP client with retry logic
│   ├── fingerprint.py     # WAF detection & tech fingerprinting
│   ├── scanner.py         # Port scan, subdomain & path discovery
│   ├── tls_auditor.py     # TLS/SSL certificate inspection
│   ├── reporter.py        # JSON, CSV, HTML report generation
│   ├── cli.py             # Argparse CLI
│   ├── utils.py           # Shared utilities
│   └── data/
│       ├── subdomains.txt # 80+ subdomain wordlist
│       └── paths.txt      # 70+ path discovery wordlist
├── tests/                 # 95 tests — full coverage
└── pyproject.toml

⚙️ Installation

# Clone the repo
git clone https://github.com/juraijmughal378-png/http-auditor-ultra.git
cd http-auditor-ultra

# Install (Python 3.12+ required)
pip install -e .

# Install with dev/test dependencies
pip install -e ".[dev]"

🚀 Usage

Basic scan

python -m http_auditor_ultra https://example.com

Full Ultra scan

python -m http_auditor_ultra example.com \
  --subdomains \
  --scan-ports \
  --discover-paths \
  --html report.html \
  --json report.json

Scan from URL list

python -m http_auditor_ultra urls.txt --max-concurrent 20 --timeout 60

TLS + fingerprinting only

python -m http_auditor_ultra https://example.com --no-subdomains --json tls_report.json

Custom ports + wordlist

python -m http_auditor_ultra example.com \
  --scan-ports \
  --custom-ports 80,443,8080,8443,3000 \
  --path-wordlist mypaths.txt

With config file

python -m http_auditor_ultra target.com --config ultra.yaml --log-level DEBUG

🛠️ CLI Options

positional arguments:
  target                Target URL, domain, or path to URL list file

Connection settings:
  --timeout SECONDS     Request timeout (default: 30)
  --max-retries N       Max retry attempts (default: 3)
  --backoff-factor S    Exponential backoff base in seconds
  --max-concurrent N    Max concurrent requests (default: 10)
  --no-verify-ssl       Disable SSL certificate verification
  --no-follow-redirects Do not follow HTTP redirects

Ultra scanning modules:
  --subdomains          Enable subdomain enumeration (DNS + CT logs)
  --scan-ports          Enable port scanning
  --custom-ports PORTS  Custom port list e.g. 80,443,8080
  --discover-paths      Enable path/directory discovery
  --subdomain-wordlist  Custom subdomain wordlist file
  --path-wordlist       Custom path wordlist file
  --no-fingerprint      Disable WAF/tech fingerprinting
  --no-tls              Disable TLS/SSL audit

Output settings:
  -j, --json FILE       Write JSON report
  --csv FILE            Write CSV report
  --html FILE           Write HTML dashboard report
  --log-level LEVEL     DEBUG / INFO / WARNING / ERROR

📄 Config File (YAML)

timeout: 30.0
max_retries: 3
max_concurrent: 15
rate_limit_delay: 0.5
verify_ssl: true
follow_redirects: true
log_level: INFO
fingerprint_enabled: true
tls_audit_enabled: true
subdomain_enum_enabled: false
port_scan_enabled: false
path_discovery_enabled: false
common_ports: [80, 443, 8080, 8443, 8000]

🧪 Running Tests

pytest tests/ -v
# 95 passed in < 1s

⚠️ Legal Disclaimer

This tool is intended only for authorized security assessments.
Always obtain written permission before scanning any target.
Unauthorized use may violate laws. The authors are not responsible for misuse.


📜 License

MIT License — see LICENSE for details.


Made with ❤️ by juraijmughal378-png

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

http_auditor_ultra-3.0.0.tar.gz (36.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

http_auditor_ultra-3.0.0-py3-none-any.whl (32.9 kB view details)

Uploaded Python 3

File details

Details for the file http_auditor_ultra-3.0.0.tar.gz.

File metadata

  • Download URL: http_auditor_ultra-3.0.0.tar.gz
  • Upload date:
  • Size: 36.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for http_auditor_ultra-3.0.0.tar.gz
Algorithm Hash digest
SHA256 8a543da9d63e86bbd8555cb597f67646953d8f1fdd55e9ec64e16859bf9441d3
MD5 55b2d4b5327a30f47a5499a4db38c73b
BLAKE2b-256 94014a838f198af04c3bd3f3178ffb5732f80ddd921fd1d3367b752836f427de

See more details on using hashes here.

File details

Details for the file http_auditor_ultra-3.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for http_auditor_ultra-3.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 031bcc527b85d0d955790364449675ac427d4fe6793c650ee436b0ac3520d1dc
MD5 853038249903af77318f9b682dcbbf65
BLAKE2b-256 91478a1f3308094bc2813970d0f0273f3b9e39c22261167265ff316c76eac605

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page