Skip to main content

Wazuh CVE-2026-44255

| EUVDEUVD-2026-62558 MEDIUM
Observable Timing Discrepancy (CWE-208)
2026-08-19 GitHub_M
5.3
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify exposed Wazuh API endpoint
  2. Delivery
    Send auth requests with candidate username wordlist
  3. Exploit
    Measure response-time differentials per username
  4. Execution
    Classify valid vs. invalid accounts
  5. Persist
    Launch credential spray against confirmed usernames
  6. Impact
    Achieve authenticated access to Wazuh management console

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V6 - Authentication Timing attack prevention
Exploitation Conditions

The Wazuh REST API authentication endpoint must be reachable by the attacker - this is its intended network-accessible deployment mode, so no non-default configuration is required. The vulnerability triggers on any authentication attempt regardless of the password supplied; no account, session token, or special credential is needed. What limits exploitation is the quality of the attacker's username wordlist (only existing Wazuh-local user accounts are detectable; external LDAP or SSO identities may not be affected depending on the integration path) and network conditions (high-jitter or high-latency paths increase measurement noise, though the bcrypt signal remains dominant in most network environments). Deployments that restrict API access to internal or VPN-only networks reduce exposure significantly by eliminating unauthenticated remote reach.

Impact

The NVD CVSS 3.1 score of 5.3 Medium (AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N) accurately reflects the isolated impact of username enumeration - confidentiality is partially compromised, but integrity and availability are unaffected. The attack complexity is genuinely low because bcrypt's intentional slowness produces a signal roughly two to three orders of magnitude above typical network jitter, making the timing side-channel reliable even over the public internet. No CISA KEV entry exists, and no public proof-of-concept has been identified, keeping near-term exploitation risk moderate. However, this vulnerability serves as a force-multiplier for credential attacks: an adversary who maps all valid Wazuh operator accounts can tightly focus brute-force or password-spray attempts, dramatically reducing lockout risk and increasing attack efficiency. Wazuh deployments that expose the API to the internet or to untrusted internal segments carry measurably higher real-world risk than air-gapped or VPN-restricted deployments. The EPSS signal is not provided, so exploitation probability cannot be quantified from available data.

Exploit ScenarioDerived

An attacker with network access to the Wazuh API sends a series of POST authentication requests - first with known-invalid random strings as usernames, establishing a baseline response-time distribution, then with common admin usernames ('admin', 'wazuh', 'wazuh-wui', operator names from LinkedIn or job postings). Requests for valid usernames consistently return 100-300 ms later due to bcrypt computation, while invalid usernames return in under 5 ms. After identifying valid accounts, the attacker launches a targeted password-spray campaign using common or breached credentials against only the confirmed usernames. No exploit code is required - standard HTTP timing tooling such as curl with response-time measurement or dedicated timing-attack frameworks suffices.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.5% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 19, 2026

Username enumeration via observable timing discrepancy in Wazuh's authentication layer exposes valid account names to unauthenticated remote attackers across all 4.x deployments from 4.0.0 and the 5.0.0-beta1 pre-release. The root cause is an asymmetric code path in AuthenticationManager.check_user() - nonexistent usernames return immediately while valid usernames trigger an expensive bcrypt hash computation, creating a reliably measurable latency gap of roughly 100-300 ms versus sub-millisecond response. No public exploit code or active exploitation (CISA KEV) has been identified at time of analysis, but the primitive reliably enables targeted credential-stuffing or brute-force follow-on attacks.

RemediationAI

The primary fix is upgrading to Wazuh 4.14.6 (stable) or 5.0.0-beta2 (pre-release), both confirmed patched per the vendor security advisory at https://github.com/wazuh/wazuh/security/advisories/GHSA-3978-44q9-9px9 and release tags at https://github.com/wazuh/wazuh/releases/tag/v4.14.6 and https://github.com/wazuh/wazuh/releases/tag/v5.0.0-beta2. For deployments that cannot patch immediately, restrict network access to the Wazuh API and dashboard to trusted management networks or VPN endpoints only - this prevents unauthenticated remote attackers from performing timing measurements entirely, though it does not fix the root code defect. Additionally, enforcing rate-limiting and request-throttling on the authentication endpoint increases the time required to enumerate a meaningful number of usernames, raising attacker cost without eliminating the risk. Enabling account lockout or progressive delay policies also increases friction, but note that aggressive lockout settings may create a secondary denial-of-service risk against legitimate operators.

