Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2016-15041-mainwp-dashboard — Vuln lab: MainWP Dashboard <= 3.1.2 Unauthenticated Stored XSS | Kitploit
Tools/GitHubGitHub/flame-11/cve-2016-15041-mainwp-dashboard
Vulnerability AnalysisWeb Application ExploitationCTFPenetration TestingLearning & EducationLabs & Practice
GitHubflame-11/cve-2016-15041-mainwp-dashboard

CVE-2016-15041-mainwp-dashboard

Vuln lab: MainWP Dashboard <= 3.1.2 Unauthenticated Stored XSS

View Repository
18 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CVE-2016-15041 Lab - MainWP Dashboard Stored XSS

Vulnerable lab for CVE-2016-15041: Unauthenticated stored XSS in MainWP Dashboard WordPress plugin <= 3.1.2.

Quickstart

root@kitploit:~
docker compose up -d --build

Wait ~30 seconds for auto-setup. The lab prints a banner when ready:

root@kitploit:~
docker compose logs -f wordpress

Access

ResourceURL / Credentials
WordPresshttp://localhost:8088
Admin Loginadmin / admin123
Vulnerable Endpointhttp://localhost:8088/wp-admin/admin-post.php?page=mainwp-setup&step=purchase_extension

Validate

Nuclei:

root@kitploit:~
nuclei -t https://raw.githubusercontent.com/projectdiscovery/nuclei-templates/main/http/cves/2016/CVE-2016-15041.yaml -u http://localhost:8088

Manual PoC:

root@kitploit:~
./scripts/poc.sh http://localhost:8088

Cleanup

root@kitploit:~
docker compose down -v

Vulnerability Details

FieldValue
CVECVE-2016-15041
SeverityHigh
TypeStored XSS (Unauthenticated)
AffectedMainWP Dashboard <= 3.1.2
Fixed3.1.3

Description

The MainWP Dashboard Quick Setup Wizard is accessible without authentication. An attacker can inject JavaScript via the mwp_setup_purchase_username parameter. The payload is stored in WordPress options and rendered without escaping when an admin views the Extensions page.

Attack Flow

  1. GET /wp-admin/admin-post.php?page=mainwp-setup&step=purchase_extension → get CSRF nonce (no auth required)
  2. POST XSS payload with the nonce (no auth required)
  3. Admin visits Extensions page → JavaScript executes in admin context

Impact

  • Session hijacking / cookie theft
  • WordPress admin account takeover
  • Remote code execution via theme/plugin editor

References

  • Klikki Advisory
  • NVD

Technical Notes

The vulnerable plugin (v3.1.2) was obtained from WordPress SVN revision r1394563 (April 14, 2016). Minor PHP 8 compatibility patches were applied that do not affect the vulnerability:

  • Replaced deprecated __autoload() with spl_autoload_register()
  • Fixed curly brace array access syntax

The XSS vulnerability exists in view/view-mainwp-extensions-view.php line 74 where $username is echoed without esc_attr().

Download Tool