CVE-2025-12016

4.4 MEDIUM

📋 TL;DR

The qnotsquiz WordPress plugin has a stored XSS vulnerability that allows authenticated administrators to inject malicious scripts into website pages. This affects WordPress multi-site installations and sites where unfiltered_html capability is disabled. When users visit compromised pages, injected scripts execute in their browsers.

💻 Affected Systems

Products:
  • qnotsquiz WordPress plugin
Versions: All versions up to and including 1.0.0
Operating Systems: All operating systems running WordPress
Default Config Vulnerable: ✅ No
Notes: Only affects WordPress multi-site installations and single-site installations where unfiltered_html capability is disabled for administrators.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Administrator account compromise leads to site-wide script injection, potentially stealing user credentials, session hijacking, or redirecting visitors to malicious sites.

🟠

Likely Case

Limited script injection by compromised admin accounts affecting specific pages, potentially stealing user data or defacing content.

🟢

If Mitigated

No impact if unfiltered_html is enabled (default for single-site admins) or if proper user access controls prevent admin account compromise.

🌐 Internet-Facing: MEDIUM
🏢 Internal Only: LOW

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Requires administrator-level access and specific WordPress configuration. No public exploit code identified.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version after 1.0.0 (check plugin repository for latest)

Vendor Advisory: https://wordpress.org/plugins/qnotsquiz/

Restart Required: No

Instructions:

1. Log into WordPress admin panel. 2. Navigate to Plugins → Installed Plugins. 3. Find 'qnotsquiz' plugin. 4. Click 'Update Now' if update available. 5. If no update available, deactivate and delete plugin.

🔧 Temporary Workarounds

Enable unfiltered_html for administrators

all

For single-site installations, ensure administrators have unfiltered_html capability enabled (default setting).

Remove plugin

all

Deactivate and delete the qnotsquiz plugin if not essential.

🧯 If You Can't Patch

  • Restrict administrator accounts to trusted personnel only with strong authentication.
  • Implement web application firewall (WAF) rules to block XSS payloads in plugin parameters.

🔍 How to Verify

Check if Vulnerable:

Check WordPress admin → Plugins → Installed Plugins for qnotsquiz version 1.0.0 or earlier.

Check Version:

wp plugin list --name=qnotsquiz --field=version (WP-CLI) or check WordPress admin plugins page.

Verify Fix Applied:

Verify plugin version is greater than 1.0.0 or plugin is removed entirely.

📡 Detection & Monitoring

Log Indicators:

  • Unusual plugin file modifications
  • Administrator account activity inserting script tags into qnotsquiz_custom_start_text parameter

Network Indicators:

  • HTTP requests containing script tags in qnotsquiz_custom_start_text parameter

SIEM Query:

web_access_logs WHERE uri CONTAINS 'qnotsquiz_custom_start_text' AND (body CONTAINS '<script' OR body CONTAINS 'javascript:')

🔗 References

📤 Share & Export