CVE-2026-49441
PoC moderatePath Traversal in Wazuh Cluster Sync Lets Rogue Worker Overwrite Files for Root RCE
Wazuh contains an external control of file name or path flaw (CWE-73) in the cluster synchronization logic of the master: the non-merged branch of process_files_from_worker() in framework/wazuh/core/cluster/master.py trusts the file_path key supplied by a peer in files_metadata. and joins it to WAZUH_PATH without verifying it stays inside the directory selected by cluster_item_key. A malicious or compromised cluster worker that holds the shared Fernet key can upload a crafted 'extra-valid' archive during sync and overwrite files outside the intended directory on the master, including /var/ossec/etc/ossec.conf. Because ossec.conf governs root-executed components such as command and active-response definitions, replacing it can lead to root-level code execution when the service reloads. All deployments from 4.3.0 up to (but not including) 4.14.6, plus pre-release 5.0.0 beta code prior to the fix, are affected, but exploitation requires an authenticated cluster peer, which limits opportunistic attacks. No exploitation in the wild is known (EPSS 0.5%, not in CISA KEV), though the flaw is documented in a public security advisory.
What to do: Upgrade the Wazuh manager to 4.14.6 (or the fixed 5.0.0-beta3 pre-release line) as soon as possible. Restrict the cluster port (TCP 1516) and manager APIs to trusted hosts, and rotate the cluster Fernet/shared key if any worker node may have been compromised. Audit /var/ossec/etc/ossec.conf and other files under /var/ossec for unauthorized changes and review manager logs for unexpected file syncs from worker nodes.
| wazuh | >= 4.3.0, < 4.14.6 |
| wazuh | 5.0.0 pre-release beta versions prior to the fix in 5.0.0-beta3 (per advisory wording) |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
Wazuh is a free and open source platform used for threat prevention, detection, and response. From 4.3.0 until 4.14.6 and 5.0.0-beta3, the non-merged branch of process_files_from_worker() in framework/wazuh/core/cluster/master.py trusts a peer-controlled file_path key from files_metadata.json. The destination is joined to WAZUH_PATH without proving that it remains inside the directory selected by cluster_item_key. A cluster peer holding the shared Fernet key can upload a crafted extra-valid archive and overwrite security-sensitive files such as /var/ossec/etc/ossec.conf. Replacing ossec.conf can configure root-executed commands and lead to code execution after a service reload. This issue is fixed in versions 4.14.6 and 5.0.0-beta3.
- Vendors
- wazuh
- Products
- wazuh
- Weakness
- CWE-73
- Vector
- CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
In the news0 stories
No ingested article mentions this CVE yet.