CVE-2025-27818

Severity CVSS v4.0:
Pending analysis
Type:
CWE-502 Deserialization of Untrusted Dat
Publication date:
10/06/2025
Last modified:
11/07/2025

Description

A possible security vulnerability has been identified in Apache Kafka.<br /> This requires access to a alterConfig to the cluster resource, or Kafka Connect worker, and the ability to create/modify connectors on it with an arbitrary Kafka client SASL JAAS config<br /> and a SASL-based security protocol, which has been possible on Kafka clusters since Apache Kafka 2.0.0 (Kafka Connect 2.3.0).<br /> When configuring the broker via config file or AlterConfig command, or connector via the Kafka Kafka Connect REST API, an authenticated operator can set the `sasl.jaas.config`<br /> property for any of the connector&amp;#39;s Kafka clients to "com.sun.security.auth.module.LdapLoginModule", which can be done via the<br /> `producer.override.sasl.jaas.config`, `consumer.override.sasl.jaas.config`, or `admin.override.sasl.jaas.config` properties.<br /> This will allow the server to connect to the attacker&amp;#39;s LDAP server<br /> and deserialize the LDAP response, which the attacker can use to execute java deserialization gadget chains on the Kafka connect server.<br /> Attacker can cause unrestricted deserialization of untrusted data (or) RCE vulnerability when there are gadgets in the classpath.<br /> <br /> Since Apache Kafka 3.0.0, users are allowed to specify these properties in connector configurations for Kafka Connect clusters running with out-of-the-box<br /> configurations. Before Apache Kafka 3.0.0, users may not specify these properties unless the Kafka Connect cluster has been reconfigured with a connector<br /> client override policy that permits them.<br /> <br /> Since Apache Kafka 3.9.1/4.0.0, we have added a system property ("-Dorg.apache.kafka.disallowed.login.modules") to disable the problematic login modules usage<br /> in SASL JAAS configuration. Also by default "com.sun.security.auth.module.JndiLoginModule,com.sun.security.auth.module.LdapLoginModule" are disabled in Apache Kafka Connect 3.9.1/4.0.0. <br /> <br /> We advise the Kafka users to validate connector configurations and only allow trusted LDAP configurations. Also examine connector dependencies for <br /> vulnerable versions and either upgrade their connectors, upgrading that specific dependency, or removing the connectors as options for remediation. Finally,<br /> in addition to leveraging the "org.apache.kafka.disallowed.login.modules" system property, Kafka Connect users can also implement their own connector<br /> client config override policy, which can be used to control which Kafka client properties can be overridden directly in a connector config and which cannot.

Vulnerable products and versions

CPE From Up to
cpe:2.3:a:apache:kafka:*:*:*:*:*:*:*:* 2.3.0 (including) 3.9.1 (excluding)