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

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.

MetricScoreSeverityVectorScored by
CVSS 3.19.9CRITICALCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:H/A:H[email protected] (Secondary)

References

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

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

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.

    CC0 1.0 Universal

  • 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.

    CVE Program Terms of Use ("CVE Usage" licence)

  • 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.

    CC BY 4.0

  • 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.

    CC BY 4.0

  • 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.

CISA KEV index