Apache Kafka does not validate JWT tokens in its OAUTHBEARER authentication implementation
Critical severity
GitHub Reviewed
Published
Apr 20, 2026
to the GitHub Advisory Database
•
Updated Apr 24, 2026
Package
Affected versions
>= 4.1.0, < 4.1.2
Patched versions
4.1.2
Description
Published by the National Vulnerability Database
Apr 20, 2026
Published to the GitHub Advisory Database
Apr 20, 2026
Reviewed
Apr 24, 2026
Last updated
Apr 24, 2026
A security vulnerability has been identified in Apache Kafka. By default, the broker property
sasl.oauthbearer.jwt.validator.classis set toorg.apache.kafka.common.security.oauthbearer.DefaultJwtValidator. It accepts any JWT token without validating its signature, issuer, or audience. An attacker can generate a JWT token from any issuer with thepreferred_usernameset to any user, and the broker will accept it.Apache advises Kafka users using kafka v4.1.0 or v4.1.1 to set the config
sasl.oauthbearer.jwt.validator.classtoorg.apache.kafka.common.security.oauthbearer.BrokerJwtValidatorexplicitly to avoid this vulnerability. Since Kafka v4.1.2 and v4.2.0 and later, the issue is fixed and will correctly validate the JWT token.References