☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
Wazuh logo [ WEBSITE ] [ VENDOR STATS ]
CVSS: 6.5 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N 🐛 CWE-200
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2026-61783

CVE-2026-61783 Vulnerability in Wazuh
📅 PUBLISHED: 2026-08-28 00:00 UTC 🔄 UPDATED: 2026-09-26 06:14 UTC
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.24%
👁️
0.24% probability
6.0× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1552
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: United States License: Open Source
Affected: 4.14.0 - 4.14.6 — upgrade to patched release
CVSS VECTOR BREAKDOWN 6.5
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: L Privileges Required Low
UI: N User Interaction None
S: U Scope Unchanged
C: H Confidentiality High
I: N Integrity None
A: N Availability None
6.5
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2026-61783 is an authenticated information disclosure flaw in Wazuh (open-source XDR/SIEM platform) affecting versions 4.14.0 through 4.14.6. A flawed RBAC masking gate causes the mask_sensitive_config() decorator to skip redaction whenever any manager:update_config or cluster:update_config rule exists — including an explicit deny rule — allowing a low-privilege user to retrieve the plaintext cluster.key from ossec.conf. Successful exploitation discloses the cluster secret, enabling potential cluster impersonation, node enrollment, and lateral movement within the Wazuh deployment.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Technical Analysis

The vulnerability resides in Wazuh's configuration-read endpoint and its interaction with the RBAC permission model. The mask_sensitive_config() decorator is designed to redact sensitive fields (such as cluster.key) from configuration responses for users lacking update permissions. However, the internal gate _has_update_permissions() determines "update capability" solely by the existence of a matching RBAC rule (manager:update_config or cluster:update_config), without evaluating whether that rule's effect is allow or deny.

This is a logic inversion in the permission model. In a correctly implemented RBAC system, a deny rule should reduce privileges. Here, the presence of a deny rule is treated as evidence of update capability, which flips masking off. Because deny rules are stored as real entries in the RBAC configuration, an administrator who hardens a read-only account by explicitly denying config edits inadvertently grants that account the ability to view unmasked configuration.

The attack surface is the authenticated configuration-read endpoint. A single authenticated GET request to that endpoint with the parameter raw=true returns the verbatim ossec.conf XML. When masking is disabled, the response includes cluster.key in cleartext. An otherwise identical account without the deny rule receives the masked value — demonstrating that the flaw is triggered specifically by the presence of a deny-based RBAC rule.

Key characteristics:

  • Attack vector: Network (AV:N)
  • Privileges required: Low, authenticated (PR:L)
  • User interaction: None (UI:N)
  • Scope: Unchanged (S:U)
  • Confidentiality impact: High (C:H) — direct secret disclosure
  • Integrity/Availability: None (I:N/A:N)

The root weakness is classified CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor), arising from improper authorization logic (effect not evaluated) rather than a cryptographic or memory-safety flaw.

Exploitation Scenarios

No public PoC is confirmed in the supplied dataset; the attack chain below is derived strictly from the NVD description and the vulnerability class.

  1. Reconnaissance / Target Identification. An attacker obtains valid low-privilege credentials for the Wazuh manager (e.g., a read-only operator account). The attacker identifies that the account is subject to an explicit RBAC deny rule for manager:update_config or cluster:update_config — a common hardening pattern. The Wazuh API/config endpoint is reachable over the network (AV:N).

  2. Triggering the Flaw. The attacker issues a single authenticated GET request to the configuration endpoint and appends raw=true. Because a manager:update_config or cluster:update_config rule exists for the account (regardless of allow/deny effect), _has_update_permissions() returns true, the mask_sensitive_config() decorator is bypassed, and the response returns the full ossec.conf XML rather than a redacted version.

  3. Payload / Execution (class level). No code execution is required. The "payload" is the raw=true query parameter. The distinction between this account and a non-deny-hardened account is observable: the deny-rule account sees cluster.key in plaintext; the control account sees a masked value. No injection, memory corruption, or complex payload is involved — the exploit is a pure authorization-logic bypass.

  4. Post-Exploitation Impact. With the cleartext cluster.key in hand, an attacker obtains the shared secret used by the Wazuh cluster for inter-node authentication. This can enable cluster impersonation, unauthorized node enrollment, or manipulation of cluster communications, depending on how the key is consumed. The disclosed key also remains valid until rotated, giving persistence.

Impact Assessment

The CVSS v3.1 base score is 6.5 (Medium): AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N. The high confidentiality subscore reflects direct exposure of a cluster secret. There is no integrity or availability impact — the flaw does not permit config modification or service disruption.

Business impact centers on secret compromise rather than direct system takeover. Wazuh is typically deployed as a security control plane across endpoints and cloud workloads; the cluster.key underpins trust between manager nodes. Leakage of this key undermines the integrity of the security infrastructure itself, potentially allowing an adversary to spoof or intercept cluster communications, enroll rogue nodes, or pivot laterally within the security stack. Blast radius is the Wazuh cluster and any node trusting the shared secret; downstream impact scales with the number of monitored endpoints.

