---
id: CVE-2026-41424
title: >-
  Wazuh is a free and open source platform used for threat prevention,
  detection, and response
summary: >-
  Wazuh is a free and open source platform used for threat prevention,
  detection, and response. From 4.9.0 until 4.10.4 and 4.14.6, PUT
  /security/users/{user_id} in api/api/controllers/security_controller.py passes
  request.get("user") inst…
severity: high
cvss: 8.2
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:H'
cwe:
  - CWE-863
vendor: wazuh
product: wazuh
affected:
  - 'wazuh >= 4.9.0, < 4.10.4'
  - 'wazuh >= 4.11.0, < 4.14.6'
patched:
  - wazuh 4.14.6
published: '2026-08-19'
updated: '2026-09-18'
sourceUpdated: '2026-09-18T14:52:30.413'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-41424'
references:
  - url: >-
      https://github.com/wazuh/wazuh/commit/1a38d11574c6d35a4272e1e7145d55d293e7dda4
    label: security-advisories@github.com
  - url: >-
      https://github.com/wazuh/wazuh/commit/813add3575ecd4df484b2326715ca78f65505b4e
    label: security-advisories@github.com
  - url: 'https://github.com/wazuh/wazuh/pull/35442'
    label: security-advisories@github.com
  - url: 'https://github.com/wazuh/wazuh/pull/35469'
    label: security-advisories@github.com
  - url: 'https://github.com/wazuh/wazuh/releases/tag/v4.10.4'
    label: security-advisories@github.com
  - url: 'https://github.com/wazuh/wazuh/releases/tag/v4.14.6'
    label: security-advisories@github.com
  - url: 'https://github.com/wazuh/wazuh/security/advisories/GHSA-gj9h-8hmr-xjjr'
    label: security-advisories@github.com
  - url: 'https://github.com/wazuh/wazuh/security/advisories/GHSA-gj9h-8hmr-xjjr'
    label: 134c704f-9b21-4f2e-91b3-4a467353bcc0
tags:
  - nvd
epss: 0.00472
epssPercentile: 0.38118
ingestedAt: '2026-09-09T21:22:45.540Z'
---

## Overview

Wazuh is a free and open source platform used for threat prevention, detection, and response. From 4.9.0 until 4.10.4 and 4.14.6, PUT /security/users/{user_id} in api/api/controllers/security_controller.py passes request.get("user") instead of request.context['token_info']['sub'] as current_user. remove_nones_to_dict() removes the resulting None value, so the reserved-account protection in framework/wazuh/security.py cannot verify who is making the request. An authenticated user with the users_admin role can overwrite the password of protected administrator accounts with user IDs at or below 99, including the wazuh superuser, and gain full administrative control. This issue is fixed in versions 4.10.4 and 4.14.6.

## Affected

- `wazuh >= 4.9.0, < 4.10.4`
- `wazuh >= 4.11.0, < 4.14.6`

## Remediation

Upgrade past the affected range:

- `wazuh 4.14.6`
