bit-zookeeper-2026-84501

bitnami_vulndb
Description

An unauthenticated attacker can inject arbitrary fake log lines into Apache ZooKeeper's operational log by sending a crafted add_auth("ensemble", ...) request containing newline characters (\n). When the ensemble name doesn't match, EnsembleAuthenticationProvider.handleAuthentication() logs the raw, unsanitized name via LOG.warn(). Because SLF4J's {} placeholder preserves embedded newlines, the attacker can forge complete log entries — with arbitrary timestamps, log levels, class names, and messages — that are visually indistinguishable from genuine ZooKeeper log output. This issue affects Apache ZooKeeper: from 3.9.0 through 3.9.5, from 3.8.0 through 3.8.6. Users are recommended to upgrade to version 3.8.7 or 3.9.6, which fixes the issue.

Timeline
Published
unknown
Last Modified
unknown
CVSS Details

CVSS details not available.

Affected Products

No product information available.

References
Linked Vulnerabilities

No linked vulnerabilities found.

{
  "affected": [
    {
      "package": {
        "ecosystem": "Bitnami",
        "name": "zookeeper",
        "purl": "pkg:bitnami/zookeeper"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "3.8.0"
            },
            {
              "fixed": "3.8.7"
            },
            {
              "introduced": "3.9.0"
            },
            {
              "fixed": "3.9.6"
            }
          ],
          "type": "SEMVER"
        }
      ],
      "severity": [
        {
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N",
          "type": "CVSS_V3"
        }
      ]
    }
  ],
  "aliases": [
    "CVE-2026-84501"
  ],
  "database_specific": {
    "cpes": [
      "cpe:2.3:a:apache:zookeeper:*:*:*:*:*:*:*:*"
    ],
    "severity": "Medium"
  },
  "details": "An unauthenticated attacker can inject arbitrary fake log lines into Apache ZooKeeper's operational log by sending a crafted add_auth(\"ensemble\", ...) request containing newline characters (\\n). When the ensemble name doesn't match, EnsembleAuthenticationProvider.handleAuthentication() logs the raw, unsanitized name via LOG.warn(). Because SLF4J's {} placeholder preserves embedded newlines, the attacker can forge complete log entries — with arbitrary timestamps, log levels, class names, and messages — that are visually indistinguishable from genuine ZooKeeper log output.\n\nThis issue affects Apache ZooKeeper: from 3.9.0 through 3.9.5, from 3.8.0 through 3.8.6.\n\nUsers are recommended to upgrade to version 3.8.7 or 3.9.6, which fixes the issue.",
  "id": "BIT-zookeeper-2026-84501",
  "modified": "2026-09-19T09:02:05.474Z",
  "published": "2026-09-19T08:51:30.697Z",
  "references": [
    {
      "type": "DISCUSSION",
      "url": "http://www.openwall.com/lists/oss-security/2026/09/15/7"
    },
    {
      "type": "ADVISORY",
      "url": "https://lists.apache.org/thread/ohby1g6zjt72p0w79rhbr41nczzvr33y"
    },
    {
      "type": "WEB",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-84501"
    }
  ],
  "schema_version": "1.6.2",
  "summary": "Apache ZooKeeper: Operational log forgery via newline injection in EnsembleAuthenticationProvider"
}
View JSON API Download JSON