Skip to main content

vamp-wp2shell-audit

Python 3.9+ Platform License MIT VampSecure Labs

Overview

vamp-wp2shell-audit is an async, multi-target WordPress security auditor focused on upload vectors, vulnerable plugin detection, and attack surface enumeration. It fingerprints installed plugins and themes against a curated CVE database (CVSS 7.0–9.8), probes for XML-RPC, REST API user enumeration, open upload directories, and active SQLi parameters. An optional canary upload phase — using a PHP-inert file with auto-deletion — confirms whether file-write exploitation is achievable on a live target. Also supports Joomla (CVE-2023-23752) and Drupal (CVE-2018-7600 Drupalgeddon 2) fingerprinting.

Features

  • Async concurrent scanning with configurable semaphore (-c/--concurrency, default 5)
  • Plugin CVE database: 10 plugins including wp-file-manager (CVE-2020-25213, CVSS 9.8), WooCommerce Payments (CVE-2023-28121), Essential Addons for Elementor (CVE-2023-32243), and more
  • Theme CVE coverage and version fingerprinting via readme.txt / style.css Stable tag
  • Attack surface checks: XML-RPC, REST API user enumeration, uploads directory listing, WP_DEBUG active
  • Basic SQLi vector probing on public URL parameters
  • Multi-CMS detection: WordPress, Joomla, Drupal with version fingerprinting
  • Canary upload test: PHP-inert file (no syscalls, die() guard), auto-deleted via REST API DELETE
  • Scope file enforcement — targets outside scope are skipped (-s/--scope)
  • Risk scoring formula: composite CVSS × version-confidence factor + surface bonuses (XML-RPC +0.5, canary confirmed +3.0)
  • Export to JSON, HTML (dark-theme), and unified VampSecure Labs client report (HTML + PDF)

Requirements

  • Python 3.9 or later
  • aiohttp >= 3.9.0
  • rich >= 13.7.0
  • Optional: fpdf2 >= 2.7 for --report-pdf

Installation

git clone https://github.com/belky-me/vamp-wp2shell-audit.git
cd vamp-wp2shell-audit
python3 -m venv .venv
source .venv/bin/activate   # Windows: .venv\Scripts\activate
pip install -r requirements.txt

Usage

python3 vamp_wp2shell_audit.py --help
usage: vamp_wp2shell_audit.py [-h] [-t URL [URL ...]] [-i FICHERO] [-s FICHERO]
                               [-c CONCURRENCY] [--timeout TIMEOUT]
                               [--canary] [--force]
                               [-o FICHERO] [--html FICHERO] [-v]
                               [--client CLIENT] [--engagement ENGAGEMENT]
                               [--auditor AUDITOR] [--report-scope SCOPE]
                               [--report-html FILE] [--report-pdf FILE]

vamp-wp2shell-audit — WordPress Upload Vector Auditor (VampSecure Labs)

Examples

# Audit a single WordPress site
python3 vamp_wp2shell_audit.py -t https://example.com

# Audit multiple targets from file
python3 vamp_wp2shell_audit.py -i targets.txt

# Audit with scope restriction and canary upload test
python3 vamp_wp2shell_audit.py -t https://example.com -s scope.txt --canary

# Concurrent batch scan with JSON and HTML output
python3 vamp_wp2shell_audit.py -i targets.txt -c 10 -o results.json --html report.html

# Force audit even if WordPress is not detected
python3 vamp_wp2shell_audit.py -t https://example.com --force

# Generate client-ready engagement report (HTML + PDF)
python3 vamp_wp2shell_audit.py -t https://example.com \
    --client "Acme Corp" --engagement "WordPress Security Review Q3 2026" \
    --auditor "J. Smith" --report-html client_report.html --report-pdf client_report.pdf

CLI Reference

Flag Default Description
-t / --target URL [URL ...] — One or more target WordPress URLs
-i / --input FILE — Text file with one URL per line
-s / --scope FILE — Scope file — targets outside scope are skipped
-c / --concurrency N 5 Maximum concurrent scans
--timeout N 10 Per-request timeout in seconds
--canary off Enable canary upload test on confirmed endpoints
--force off Audit even if WordPress is not detected
-o / --output FILE — Save results to JSON
--html FILE — Save dark-theme HTML report
-v / --verbose off Verbose output
--client TEXT — Client name for VSL engagement report
--engagement TEXT — Engagement title for VSL engagement report
--auditor TEXT — Auditor name for VSL engagement report
--report-scope TEXT — Scope description for VSL engagement report
--report-html FILE — Export unified VSL client report (HTML)
--report-pdf FILE — Export unified VSL client report (PDF, requires fpdf2)

Output Formats

Format Flag Description
Console (default) Rich-colored table + per-target finding panels
JSON -o / --output FILE Machine-readable full result set
HTML --html FILE Dark-theme standalone report with finding cards
Client HTML --report-html FILE Unified VampSecure Labs engagement report
Client PDF --report-pdf FILE PDF version of the VSL client report

Exit Codes

Code Meaning CI/CD Behavior
0 No critical or high findings Pipeline passes
1 High-severity findings detected Pipeline fails — review required
2 Critical-severity findings detected Pipeline fails — immediate action required

Use exclusively on systems you own or for which you hold explicit written authorization from the system owner. The --canary flag performs a real write operation against the target server. VampSecure Studios assumes no liability for unauthorized use.

Part of VampSecure Labs Toolkit

vamp-wp2shell-audit is one tool in the VampSecure Labs security research toolkit. For the full toolkit including the orchestrator that runs all tools in sequence and aggregates findings into a single engagement report, see:


© VampSecure Studios — VampSecure Labs Security Research Division

Metadata

Release files for vamp-wp2shell-audit 1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vamp-wp2shell-audit 1.0
File Size Uploaded
vamp_wp2shell_audit-1.0.tar.gz 40.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for vamp-wp2shell-audit 1.0
File Interpreter ABI Platform
vamp_wp2shell_audit-1.0-py3-none-any.whl Python 3 none any Details

Total release size: 81.4 kB

Release files / vamp_wp2shell_audit-1.0.tar.gz

Download URL vamp_wp2shell_audit-1.0.tar.gz
Size 40.2 kB
Tags Source
SHA-256 checksum
How to use checksums
c9d2bc70c88074e1cabe96e6ea3c820a3732df72bebd4599dcda4d482f630049
BLAKE2b-256 checksum
How to use checksums
b2fdb8a2b2e5165682506059d10e32cd96300905a024c01edfac2d48099da4c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / vamp_wp2shell_audit-1.0-py3-none-any.whl

Download URL vamp_wp2shell_audit-1.0-py3-none-any.whl
Size 41.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f828f0e1af5df7d84315be5ebb14157e485a342c5fcab6deb708680baea20895
BLAKE2b-256 checksum
How to use checksums
1ca7c8a62e1a63bd1006cf808afeda31377570f6672efaeb052cb9e13c9c2c86
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release history Release notifications | RSS feed

1.2

2 release files

1.1

1 release file

This release

1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page