vamp-wp2shell-audit 1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- vamp_wp2shell_audit-1.0.dist-info/METADATA +161 -0
- vamp_wp2shell_audit-1.0.dist-info/RECORD +8 -0
- vamp_wp2shell_audit-1.0.dist-info/WHEEL +5 -0
- vamp_wp2shell_audit-1.0.dist-info/entry_points.txt +2 -0
- vamp_wp2shell_audit-1.0.dist-info/licenses/LICENSE +21 -0
- vamp_wp2shell_audit-1.0.dist-info/top_level.txt +2 -0
- vamp_wp2shell_audit.py +2237 -0
- vampsec_report.py +959 -0
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: vamp-wp2shell-audit
|
|
3
|
+
Version: 1.0
|
|
4
|
+
Summary: WordPress upload-vector and webshell auditor for authorized assessments
|
|
5
|
+
Author-email: VampSecure Studios <contact@vampsecurestudios.com>
|
|
6
|
+
License: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/Vampsecure-Labs/vamp-wp2shell-audit
|
|
8
|
+
Project-URL: Repository, https://github.com/Vampsecure-Labs/vamp-wp2shell-audit
|
|
9
|
+
Keywords: security,pentest,audit,cybersecurity,vampsecure,wordpress,webshell,cms,web-security
|
|
10
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
11
|
+
Classifier: Environment :: Console
|
|
12
|
+
Classifier: Intended Audience :: Information Technology
|
|
13
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
14
|
+
Classifier: Operating System :: OS Independent
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Topic :: Security
|
|
17
|
+
Requires-Python: >=3.9
|
|
18
|
+
Description-Content-Type: text/markdown
|
|
19
|
+
License-File: LICENSE
|
|
20
|
+
Requires-Dist: aiohttp>=3.9.0
|
|
21
|
+
Requires-Dist: rich>=13.7.0
|
|
22
|
+
Dynamic: license-file
|
|
23
|
+
|
|
24
|
+
<h1 align="center">vamp-wp2shell-audit</h1>
|
|
25
|
+
|
|
26
|
+
<p align="center">
|
|
27
|
+
<img src="https://img.shields.io/badge/python-3.9%2B-blue?logo=python&logoColor=white" alt="Python 3.9+"/>
|
|
28
|
+
<img src="https://img.shields.io/badge/platform-linux%20%7C%20macOS%20%7C%20windows-lightgrey" alt="Platform"/>
|
|
29
|
+
<img src="https://img.shields.io/badge/license-MIT-green" alt="License MIT"/>
|
|
30
|
+
<img src="https://img.shields.io/badge/VampSecure-Labs-magenta" alt="VampSecure Labs"/>
|
|
31
|
+
</p>
|
|
32
|
+
|
|
33
|
+
## Overview
|
|
34
|
+
|
|
35
|
+
`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.
|
|
36
|
+
|
|
37
|
+
## Features
|
|
38
|
+
|
|
39
|
+
- Async concurrent scanning with configurable semaphore (`-c/--concurrency`, default 5)
|
|
40
|
+
- 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
|
|
41
|
+
- Theme CVE coverage and version fingerprinting via `readme.txt` / `style.css` Stable tag
|
|
42
|
+
- Attack surface checks: XML-RPC, REST API user enumeration, uploads directory listing, `WP_DEBUG` active
|
|
43
|
+
- Basic SQLi vector probing on public URL parameters
|
|
44
|
+
- Multi-CMS detection: WordPress, Joomla, Drupal with version fingerprinting
|
|
45
|
+
- Canary upload test: PHP-inert file (no syscalls, `die()` guard), auto-deleted via REST API DELETE
|
|
46
|
+
- Scope file enforcement — targets outside scope are skipped (`-s/--scope`)
|
|
47
|
+
- Risk scoring formula: composite CVSS × version-confidence factor + surface bonuses (XML-RPC +0.5, canary confirmed +3.0)
|
|
48
|
+
- Export to JSON, HTML (dark-theme), and unified VampSecure Labs client report (HTML + PDF)
|
|
49
|
+
|
|
50
|
+
## Requirements
|
|
51
|
+
|
|
52
|
+
- Python 3.9 or later
|
|
53
|
+
- `aiohttp >= 3.9.0`
|
|
54
|
+
- `rich >= 13.7.0`
|
|
55
|
+
- Optional: `fpdf2 >= 2.7` for `--report-pdf`
|
|
56
|
+
|
|
57
|
+
## Installation
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
git clone https://github.com/belky-me/vamp-wp2shell-audit.git
|
|
61
|
+
cd vamp-wp2shell-audit
|
|
62
|
+
python3 -m venv .venv
|
|
63
|
+
source .venv/bin/activate # Windows: .venv\Scripts\activate
|
|
64
|
+
pip install -r requirements.txt
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Usage
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
python3 vamp_wp2shell_audit.py --help
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
usage: vamp_wp2shell_audit.py [-h] [-t URL [URL ...]] [-i FICHERO] [-s FICHERO]
|
|
75
|
+
[-c CONCURRENCY] [--timeout TIMEOUT]
|
|
76
|
+
[--canary] [--force]
|
|
77
|
+
[-o FICHERO] [--html FICHERO] [-v]
|
|
78
|
+
[--client CLIENT] [--engagement ENGAGEMENT]
|
|
79
|
+
[--auditor AUDITOR] [--report-scope SCOPE]
|
|
80
|
+
[--report-html FILE] [--report-pdf FILE]
|
|
81
|
+
|
|
82
|
+
vamp-wp2shell-audit — WordPress Upload Vector Auditor (VampSecure Labs)
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## Examples
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
# Audit a single WordPress site
|
|
89
|
+
python3 vamp_wp2shell_audit.py -t https://example.com
|
|
90
|
+
|
|
91
|
+
# Audit multiple targets from file
|
|
92
|
+
python3 vamp_wp2shell_audit.py -i targets.txt
|
|
93
|
+
|
|
94
|
+
# Audit with scope restriction and canary upload test
|
|
95
|
+
python3 vamp_wp2shell_audit.py -t https://example.com -s scope.txt --canary
|
|
96
|
+
|
|
97
|
+
# Concurrent batch scan with JSON and HTML output
|
|
98
|
+
python3 vamp_wp2shell_audit.py -i targets.txt -c 10 -o results.json --html report.html
|
|
99
|
+
|
|
100
|
+
# Force audit even if WordPress is not detected
|
|
101
|
+
python3 vamp_wp2shell_audit.py -t https://example.com --force
|
|
102
|
+
|
|
103
|
+
# Generate client-ready engagement report (HTML + PDF)
|
|
104
|
+
python3 vamp_wp2shell_audit.py -t https://example.com \
|
|
105
|
+
--client "Acme Corp" --engagement "WordPress Security Review Q3 2026" \
|
|
106
|
+
--auditor "J. Smith" --report-html client_report.html --report-pdf client_report.pdf
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## CLI Reference
|
|
110
|
+
|
|
111
|
+
| Flag | Default | Description |
|
|
112
|
+
|------|---------|-------------|
|
|
113
|
+
| `-t / --target URL [URL ...]` | — | One or more target WordPress URLs |
|
|
114
|
+
| `-i / --input FILE` | — | Text file with one URL per line |
|
|
115
|
+
| `-s / --scope FILE` | — | Scope file — targets outside scope are skipped |
|
|
116
|
+
| `-c / --concurrency N` | 5 | Maximum concurrent scans |
|
|
117
|
+
| `--timeout N` | 10 | Per-request timeout in seconds |
|
|
118
|
+
| `--canary` | off | Enable canary upload test on confirmed endpoints |
|
|
119
|
+
| `--force` | off | Audit even if WordPress is not detected |
|
|
120
|
+
| `-o / --output FILE` | — | Save results to JSON |
|
|
121
|
+
| `--html FILE` | — | Save dark-theme HTML report |
|
|
122
|
+
| `-v / --verbose` | off | Verbose output |
|
|
123
|
+
| `--client TEXT` | — | Client name for VSL engagement report |
|
|
124
|
+
| `--engagement TEXT` | — | Engagement title for VSL engagement report |
|
|
125
|
+
| `--auditor TEXT` | — | Auditor name for VSL engagement report |
|
|
126
|
+
| `--report-scope TEXT` | — | Scope description for VSL engagement report |
|
|
127
|
+
| `--report-html FILE` | — | Export unified VSL client report (HTML) |
|
|
128
|
+
| `--report-pdf FILE` | — | Export unified VSL client report (PDF, requires fpdf2) |
|
|
129
|
+
|
|
130
|
+
## Output Formats
|
|
131
|
+
|
|
132
|
+
| Format | Flag | Description |
|
|
133
|
+
|--------|------|-------------|
|
|
134
|
+
| Console | (default) | Rich-colored table + per-target finding panels |
|
|
135
|
+
| JSON | `-o / --output FILE` | Machine-readable full result set |
|
|
136
|
+
| HTML | `--html FILE` | Dark-theme standalone report with finding cards |
|
|
137
|
+
| Client HTML | `--report-html FILE` | Unified VampSecure Labs engagement report |
|
|
138
|
+
| Client PDF | `--report-pdf FILE` | PDF version of the VSL client report |
|
|
139
|
+
|
|
140
|
+
## Exit Codes
|
|
141
|
+
|
|
142
|
+
| Code | Meaning | CI/CD Behavior |
|
|
143
|
+
|------|---------|----------------|
|
|
144
|
+
| `0` | No critical or high findings | Pipeline passes |
|
|
145
|
+
| `1` | High-severity findings detected | Pipeline fails — review required |
|
|
146
|
+
| `2` | Critical-severity findings detected | Pipeline fails — immediate action required |
|
|
147
|
+
|
|
148
|
+
## Legal Notice
|
|
149
|
+
|
|
150
|
+
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.
|
|
151
|
+
|
|
152
|
+
## Part of VampSecure Labs Toolkit
|
|
153
|
+
|
|
154
|
+
`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:
|
|
155
|
+
|
|
156
|
+
- Portfolio: [github.com/belky-me](https://github.com/belky-me)
|
|
157
|
+
- Orchestrator: [github.com/belky-me/vamp-orchestrator](https://github.com/belky-me/vamp-orchestrator)
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
© VampSecure Studios — VampSecure Labs Security Research Division
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
vamp_wp2shell_audit.py,sha256=ygUEyox8RvVBXXu2kDmRcUUZ27VDb2hgEUPv674h6e4,99337
|
|
2
|
+
vampsec_report.py,sha256=tpQS1RMleLa6TvlQrXnUOc7OZUKcimd2x-KF2FsUObY,38980
|
|
3
|
+
vamp_wp2shell_audit-1.0.dist-info/licenses/LICENSE,sha256=VBh17V_iQ-1p85u_EIqlVcP2-FCFgS0Jw-EykIAhq0c,1075
|
|
4
|
+
vamp_wp2shell_audit-1.0.dist-info/METADATA,sha256=3rrgogOE5tRVW3V6LbuXk9Li57VK7FqIOy8DgijU8Qs,7592
|
|
5
|
+
vamp_wp2shell_audit-1.0.dist-info/WHEEL,sha256=YVMoNqKzERt-wjUZwJ33xBGAwnFl-4cqbYkTtWa4itE,91
|
|
6
|
+
vamp_wp2shell_audit-1.0.dist-info/entry_points.txt,sha256=9GHFoLfXrb1C9sO5sPu9B9gleTJHzduHrF2dm3_XtGQ,65
|
|
7
|
+
vamp_wp2shell_audit-1.0.dist-info/top_level.txt,sha256=l7eNZUVA2bJEa7ow3N44MPGSNscZqXRfjhD2q5ZcpXY,35
|
|
8
|
+
vamp_wp2shell_audit-1.0.dist-info/RECORD,,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 VampSecure Studios
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|