ZooKeeper Log Injection via add_auth (3.8.03.8.6, 3.9.03.9.5)
CVE-2026-84501 Published on September 16, 2026

Apache ZooKeeper: Operational log forgery via newline injection in EnsembleAuthenticationProvider
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.

Vendor Advisory NVD

Vulnerability Analysis

CVE-2026-84501 can be exploited with network access, and does not require authorization privileges or user interaction. This vulnerability is considered to have a low attack complexity. The potential impact of an exploit of this vulnerability is considered to have no impact on confidentiality, with no impact on integrity, and no impact on availability.

Attack Vector:
NETWORK
Attack Complexity:
LOW
Privileges Required:
NONE
User Interaction:
NONE
Scope:
UNCHANGED
Confidentiality Impact:
NONE
Integrity Impact:
LOW
Availability Impact:
NONE

Weakness Type

Improper Output Neutralization for Logs

The software does not neutralize or incorrectly neutralizes output that is written to logs.


Products Associated with CVE-2026-84501

stack.watch emails you whenever new vulnerabilities are published in Apache Zookeeper or Oracle. Just hit a watch button to start following.

 
 

Affected Versions

Apache Software Foundation Apache ZooKeeper: