CVE-2025-24016: Wazuh Server Deserialization of Untrusted Data Vulnerability
Reference page built from the source records below, each shown as its source publishes it. Dataset version ref-1bdac9171940, updated 2026-11-02T23:39:54.475Z.
CISA Known Exploited Vulnerabilities
- Name
- Wazuh Server Deserialization of Untrusted Data Vulnerability
- Vendor
- Wazuh
- Product
- Wazuh Server
- Added to the catalog
- 2025-06-10
- Due date for US federal agencies
- 2025-07-01
- Weaknesses
- CWE-502
- Catalog version
- 2026.10.30
Wazuh contains a deserialization of untrusted data vulnerability that allows for remote code execution on Wazuh servers.
Required action (CISA)
Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.
Ransomware use: CISA does not mark known use of this vulnerability in ransomware campaigns.
Links in CISA's notes
- https://wazuh.com/blog/addressing-the-cve-2025-24016-vulnerability/
- https://github.com/wazuh/wazuh/security/advisories/GHSA-hcrc-79hj-m3qh
- https://nvd.nist.gov/vuln/detail/CVE-2025-24016
Read on 2026-11-02T23:39:54.475Z under licence cisa-kev-cc0@b0067899 from https://www.cisa.gov/sites/default/files/feeds/known_exploited_vulnerabilities.json
NVD analysis
- Status
- Analyzed
- Published
- 2025-02-10T20:15:42.540
- Last modified
- 2026-06-17T08:57:53.677
- Weaknesses
- CWE-502
Wazuh is a free and open source platform used for threat prevention, detection, and response. Starting in version 4.4.0 and prior to version 4.9.1, an unsafe deserialization vulnerability allows for remote code execution on Wazuh servers. DistributedAPI parameters are a serialized as JSON and deserialized using `as_wazuh_object` (in `framework/wazuh/core/cluster/common.py`). If an attacker manages to inject an unsanitized dictionary in DAPI request/response, they can forge an unhandled exception (`__unhandled_exc__`) to evaluate arbitrary python code. The vulnerability can be triggered by anybody with API access (compromised dashboard or Wazuh servers in the cluster) or, in certain configurations, even by a compromised agent. Version 4.9.1 contains a fix.
| Metric | Score | Severity | Vector | Scored by |
|---|---|---|---|---|
| CVSS 3.1 | 9.9 | CRITICAL | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:H/A:H | [email protected] (Secondary) |
References
- https://github.com/wazuh/wazuh/security/advisories/GHSA-hcrc-79hj-m3qh (Exploit, Vendor Advisory)
- https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2025-24016 (US Government Resource)
This product uses the NVD API but is not endorsed or certified by the NVD.
Read on 2026-11-02T23:42:15.686Z under licence nvd-api-terms-of-use@ff2a5288 from https://services.nvd.nist.gov/rest/json/cves/2.0?cveId=CVE-2025-24016
CVE record
- Title (CNA)
- Remote code execution in Wazuh server
- Assigner
- GitHub_M
- State
- PUBLISHED
- Published
- 2025-02-10T19:08:09.058Z
- Updated
- 2026-02-26T19:09:19.971Z
- Problem types
- CWE-502: Deserialization of Untrusted Data
Wazuh is a free and open source platform used for threat prevention, detection, and response. Starting in version 4.4.0 and prior to version 4.9.1, an unsafe deserialization vulnerability allows for remote code execution on Wazuh servers. DistributedAPI parameters are a serialized as JSON and deserialized using `as_wazuh_object` (in `framework/wazuh/core/cluster/common.py`). If an attacker manages to inject an unsanitized dictionary in DAPI request/response, they can forge an unhandled exception (`__unhandled_exc__`) to evaluate arbitrary python code. The vulnerability can be triggered by anybody with API access (compromised dashboard or Wazuh servers in the cluster) or, in certain configurations, even by a compromised agent. Version 4.9.1 contains a fix.
References
Read on 2026-11-03T02:15:18.674Z under licence cve-terms-of-use@81bfa2f3 from https://raw.githubusercontent.com/CVEProject/cvelistV5/main/cves/2025/24xxx/CVE-2025-24016.json
GitHub Advisory Database
GHSA-hcrc-79hj-m3qh: Wazuh server vulnerable to remote code execution
- Severity (GitHub)
- critical
- CVSS
- 9.9 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:H/A:H/E:H
- Weaknesses
- CWE-502
- Published
- 2025-04-22T16:53:39Z
- Updated
- 2025-10-22T19:27:46Z
- go github.com/wazuh/wazuh: affected >= 4.4.0, < 4.9.1, first patched 4.9.1
### Summary
An unsafe deserialization vulnerability allows for remote code execution on Wazuh servers.
The vulnerability can be triggered by anybody with API access (compromised dashboard or Wazuh servers in the cluster) or, in certain configurations, even by a compromised agent.
### Details
DistributedAPI parameters are a serialized as JSON and deserialized using `as_wazuh_object` (in `framework/wazuh/core/cluster/common.py`). If an attacker manages to inject an unsanitized dictionary in DAPI request/response, they can forge an unhandled exception (`__unhandled_exc__`) to evaluate arbitrary python code.
Using the server API, it quite easy to trigger. For example, using the `run_as` endpoint (implemented by `run_as_login` in `api/api/controllers/security_controller.py`): the `auth_context` argument is completely controlled by the attacker, and is forwarded to the master server to handle. By sending a malicious `run_as` request to a worker server, it is possible to execute code on the master server.
It is also possible to exploit the bug as a compromised agent, in certain configurations.
A compromised agent can respond to a `getconfig` request with a malicious JSON object (containing a serialized unhandled exception). If the `getconfig` request was caused because of a server API request to `/agents/{agent_id}/config/{component}/{configuration}` (`api.controllers.agent_controller.get_agent_config`), and the agent is managed by a server other than the one that received the server API request, the unsafe deserialization will occur on the server that received the original server API request.
```
user server A server B agent
| | | |
| -get-config-> | | |
| | --get-config-dapi-> | |
| | | --getconf-> |
| | | <-payload-- |
| X <-----payload------ | |
| | | |
```
It is likely that there are more ways to reach the unsafe deserialization function (`as_wazuh_object`), some of them might even be accessible from different contexts (without credentials, or initiated by a compromised agent). I suggest fixing the root cause instead of attempting to sanitize inputs that reach it. Note that there are multiple other ways to execute arbitrary code in `as_wazuh_object`, easier by using a `__callable__`, or potentially abusing callable gadgets in `exception`, `wresults` or `Wazuh`.
### PoC
To trigger using the server API (assuming default credentials):
```bash
curl -X POST -k -u "wazuh-wui:MyS3cr37P450r.*-" -H "Content-Type: application/json" --data '{"__unhandled_exc__":{"__class__": "exit", "__args__": []}}' https://<worker-server>:55000/security/user/authenticate/run_as
```
this will shut down the master server.
### Impact
This is a remote code execution on Wazuh server, affecting the latest version (v4.9.0 at this time)
Read on 2026-11-03T05:52:34.222Z under licence ghsa-cc-by-4.0@9e5f1b3c from https://api.github.com/advisories/GHSA-hcrc-79hj-m3qh
Also known as / affected packages
GHSA-hcrc-79hj-m3qh
Also known as: CVE-2025-24016. OSV.dev record, GitHub advisory.
- Go github.com/wazuh/wazuh: introduced 4.4.0, fixed 4.9.1
Read on 2026-11-03T02:48:23.858Z under licence ghsa-cc-by-4.0@9e5f1b3c from https://api.osv.dev/v1/vulns/GHSA-hcrc-79hj-m3qh
Defensive techniques (MITRE D3FEND)
D3FEND maps these defensive techniques to the weakness (CWE) that NVD lists for this CVE, through the digital artifacts the weakness affects. D3FEND does not say they stop this vulnerability.
CWE-502: Deserialization of Untrusted Data
- Harden: Software Update (acts on Software)
- Harden: Trusted Library (acts on Subroutine)
- Model: Software Inventory (acts on Software)
- Model: Asset Vulnerability Enumeration (acts on Software)
- Harden: Domain Logic Validation (acts on Subroutine)
- Harden: Variable Initialization (acts on Subroutine)
- Harden: Credential Scrubbing (acts on Subroutine)
- Restore: Restore Software (acts on Software)
- Isolate: Application-based Process Isolation (acts on Subroutine)
D3FEND ontology version 1.6.0.
Read on 2026-11-02T23:56:57.230Z under licence d3fend-terms-of-use@f98cbc7e from https://d3fend.mitre.org/api/weakness/cwe/CWE-502.json
MITRE D3FEND™ knowledge graph. © 2025 The MITRE Corporation.
"The MITRE Corporation (MITRE) hereby grants you a non-exclusive, royalty-free license to use D3FEND for research, development, and commercial purposes. Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy." Terms: https://d3fend.mitre.org/tou/
Sources and licences
CISA
Source: CISA Catalog of Known Exploited Vulnerabilities, version 2026.10.30, CC0 1.0. Use of this data does not imply endorsement by CISA or DHS.
National Vulnerability Database (NIST)
This product uses the NVD API but is not endorsed or certified by the NVD.
NVD API Terms of Use (NIST publications in the public domain, 17 U.S.C. 105)
CVE Program, The MITRE Corporation
Copyright © 1999-2026, The MITRE Corporation. CVE is a trademark and the CVE logo is a registered trademark of The MITRE Corporation. CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE™). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy.
GitHub Advisory Database
Source: GitHub Advisory Database, https://github.com/advisories/GHSA-hcrc-79hj-m3qh, licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Changes: fields selected and reformatted by ransomware-tracker.com.
GitHub Advisory Database via OSV.dev
GHSA-hcrc-79hj-m3qh: GitHub Advisory Database, https://github.com/advisories/GHSA-hcrc-79hj-m3qh. Licensed CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/), provided as is, without warranties. Retrieved via OSV.dev (https://osv.dev/vulnerability/GHSA-hcrc-79hj-m3qh), which enriches records; fields selected and reformatted by ransomware-tracker.com.
MITRE D3FEND
MITRE D3FEND™ knowledge graph. © 2025 The MITRE Corporation.
"The MITRE Corporation (MITRE) hereby grants you a non-exclusive, royalty-free license to use D3FEND for research, development, and commercial purposes. Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy." Terms: https://d3fend.mitre.org/tou/MITRE D3FEND Terms of Use (site + knowledge graph); source repo MIT
Cite this page
Dragons Eye Ransomware Tracker, "CVE-2025-24016: Wazuh Server Deserialization of Untrusted Data Vulnerability",
entity page, dataset version ref-1bdac9171940, updated 2026-11-02T23:39:54.475Z,
https://ransomware-tracker.com/cve/CVE-2025-24016 (accessed 2026-11-03).
Underlying source: CISA Catalog of Known Exploited Vulnerabilities, version 2026.10.30.
Underlying source: National Vulnerability Database (NIST), CVE API 2.0, record last modified 2026-06-17T08:57:53.677.
Underlying source: CVE List (CVE Program, The MITRE Corporation), record updated 2026-02-26T19:09:19.971Z.
Underlying source: GitHub Advisory Database, GHSA-hcrc-79hj-m3qh, updated 2025-10-22T19:27:46Z.
Underlying source: GitHub Advisory Database, GHSA-hcrc-79hj-m3qh, via OSV.dev, modified 2025-10-22T19:27:44Z.
Underlying source: MITRE D3FEND, ontology version 1.6.0.
Pages change. The dataset version identifies the data, but no archive of old versions is kept, so this citation cannot be replayed later.