mysql
MySQL 8.0 database service for WordPress. Configured with healthcheck, persistent volume, and environment variables for credentials.
docker-compose.local.yml:8-30CVE-2023-26326 has a selected CVSS score of 9.8 (critical); EIP currently links 2 repository PoCs and 2 lab environments.
The BuddyForms WordPress plugin, in versions prior to 2.7.8, was affected by an unauthenticated insecure deserialization issue. An unauthenticated attacker could leverage this issue to call files using a PHAR wrapper that will deserialize the data and call arbitrary PHP Objects that can be used to perform a variety of malicious actions granted a POP chain is also present.
| Product | Source | Version range | Status |
|---|---|---|---|
BuddyForms WordPress Plugin | CVE List | All versions prior to version 2.7.8 | affected |
A Docker Compose environment for local testing of a vulnerable WordPress lab. It deploys MySQL, a custom WordPress image with vulnerable glibc and Ghostscript, and an Nginx reverse proxy. The lab is designed to exercise CVE-2024-2961 (glibc iconv buffer overflow) and CVE-2024-29510 (Ghostscript format string).
docker-compose.local.yml:1-5wordpress/Dockerfile.local:1-7The Compose file header explicitly states it is a 'Vulnerable WordPress Lab Environment (FOR LOCAL TESTING)' targeting CVE-2024-2961 and CVE-2024-29510. The Dockerfile installs specific vulnerable versions (glibc 2.35, Ghostscript 10.02.1) and a vulnerable WordPress plugin (BuddyForms 2.7.6). An exploit script for CVE-2024-2961 is included.
docker-compose.local.yml:1-5wordpress/Dockerfile.local:1-7wordpress/Dockerfile.local:30-38wordpress/Dockerfile.local:56-58exploit/cve=2024-2961.py:1-4MySQL 8.0 database service for WordPress. Configured with healthcheck, persistent volume, and environment variables for credentials.
docker-compose.local.yml:8-30Custom WordPress image built from Ubuntu 22.04 with vulnerable glibc 2.35, Ghostscript 10.02.1, BuddyForms 2.7.6 plugin, and a custom mu-plugin for Ghostscript-based file conversion. Runs with SYS_ADMIN, SYS_PTRACE capabilities and AppArmor unconfined for local testing. Entrypoint script initializes WordPress, configures plugins, and creates pages for exploitation.
docker-compose.local.yml:32-67wordpress/Dockerfile.local:1-150wordpress/entrypoint.local.sh:1-392Nginx 1.29.8-alpine reverse proxy serving WordPress on port 80. Mounts configuration files and shares WordPress files for static assets.
docker-compose.local.yml:69-90nginx/nginx.conf:1-35nginx/conf.d/wordpress.local.conf:1-84WordPress mu-plugin that handles AJAX file uploads (PS/EPS/PDF) and converts them to images using Ghostscript via exec(). The comment explicitly states it triggers CVE-2024-29510.
wordpress/mu-plugins/gs-convert-file.php:1-64Python exploit script (CNEXT) that achieves RCE via PHP file read primitive using CVE-2024-2961. It targets the BuddyForms AJAX handler and uses filter chains to corrupt PHP's heap.
exploit/cve=2024-2961.py:1-576Bash script to automate deployment of the lab locally or in production. Checks OS, installs Docker, generates .env and nginx config, and starts containers.
setup.sh:1-756Insufficient evidence
CVE-2023-26326 is mentioned in the Compose file header and README, but no vulnerable component or exploit for BuddyForms unauth deserialization is visible in the provided evidence. The BuddyForms plugin is installed, but no specific deserialization vulnerability is configured or demonstrated.
docker-compose.local.yml:4README.md:1-28Supported by supplied evidence
The Dockerfile installs Ghostscript 10.02.1, a version known to be vulnerable to CVE-2024-29510. The mu-plugin gs-convert-file.php explicitly states it triggers this CVE and uses exec() to call Ghostscript with -dSAFER, which the format string vulnerability can bypass. The ImageMagick policy is modified to allow PS/EPS/PDF processing.
wordpress/Dockerfile.local:1-7wordpress/Dockerfile.local:88-108wordpress/mu-plugins/gs-convert-file.php:1-64Supported by supplied evidence
The Dockerfile installs glibc 2.35-0ubuntu3, the vulnerable version for CVE-2024-2961. The exploit script cve=2024-2961.py is provided and targets the lab's BuddyForms AJAX handler. The entrypoint script configures the BuddyForms page and the exploit's Remote class matches the lab's endpoint.
wordpress/Dockerfile.local:30-38exploit/cve=2024-2961.py:1-4exploit/cve=2024-2961.py:40-50wordpress/entrypoint.local.sh:1-5setup.sh:90-130setup.sh:1-10docker-compose.local.yml:1-103exploit/cve=2024-2961.py:40-50wordpress/mu-plugins/gs-convert-file.php:1-64wordpress/entrypoint.local.sh:200-300setup.sh:1-10docker-compose.local.yml:1-103exploit/cve=2024-2961.py:1-576wordpress/mu-plugins/gs-convert-file.php:1-64wordpress/entrypoint.local.sh:200-300All visible behavior is directed at the lab's own target containers. The WordPress container is given SYS_ADMIN, SYS_PTRACE, and AppArmor unconfined, which are explicitly noted as intentional for local testing. The exploit script targets the lab's own WordPress instance. No hidden persistence, credential theft, host escape, or external connectivity beyond the lab is observed.
docker-compose.local.yml:62-66exploit/cve=2024-2961.py:1-576wordpress/mu-plugins/gs-convert-file.php:1-64This 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.
A Docker Compose environment deploying a vulnerable WordPress site on Ubuntu 22.04 with Nginx, MySQL, Redis, and Certbot. The WordPress container is built with a vulnerable glibc 2.35, Ghostscript 10.02.1, and BuddyForms 2.7.6 plugin to serve as a target for CVE-2024-2961 and CVE-2024-29510 exploitation exercises.
docker-compose.prod.yml:1-5wordpress/Dockerfile.prod:1-6The environment is explicitly labeled as a 'Vulnerable WordPres Lab Environment' for CVE-2024-2961 and CVE-2024-29510. It includes intentionally vulnerable software versions (glibc 2.35, Ghostscript 10.02.1, BuddyForms 2.7.6), a custom Ghostscript AJAX handler, and an exploit script for CVE-2024-2961, all indicating a vulnerability research purpose.
docker-compose.prod.yml:1-5wordpress/Dockerfile.prod:1-6exploit/cve=2024-2961.py:1-4MySQL 8.0 database service for WordPress, configured with healthcheck and persistent volume.
docker-compose.prod.yml:8-30Redis 8.0.3-alpine service for WordPress object caching, configured with memory limits and healthcheck.
docker-compose.prod.yml:32-52Custom-built WordPress container on Ubuntu 22.04 with PHP-FPM 8.1, vulnerable glibc 2.35, Ghostscript 10.02.1, and BuddyForms 2.7.6 plugin. Exposes port 9000 for PHP-FPM. Runs with SYS_ADMIN, SYS_PTRACE capabilities and AppArmor unconfined for exploit development. Entrypoint script installs WordPress, activates plugins, and creates pages for exploitation.
docker-compose.prod.yml:54-93wordpress/Dockerfile.prod:1-150wordpress/entrypoint.prod.sh:1-402Nginx 1.29.8-alpine reverse proxy serving WordPress over HTTP/HTTPS, with SSL termination, security headers, and static file serving.
docker-compose.prod.yml:95-120nginx/conf.d/wordpress.prod.conf:1-138Certbot v4.2.0 for Let's Encrypt SSL certificate issuance and renewal, run on demand.
docker-compose.prod.yml:122-133Bash script to automate deployment of the lab in local or production mode, including Docker installation, .env generation, nginx config generation, and container startup.
setup.sh:1-756Bash script to tear down Docker containers, volumes, and generated files for the lab.
clean.sh:1-175Python exploit script (CNEXT) for CVE-2024-2961, implementing a PHP file-read to RCE via glibc iconv buffer overflow. Targets the lab's WordPress admin-ajax.php endpoint.
exploit/cve=2024-2961.py:1-576WordPress mu-plugin providing an AJAX endpoint to convert uploaded PS/EPS/PDF files to images using Ghostscript. Intentionally calls ghostscript with -dSAFER to demonstrate CVE-2024-29510 format string vulnerability.
wordpress/mu-plugins/gs-convert-file.php:1-64Insufficient evidence
CVE-2023-26326 is mentioned in the Compose file header and README but no vulnerable component, exploit, or reproduction path for this CVE is visible in the supplied evidence. The BuddyForms plugin version 2.7.6 is installed, but no deserialization attack vector is configured or demonstrated.
docker-compose.prod.yml:4README.md:5Supported by supplied evidence
The environment installs Ghostscript 10.02.1, a version known to be affected by CVE-2024-29510. A custom WordPress mu-plugin (gs-convert-file.php) provides an AJAX endpoint that executes Ghostscript with -dSAFER on user-uploaded PostScript files, explicitly documented as a trigger for the format string vulnerability. The Dockerfile and entrypoint script configure the vulnerable Ghostscript and the upload conversion page.
wordpress/Dockerfile.prod:1-6wordpress/Dockerfile.prod:100-120wordpress/mu-plugins/gs-convert-file.php:1-64wordpress/entrypoint.prod.sh:1-3Supported by supplied evidence
The environment installs glibc 2.35-0ubuntu3, the vulnerable version for CVE-2024-2961. The BuddyForms plugin is installed, providing an unauthenticated AJAX endpoint (upload_image_from_url) used by the included exploit script (cve=2024-2961.py) to achieve file read and RCE via the iconv buffer overflow. The exploit script is present and targets the lab's own WordPress instance.
wordpress/Dockerfile.prod:1-6wordpress/Dockerfile.prod:30-38exploit/cve=2024-2961.py:1-4exploit/cve=2024-2961.py:40-50setup.sh:100-130setup.sh:80-98setup.sh:50-55setup.sh:40-55docker-compose.prod.yml:88-92setup.sh:1-15exploit/cve=2024-2961.py:1-4exploit/cve=2024-2961.py:40-50wordpress/mu-plugins/gs-convert-file.php:1-64wordpress/entrypoint.prod.sh:200-280All visible behavior targets the lab's own WordPress container. The exploit script attacks the lab's admin-ajax.php endpoint, and the Ghostscript handler processes uploads within the container. The WordPress container runs with elevated capabilities (SYS_ADMIN, SYS_PTRACE, AppArmor unconfined) which are documented prerequisites for the exercise and do not by themselves indicate host compromise. No evidence of host persistence, credential theft, data destruction, unexplained external payloads, or backdoor behavior is present.
exploit/cve=2024-2961.py:40-50wordpress/mu-plugins/gs-convert-file.php:1-64docker-compose.prod.yml:88-92This 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.