db
MariaDB 11 database for WordPress. Uses a tmpfs for /var/lib/mysql, making it non-persistent. Configured with a healthcheck.
lab/docker-compose.yml:6-16File viewing is interactive and short-lived. Downloads are password-protected ZIP archives using password eip.
A Python exploit for CVE-2026-60137 and CVE-2026-63030 in WordPress. It uses a REST API batch-route confusion to deliver a SQL injection via the author__not_in parameter, creates an administrator account, and then uploads and executes a one-shot plugin to achieve remote code execution.
No backdoor observed in reviewed code
The reviewed evidence is a proof-of-concept exploit for CVE-2026-60137 and CVE-2026-63030. The code performs the documented SQL injection and REST API chain to create an administrator, then optionally uploads and activates a one-shot plugin that runs only the fixed command 'id' and self-removes. No concealed executable behavior, unrelated remote access, persistence, credential theft, or deceptive payload was observed. The plugin is generated locally, restricted to administrator-only access, and contains no arbitrary command input.
The artifact contains a complete, functional Python script (exploit.py) that actively exploits CVE-2026-60137 and CVE-2026-63030 to achieve SQL injection and remote code execution. It includes all necessary logic for the attack chain: SQL injection, administrator creation, login, plugin upload, and command execution. The README explicitly describes it as a 'proof of concept' and provides usage examples for exploitation.
README.md:3-4exploit.py:1-971README.md:101-103README.md:69-70README.md:69exploit.py:144-181exploit.py:237-243exploit.py:271-280exploit.py:283-295exploit.py:184-234exploit.py:480-540exploit.py:568-597exploit.py:708-753exploit.py:765-796exploit.py:628-681exploit.py:642-643exploit.py:664-671exploit.py:543-561exploit.py:637-639This review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.
A disposable Docker Compose lab for a WordPress 6.9/7.0 REST batch-route confusion and SQL injection chain. It uses stock wordpress:7.0.1-apache and mariadb:11 images with a wpcli service for automated installation. Apache is configured to listen on port 8080 for same-site oEmbed callbacks.
lab/docker-compose.yml:1-83README.md:1-128The README explicitly describes the environment as a 'Disposable stock-install acceptance fixture' for a specific vulnerability chain (REST batch-route confusion and SQL injection). The Compose file sets up a vulnerable WordPress instance with core auto-update disabled to preserve the vulnerability, and the wpcli service automates installation for testing. The included test-matrix.sh script systematically tests multiple vulnerable versions.
README.md:1-6lab/docker-compose.yml:1-3lab/docker-compose.yml:40-42MariaDB 11 database for WordPress. Uses a tmpfs for /var/lib/mysql, making it non-persistent. Configured with a healthcheck.
lab/docker-compose.yml:6-16WordPress 7.0.1 Apache image (version overridable via WP_IMAGE_VERSION). Exposes port 8080 on 127.0.0.1. Mounts custom Apache configs to listen on 8080 and sets WP_HOME/WP_SITEURL accordingly. Core auto-update is disabled to keep the fixture vulnerable.
lab/docker-compose.yml:18-42lab/apache/ports.conf:1-10lab/apache/000-default.conf:1-8WordPress CLI image that waits for wp-config.php, optionally downloads a specific core version, installs WordPress with a fixed admin user, sets permalink structure, and prints 'LAB READY' when done. Runs as user 33:33.
lab/docker-compose.yml:44-72Bash script that iterates over vulnerable (and optionally fixed) WordPress versions, brings up the lab, runs exploit phases (check, select, add-user, exec, complete-chain, custom-plugin), and records results in a TSV report.
lab/test-matrix.sh:1-232Insufficient evidence
The README mentions 'REST batch-route confusion and author__not_in SQL injection chain' but does not map these to specific CVE IDs. No CVE description, advisory, or patch reference is provided in the evidence. The association is a repository claim without supporting documentation.
README.md:1-6Insufficient evidence
Same as CVE-2026-60137: the README describes a vulnerability chain but does not link it to this CVE. No CVE-specific details, references, or proof of association are present in the supplied evidence.
README.md:1-6README.md:88-90README.md:18-20README.md:72-73lab/docker-compose.yml:25README.md:88-90README.md:18-20README.md:22-23README.md:25-29README.md:31-34README.md:36-37README.md:88-90The lab is a self-contained vulnerability research environment. The exploit targets only the local WordPress container via 127.0.0.1:8080. The default impact is a fixed 'id' command, and the one-shot plugin deactivates and removes itself. No evidence of host escape, external connections, persistence, credential theft, or destructive behavior beyond the intended lab target.
README.md:7-12README.md:31-34README.md:75-82lab/docker-compose.yml:25This review is limited to the supplied lab evidence packet. It does not assert that the environment runs, reproduces a vulnerability, or is safe to execute. Contract: eip-docker-lab-analysis-v1.