Affected VersionsENISA

wazuh 5.0.0-beta1, < 5.0.0-beta2
wazuh 4.0.0, < 4.14.6

Affected Packages

euvd wazuh_4_0_0 fix: 4.14.6
euvd wazuh_5_0_0_beta1 fix: 5.0.0-beta2

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

Wazuh (cpe:2.3:a:wazuh:wazuh:*:*:*:*:*:*:*:*) is an open-source SIEM/XDR platform; its RBAC authentication is implemented in framework/wazuh/rbac/orm.py. The vulnerable function check_user() performs a database lookup for the supplied username first, and only calls check_password_hash() - a bcrypt operation - when a matching record is found. Bcrypt is deliberately slow (cost factor tuned for resistance to offline cracking), which creates a timing differential of several hundred milliseconds between the 'user exists' and 'user not found' code paths. CWE-208 (Observable Timing Discrepancy) directly characterises this pattern: the system inadvertently leaks a boolean secret (username validity) through wall-clock response time rather than through explicit disclosure. The fix should introduce a dummy constant-time bcrypt call for the nonexistent-username path to equalise latency; the provided PR #35757 diff addresses a separate sort_casting injection risk in results.py and does not show the orm.py timing fix directly.

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

Vendor (GitHub_M) PRIMARY 5.3 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
vuln.today AI 5.3 MEDIUM

Network-reachable with no prerequisites; bcrypt latency gap is large enough that AC:L applies; only username existence is leaked, so C:L; no integrity or availability impact.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
None
Availability
None

Lifecycle Timeline

1
Patch available
Aug 19, 2026 - 17:02 EUVD

DescriptionCVE.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, AuthenticationManager.check_user() in framework/wazuh/rbac/orm.py performs check_password_hash() only when the supplied username exists. A nonexistent username returns immediately, while a valid username causes an expensive bcrypt calculation. An unauthenticated remote attacker can compare authentication response times to enumerate valid Wazuh usernames and use that information in subsequent credential attacks. This issue is fixed in versions 4.14.6 and 5.0.0-beta2.

Threat Intelligence Overview

EPSS Score
0.5%
Top 62% exploitable
Prevalence
Medium
popular open-source SIEM/XDR, widely adopted but not universally deployed
Data Quality
6 sources
Confidence: High

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.5%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact· derived
Medium

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Wazuh

View all
CVE-2025-24016 CRITICAL POC
9.9 Feb 10

Wazuh SIEM platform versions 4.4.0 through 4.9.0 contain an unsafe deserialization vulnerability in the DistributedAPI t

CVE-2021-44079 CRITICAL POC
9.8 Nov 22

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

CVE-2026-48024 CRITICAL POC
9.1 Aug 19

Path-traversal-driven root code execution affects the Wazuh security platform's cluster synchronization layer in version

CVE-2026-48162 CRITICAL POC
9.1 Aug 19

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

CVE-2026-61800 CRITICAL POC
9.1 Aug 27

Arbitrary file write leading to root remote code execution affects Wazuh worker nodes in clustered deployments running v

CVE-2026-25769 CRITICAL POC
9.1 Mar 17

A critical deserialization vulnerability in Wazuh's cluster mode allows attackers with access to any worker node to achi

CVE-2025-30201 CRITICAL POC
9.1 Nov 21

Wazuh Agent before 4.13.0 on Windows can be made by an authenticated, high-privileged configuration writer to open attac

CVE-2026-44901 HIGH POC
8.4 Aug 19

Remote code execution on the Wazuh cluster master node is achievable by any attacker who controls a cluster worker node,

CVE-2026-54083 HIGH POC
8.1 Aug 27

Path traversal in Wazuh's ip-customblock active response script allows low-privileged remote attackers to create or dele

CVE-2018-19666 HIGH POC
7.8 Nov 29

The agent in OSSEC through 3.1.0 on Windows allows local users to gain NT AUTHORITY\SYSTEM access via Directory Traversa

CVE-2026-44252 HIGH POC
7.7 Aug 19

Cluster key disclosure in Wazuh Manager versions 4.0.0 through 4.14.4 enables a two-stage privilege escalation: a low-pr

CVE-2026-71540 HIGH POC
7.5 Sep 24

Unauthenticated remote denial of service in the Wazuh cluster daemon (wazuh-clusterd) allows a network peer to exhaust p

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy