Apache Kafka JWT Bypass CVE-2026-110985 Among 12 Fixed Flaws

Apache Kafka fixed 12 vulnerabilities, including CVE-2026-110985, a JWT validation bypass that lets unauthenticated attackers forge tokens for any user.
Table of Contents
    Add a header to begin generating the table of contents

    The Apache Kafka project has fixed 12 vulnerabilities, led by CVE-2026-110985, a flaw that lets an unauthenticated attacker forge a login token for any user, including superusers, on brokers configured in a particular way. The project reports no exploitation, but the bug could hand an attacker access to the entire data stream of an affected cluster.

    How CVE-2026-110985 Lets Attackers Forge Kafka Login Tokens

    The bug affects brokers that use SASL/OAUTHBEARER authentication without a JWKS endpoint URL. In that configuration the broker silently falls back to a validator that skips JWT signature verification. An unauthenticated attacker can then forge a token for any user, with superusers included, and the broker will accept it.

    Related flaw CVE-2026-110952 involves the same area of token validation: issuer and audience checks are skipped unless they have been explicitly configured.

    Twelve Fixes Across Three Kafka Release Lines

    Of the 12 flaws, six are rated Important, three Moderate and three Low. The fixes ship in Kafka 4.2.2, 4.3.2 and 4.4.0. The affected versions are Kafka before 4.2.2 and 4.3.x before 4.3.2. Two of the fixes also require new configuration settings, so upgrading alone is not enough in those cases. Users on 4.1.x or older have to move to a supported branch.

    File Reads and Plaintext Secrets: CVE-2026-112375 and CVE-2026-116593

    CVE-2026-112375 lets an authenticated user with no grants read broker files and environment variables. It bypasses the allowlist introduced to address the earlier CVE-2024-31141. CVE-2026-116593 is a Kafka Connect problem: anyone who can reach a validation endpoint can read hidden configuration values in plaintext, which exposes values that operators expected to stay masked.

    Memory Exhaustion and Controller Crashes in the Same Release

    Five of the bugs allow memory exhaustion. In one of them, CVE-2026-114349, a compressed request of roughly 90 bytes can trigger a 2 GiB allocation. Other flaws stall Kafka Streams threads or crash the KRaft controller, the component that manages cluster metadata. These are availability problems instead of data-access problems, but a crashed controller affects the whole cluster.

    Interim Restrictions for Teams That Cannot Upgrade Immediately

    Until an upgrade is possible, the project advises restricting Write access and limiting Connect REST endpoints to trusted clients. The extra configuration settings required by two of the fixes also need to be applied alongside the new versions.

    What the Kafka Authentication Fallback Reveals About Secure Defaults

    The central problem in CVE-2026-110985 is not an exotic memory bug but a fallback: when one setting is missing, the system quietly selects a weaker validator and keeps running. Because the broker does not warn that signature checking has been dropped, an operator who forgot the JWKS URL would have no sign that tokens were being accepted unverified. A secure-by-default design would normally refuse to start in that state.

    The scale of the exposure explains why a bug without reported exploitation still draws attention. Kafka sits at the center of data pipelines, so a forged superuser token reaches every topic the cluster carries. The memory exhaustion flaws add a separate concern for operators who run brokers where untrusted clients can connect.

    The patch release pattern also matters for planning. With fixes spread across 4.2.2, 4.3.2 and 4.4.0, organizations on older 4.1.x branches have no in-place patch and must plan a version migration. That is a heavier lift than a point update and is the likeliest reason some clusters will stay exposed after the advisory.

    The other flaws in the batch are less dramatic individually but cover the full range of the platform. CVE-2026-112375 matters for multi-tenant clusters, where an authenticated user with no grants should not be able to read broker files or environment variables that may hold secrets. CVE-2026-116593 matters for Kafka Connect deployments, where configuration values are hidden for a reason. Together with the token forgery bug, they show weaknesses in authentication, authorization and secret handling in a single release.

    Related Posts