Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain cluster shared secret or compromise worker node
-
DeliveryConnect to manager cluster port (TCP 1516) as authenticated peer
-
ExploitSend syn_i_w_m_e request with unknown task_id and traversal filename
-
ExecutionTrigger cleanup branch in end_receiving_file()
-
Persistos.remove() deletes target file outside WAZUH_PATH
-
ImpactDisable manager configuration or invalidate API authentication tokens
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK
2 techniques across 2 tactics: Discovery, Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the ability to communicate as a recognized peer over the Wazuh cluster protocol, specifically TCP port 1516, with a valid cluster authentication credential (the cluster shared secret). The vulnerable code path is entered only when a syn_i_w_m_e message type is received with a task_id value that does not match any active entry in the sync_tasks dictionary - causing execution to fall into the cleanup branch where the attacker-controlled filename is passed to os.remove() without sanitization. Wazuh deployments in single-node mode (cluster not configured) are entirely unaffected because the cluster handler is not active. Exploitation is therefore limited to actors who have compromised an existing cluster member node, obtained the cluster shared secret through other means, or are a malicious insider with cluster node access. The Wazuh manager process user's OS-level filesystem permissions further constrain which files outside WAZUH_PATH can actually be deleted. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:H/UI:N, score 7.5) captures two critical risk moderators: PR:H limits the attacker population to actors already holding cluster-authenticated node credentials, and AT:P acknowledges that the attack requires a specific deployment condition - an active Wazuh cluster with at least one additional node. This substantially narrows real-world risk compared to the high C/I/A impact scores might suggest in isolation. EPSS data was not provided in the intelligence feed, preventing numerical exploitation-probability quantification. KEV listing is not confirmed, and no public proof-of-concept has been identified, aligning with a lower immediate threat posture. The practical danger is a lateral-movement scenario: a single compromised worker node becomes a lever to destroy the manager's configuration, invalidate all API tokens, and sever cluster communications - a high-impact, low-noise destructive action. Single-node Wazuh deployments (no cluster configured) are entirely unaffected because the cluster handler is inactive. Organizations running multi-node Wazuh clusters should treat this as a high-priority patch regardless of KEV absence, given the disproportionate blast radius relative to the exploit's simplicity once cluster access is established. |
| Exploit ScenarioDerived | An attacker who has compromised a Wazuh worker node connects to the manager's cluster port (TCP 1516) and sends a crafted syn_i_w_m_e synchronization message with a non-existent task_id paired with the filename /var/ossec/etc/jwt_secret.json. The cleanup branch in end_receiving_file() resolves this to the absolute path and calls os.remove(), silently deleting the JWT signing secret and forcing immediate invalidation of all active API tokens across all clients. The attacker repeats the operation targeting the cluster TLS certificate, severing cluster communications and preventing automated recovery without manual administrative intervention. No public proof-of-concept exploit has been identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 19, 2026
Arbitrary file deletion on a Wazuh manager via the cluster synchronization protocol allows a cluster-authenticated attacker to destroy critical files including ossec.conf, jwt_secret.json, and TLS certificates, effectively disabling the manager or invalidating all API authentication tokens. The flaw spans Wazuh 4.0.0 through 4.14.5 and the 5.0.0-beta2 pre-release, rooted in missing path canonicalization inside the cluster file-receive cleanup handler. No public exploit or active exploitation has been identified at time of analysis; however, CVSS 4.0 rates the vulnerable-system impact as High across confidentiality, integrity, and availability, making this a high-priority patch for any clustered Wazuh deployment.
RemediationAI
Upgrade to Wazuh 4.14.6 (stable release, https://github.com/wazuh/wazuh/releases/tag/v4.14.6) or 5.0.0-beta2 (pre-release, https://github.com/wazuh/wazuh/releases/tag/v5.0.0-beta2), both of which include the fix from commit 90d43547d166cdbe65e9a3d011f946214df9179c. The vendor security advisory at https://github.com/wazuh/wazuh/security/advisories/GHSA-cqvw-w2rg-327f provides authoritative guidance. If immediate patching is not feasible, restrict cluster network connectivity (default TCP port 1516) using firewall rules to permit only known, trusted manager and worker IP addresses - this prevents unauthorized nodes from submitting malicious sync requests, at the cost of blocking legitimate cluster expansion until rules are updated. Additionally, deploy file integrity monitoring on ossec.conf, jwt_secret.json, and the TLS certificate directory to detect unauthorized deletions and trigger automated alerting before damage cascades. Running the wazuh-manager process under an OS user with the minimum required filesystem permissions limits which files an attacker can target, providing defense-in-depth without service disruption.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability resides in WazuhCommon.end_receiving_file() within framework/wazuh/core/cluster/common.py, the handler responsible for receiving files exchanged during cluster synchronization. When a syn_i_w_m_e message arrives with a task_id that does not match any active entry in sync_tasks, the code enters a cleanup branch and calls os.remove(os.path.join(common.WAZUH_PATH, filename)) using the attacker-supplied filename verbatim. Python's os.path.join discards the base path entirely when its second argument is an absolute path string (e.g., /etc/wazuh/ossec.conf), and directory traversal sequences such as ../../ are not normalized without an explicit os.path.realpath() call - a textbook CWE-22 (Improper Limitation of a Pathname to a Restricted Directory) instance. The commit at 90d43547 introduces os.path.realpath() canonicalization and validates the resolved path against an _ALLOWED_PREFIXES allowlist before any file operation, closing both the absolute-path and traversal-sequence bypass vectors. Files reachable include ossec.conf (manager configuration), jwt_secret.json (API token signing key), TLS cluster certificates, and ruleset files - all accessible to the Wazuh manager process user.
Know when Wazuh gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:P/PR:H/UI:N/VC:H/VI:H/VA:H/SC:N/SI:L/SA:N
PR:H for required cluster authentication; S:C because attacker node deletes files on a distinct manager component; all three impacts High due to config, secret, and availability destruction.
Primary rating from Vendor (github).
CVSS VectorVendor: github
Lifecycle Timeline
2DescriptionCVE.org
Wazuh is a free and open source platform used for threat prevention, detection, and response. From 4.0.0 until 4.14.6 and 5.0.0-beta2, WazuhCommon.end_receiving_file() in framework/wazuh/core/cluster/common.py allows a cluster-authenticated node to delete files outside WAZUH_PATH. A syn_i_w_m_e request with an unknown task_id reaches the cleanup branch, where an attacker-controlled filename is passed to os.path.join without canonicalization or confinement. Absolute paths and traversal sequences can therefore target files such as ossec.conf, jwt_secret.json, TLS certificates, and ruleset files that are accessible to the Wazuh manager process. Deletion can disable the manager, invalidate API tokens, or disrupt cluster and API connectivity. This issue is fixed in versions 4.14.6 and 5.0.0-beta2.
Executive ViewAI
Wazuh manager versions 4.0.0-4.14.5 and 5.0.0-beta2 contain a critical file-deletion vulnerability in cluster synchronization that allows authenticated cluster members to destroy essential configuration and security files, compromising the security posture of any organization relying on Wazuh for threat detection and compliance monitoring. Organizations operating Wazuh in cluster deployments face loss of security event collection and API authentication integrity until patched.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) Restrict cluster node network access to a trusted internal network only, preventing unauthorized cluster members from joining; (2) maintain offline encrypted backups of ossec.conf, jwt_secret.json, and TLS certificate directories; (3) implement file-integrity monitoring (FIM) on critical Wazuh configuration and certificate paths with alerting on any deletion or modification; (4) enable and monitor Wazuh audit logs for cluster file operations; (5) enforce API token rotation policies to minimize impact of jwt_secret compromise; (6) establish a documented runbook for restoring deleted critical files from configuration management systems.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
Wazuh SIEM platform versions 4.4.0 through 4.9.0 contain an unsafe deserialization vulnerability in the DistributedAPI t
In the wazuh-slack active response script in Wazuh 4.2.x before 4.2.5, untrusted user agents are passed to a curl comman
Path-traversal-driven root code execution affects the Wazuh security platform's cluster synchronization layer in version
Arbitrary file read in Wazuh cluster deployments (4.0.0 through 4.14.5, and 5.0.0-beta1/beta2) lets a peer node that alr
Arbitrary file write leading to root remote code execution affects Wazuh worker nodes in clustered deployments running v
A critical deserialization vulnerability in Wazuh's cluster mode allows attackers with access to any worker node to achi
Remote code execution on the Wazuh cluster master node is achievable by any attacker who controls a cluster worker node,
Path traversal in Wazuh's ip-customblock active response script allows low-privileged remote attackers to create or dele
The agent in OSSEC through 3.1.0 on Windows allows local users to gain NT AUTHORITY\SYSTEM access via Directory Traversa
Cluster key disclosure in Wazuh Manager versions 4.0.0 through 4.14.4 enables a two-stage privilege escalation: a low-pr
Unauthenticated remote denial of service in the Wazuh cluster daemon (wazuh-clusterd) allows a network peer to exhaust p
CVE-2024-1243 is an improper input validation vulnerability in Wazuh agent for Windows (versions prior to 4.8.0) that al
EUVD-2026-62553
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB