The MainWP Dashboard – The Private WordPress Manager for Multiple Website Maintenance WordPress plugin is vulnerable to stored cross-site scripting (XSS) via the mwp_setup_purchase_username parameter in versions up to and including 3.1.2. The issue is caused by insufficient input sanitization and/or output escaping, allowing attacker-supplied script content to be stored and later rendered in an administrative or user-facing page, executing in the victim’s browser when the affected page is viewed.
Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.
What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.
What an attacker gets, and what they’ve been doing with it.
If you can’t patch tonight, do this now.
mwp_setup_purchase_username; and consider applying server-side filtering to block common script payload patterns as a temporary measure (not a substitute for proper escaping).Patch, then assume compromise.
1 valid exploit after Mallory filtered fakes, detection scripts, and README-only repos (1 hidden).
This repository provides a complete, dockerized lab environment for demonstrating and testing CVE-2016-15041, an unauthenticated stored XSS vulnerability in the MainWP Dashboard WordPress plugin (<= 3.1.2). The structure includes Docker and docker-compose files to set up a vulnerable WordPress instance, a custom entrypoint script to automate installation and plugin activation, and a Bash proof-of-concept script (scripts/poc.sh) that exploits the vulnerability. The exploit works by first fetching a CSRF nonce from the setup wizard endpoint (no authentication required), then submitting a specially crafted payload via POST to the same endpoint. The payload injects a JavaScript event handler into the username field, which is stored in the WordPress database. When an admin later visits the Extensions page, the payload executes in their browser context, enabling session hijacking or admin account takeover. Key endpoints include the vulnerable setup wizard (admin-post.php?page=mainwp-setup&step=purchase_extension) and the Extensions admin page where the XSS triggers. The repository is well-documented, with clear instructions for setup, exploitation, and cleanup. The exploit is a proof-of-concept and does not include weaponized or post-exploitation features.
Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.
Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.
3 sources tracked across advisories and community write-ups. News coverage will land here when it surfaces.
No news coverage yet. Advisories and community discussion only.
Query your assets running an affected version, and investigate the blast radius.
Every observed campaign linking this CVE to a named adversary.
Malware families riding this exploit, with evidence and IOCs.
YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.
Cross-references every affected SKU, including bundled OEM variants.
Community discussion across Reddit, Mastodon, and other social sources.