{
  "affected": [
    {
      "ranges": [
        {
          "database_specific": {
            "cpe": "cpe:2.3:a:wazuh:wazuh:*:*:*:*:*:*:*:*",
            "extracted_events": [
              {
                "introduced": "4.8.0"
              },
              {
                "fixed": "4.14.4"
              }
            ],
            "source": [
              "AFFECTED_FIELD",
              "CPE_RANGE",
              "REFERENCES"
            ]
          },
          "events": [
            {
              "introduced": "038fe11d988fa54cca8a6c3101fc7906fad5da3b"
            },
            {
              "fixed": "5933ec9ebee76fb2546e5f7fc9f3a27d0aeca605"
            }
          ],
          "repo": "https://github.com/wazuh/wazuh",
          "type": "GIT"
        }
      ]
    }
  ],
  "aliases": [
    "GHSA-q9vv-7w4c-f4cm"
  ],
  "database_specific": {
    "cna_assigner": "GitHub_M",
    "cwe_ids": [
      "CWE-121",
      "CWE-400"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/28xxx/CVE-2026-28221.json"
  },
  "details": "Wazuh is a free and open source platform used for threat prevention, detection, and response. From version 4.8.0 to before version 4.14.4, a stack-based buffer overflow exists in print_hex_string() in wazuh-remoted. The bug is triggered when formatting attacker-controlled bytes using sprintf(dst_buf + 2*i, \"%.2x\", src_buf[i]) on platforms where char is treated as signed and the compiled code sign-extends bytes before the variadic call. For input bytes such as 0xFF, the formatting can emit \"ffffffff\" (8 chars) instead of \"ff\" (2 chars), causing an out-of-bounds write past a fixed 2049-byte stack buffer. The vulnerable path is reachable remotely prior to any agent authentication/registration logic via TCP/1514 when an oversized length prefix causes the “unexpected message (hex)” diagnostic path to run. Additionally, the same unauthenticated oversized-message diagnostic path logs an attacker-controlled hex dump to /var/ossec/logs/ossec.log for each trigger, allowing remote log amplification that can degrade monitoring fidelity and consume disk/I/O. This log amplification is reachable even without triggering the sign-extension overflow (e.g., using bytes \u003c 0x80). This issue has been patched in version 4.14.4.",
  "id": "CVE-2026-28221",
  "modified": "2026-07-08T05:36:11.366822127Z",
  "published": "2026-04-29T17:53:15.374Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/wazuh/wazuh/releases/tag/v4.14.4"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/28xxx/CVE-2026-28221.json"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/wazuh/wazuh/security/advisories/GHSA-q9vv-7w4c-f4cm"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-28221"
    }
  ],
  "schema_version": "1.7.5",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L",
      "type": "CVSS_V3"
    }
  ],
  "summary": "Wazuh: Pre-auth stack-based buffer overflow in wazuh-remoted print_hex_string() due to signed char promotion on x86_64"
}