Because the exploit requires only low privileges and no user interaction, insiders, compromised service accounts, or attackers who have already obtained limited Wazuh API credentials can weaponize it. Organizations that enforce "explicit deny" RBAC hardening are paradoxically most exposed.

Detection Guidance

Sigma Rule

title: Wazuh Configuration Raw Read with Sensitive Masking Bypass (CVE-2026-61783)
id: 8f2c1b64-7a9d-4e21-9c3e-1b7a5e0d4c19
status: experimental
description: Detects authenticated GET requests to the Wazuh configuration endpoint using raw=true, which may indicate exploitation of the mask_sensitive_config bypass.
references:
  - https://nvd.nist.gov/vuln/detail/CVE-2026-61783
author: valtersit.com
date: 2026-01-01
logsource:
  category: webserver
  product: wazuh
detection:
  selection_method:
    cs-method: 'GET'
  selection_uri:
    cs-uri-query|contains:
      - 'raw=true'
  selection_path:
    cs-uri-stem|contains:
      - '/manager/configuration'
      - '/cluster/configuration'
  condition: selection_method and selection_uri and selection_path
falsepositives:
  - Legitimate administrative configuration exports by highly privileged users
level: medium
tags:
  - attack.t1552
  - cve.2026.61783

YARA Rule

rule Wazuh_ClusterKey_Exfil_CVE_2026_61783
{
    meta:
        author = "valtersit.com"
        description = "Detects exposure or staging of Wazuh cluster.key material in cleartext responses or logs"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-61783"
        date = "2026-01-01"
    strings:
        $a = "cluster.key" ascii nocase
        $b = "<cluster>" ascii nocase
        $c = "ossec.conf" ascii nocase
        $d = "raw=true" ascii nocase
        $e = "mask_sensitive_config" ascii nocase
    condition:
        uint16(0) == 0x3C3F or
        (any of ($a, $b) and any of ($c, $d, $e))
}

Suricata IDS Rule

alert http any any -> any any (msg:"CVE-2026-61783 Wazuh Config Raw Read Masking Bypass Attempt"; flow:established,to_server; http.method; content:"GET"; http.uri; content:"raw=true"; nocase; http.uri; content:"configuration"; nocase; reference:cve,2026-61783; classtype:attempted-recon; sid:202661783; rev:1;)

Elastic Detection

sequence by user.name with maxspan=1m
  [ http where http.request.method == "GET" and
      http.request.uri : "*raw=true*" and
      http.request.uri : "*configuration*" ]

Splunk SPL Query

index=wazuh OR index=web
| search method=GET uri="*configuration*" uri="*raw=true*"
| stats count min(_time) as first_seen max(_time) as last_seen by src_ip, user, uri
| where count >= 1
| table first_seen, last_seen, src_ip, user, uri, count

Wazuh OSSEC Rule

<group name="wazuh,cve-2026-61783,">
  <rule id="100861" level="10">
    <decoded_as>json</decoded_as>
    <field name="method">GET</field>
    <field name="uri" type="pcre2">(?i)configuration.*raw=true</field>
    <description>CVE-2026-61783: Possible Wazuh config masking bypass - raw configuration read attempt</description>
    <mitre>
      <id>T1552</id>
    </mitre>
  </rule>
</group>

Mitigation & Patch Guidance

Patch confidence: 3/4 (LIKELY — 2 independent sources confirm fix).

  1. Immediate Mitigations. Restrict network access to the Wazuh API/configuration endpoint to trusted management networks. Audit RBAC rules and, where possible, avoid relying solely on explicit deny rules for hardening read-only accounts — until patched, those accounts are the ones that trigger the masking bypass. Rotate the exposed cluster.key if any low-privilege or deny-hardened account may have been compromised, and monitor for raw=true configuration reads.

  2. Patch / Upgrade Steps. Upgrade Wazuh to 4.14.7, which corrects the logic so that rule effect (allow vs. deny) is properly evaluated before disabling masking. After upgrading, verify that deny-hardened accounts once again receive masked configuration responses. Follow the vendor upgrade sequence for manager and cluster nodes, and re-validate RBAC behavior post-upgrade.

  3. Long-Term Hardening. Move from query-string masking to a default-deny response model where sensitive fields are never serialized unless an explicit allow is present. Add unit/integration tests that assert masking is applied for deny-only accounts. Enforce least privilege across all Wazuh RBAC roles, centralize secret rotation, and monitor configuration-endpoint access as a security-relevant event. Align with CWE-200 remediation practices: minimize secret exposure surfaces and treat the RBAC effect model as security-critical logic.

References

Exploit-in-the-wild / campaign note: CISA KEV status is NO. EPSS is 0.00239 (15.2nd percentile), indicating low predicted exploitation likelihood at report time. No public exploit code is confirmed in the provided dataset (PoC marked Public at the intelligence level, but no Nuclei template or exploit code confirmed). No known threat actor campaigns are associated with this CVE based on available data.

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-61783/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.