CVE-2026-100302: Apache ZooKeeper: Denial of service through unbounded memory allocation in multiRead request handling

Published Nov 3, 2026
·
Updated

Allocation of Resources Without Limits or Throttling in the multiRead request handler of Apache ZooKeeper allows a remote attacker to crash the server (denial of service) with a single small request.

The multiRead handler places no limit on the number of bundled read operations or on the cumulative size of the response it builds in memory. Because each operation's result is fully materialized and retained before serialization, a request that is small on the wire — within the jute.maxbuffer limit — but that references a large znode many times can force the server to allocate far more heap than the request size implies, exhausting the JVM heap and terminating the server with an OutOfMemoryError. Neither jute.maxbuffer nor largeRequestMaxBytes prevents this, as both bound only the inbound request, not the response.

This issue affects Apache ZooKeeper from 3.7.0 through 3.9.6. Users are recommended to upgrade to version 3.9.7, which enforces configurable limits on the multiRead operation count and cumulative response size.

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade Apache ZooKeeper to a version that resolves this vulnerability.

    Fixed in 3.9.7

Event History

Nov 4, 2026
CVE Published
via MITRE·10:46 AM
Data Sourced
via MITRE·10:46 AM
DescriptionWeakness
Data Sourced
via NVD·11:17 AM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Who can exploit this issue?

A remote attacker with low privileges can exploit it by sending a crafted multiRead request. No user interaction is required.

2

Are default inbound request-size limits sufficient to prevent exploitation?

No. jute.maxbuffer and largeRequestMaxBytes limit only the inbound request size; a small request can still cause a much larger in-memory response by repeatedly referencing a large znode.

3

Which deployments are affected?

Apache ZooKeeper versions 3.7.0 through 3.9.6 are affected. Version 3.9.7 adds configurable limits for multiRead operation count and cumulative response size.

4

What is the impact if exploitation succeeds?

The multiRead handler can exhaust the JVM heap, causing an OutOfMemoryError and terminating the ZooKeeper server. The impact is denial of service.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203