CVE-2023-25194
Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-502
Deserialización de datos no confiables
Fecha de publicación:
07/02/2023
Última modificación:
25/03/2025
Descripción
*** Pendiente de traducción *** A possible security vulnerability has been identified in Apache Kafka Connect API.<br />
This requires access to a 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 Connect clusters since Apache Kafka Connect 2.3.0.<br />
When configuring the connector via the Kafka Connect REST API, an authenticated operator can set the `sasl.jaas.config`<br />
property for any of the connector&#39;s Kafka clients to "com.sun.security.auth.module.JndiLoginModule", 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&#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.4.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" is disabled in Apache Kafka Connect 3.4.0. <br />
<br />
We advise the Kafka Connect users to validate connector configurations and only allow trusted JNDI 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.<br />
Impacto
Puntuación base 3.x
8.80
Gravedad 3.x
ALTA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:a:apache:kafka_connect:*:*:*:*:*:*:*:* | 2.3.0 (incluyendo) | 3.3.2 (incluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- http://packetstormsecurity.com/files/173151/Apache-Druid-JNDI-Injection-Remote-Code-Execution.html
- https://kafka.apache.org/cve-list
- https://lists.apache.org/thread/vy1c7fqcdqvq5grcqp6q5jyyb302khyz
- http://packetstormsecurity.com/files/173151/Apache-Druid-JNDI-Injection-Remote-Code-Execution.html
- https://kafka.apache.org/cve-list
- https://lists.apache.org/thread/vy1c7fqcdqvq5grcqp6q5jyyb302khyz



