近日,飓风安全监测到Apache官方发布了安全公告,修复了Apache Kafka Connect的一个远程代码执行漏洞(CVE-2023-25194)。该漏洞允许攻击者访问Kafka Connect worker,并能够使用任意Kafka客户端SASL JAAS配置和基于SASL的安全协议在其上创建/修改连接器,来实现远程代码执行。目前官方已发布安全版本,建议受影响的用户尽快采取安全措施。
Kafka Connect是一种用于在Apache Kafka 和其他系统之间可伸缩的方式可靠地流式传输数据的工具,它可以通过定义Connectors来使得向Kafka 中移动大量数据或者从Kafka中导出大量数据变得更加简单。
Kafka Connect可以读取数据数据库中的数据或者应用程序服务器的日志数据,并将其导入到指定的Topic中,可以使得对这些数据做低延迟的流式处理。导出数据的Job可以Kafka 的Topic中的数据递送到辅助存储系统、查询系统或批处理系统中,以便进行脱机处理。Apache Kafka Connect反序列化远程代码执行漏洞(CVE-2023-25194)在Apache Kafka Connect中发现了一个安全漏洞。这需要访问Kafka Connect应用程序,并能够使用任意Kafka客户端SASL JAAS配置和基于SASL的安全协议在其上创建/修改连接器,这在自Apache Kafka 2.3.0以来的Kafka连接集群上是存在的。通过Kafka Connect REST API配置连接器时,经过身份验证的操作员可以将连接器的任何Kafka客户端的sasl.jaas.config属性设置为“com.sun.security.auth.module.JndiLoginModule”,这可通过producer.override.sasl.jaas.config,consumer.overrie.sasl.jax.config,admin.overrite.sasl.jaas.configneneneba属性完成配置。这将允许服务器连接到攻击者的LDAP服务器并响应反序列化LDAP的恶意代码,攻击者可以使用该响应在Kafka connect服务器上执行java反序列化工具利用链。当类路径中相关利用依赖存在时,攻击者可以导致不受信任的数据注入或反序列化RCE漏洞。 受影响版本:
2.3.0 <= Apache Kafka <= 3.3.2
安全版本:
Apache Kafka 3.4.0
1. 建议Kafka Connect用户验证连接器配置并且只允许受信任的JNDI配置。
2. 检查连接器易受攻击版本的依赖关系或者升级他们的连接器,升级该特定依赖项,并且删除低版本存在漏洞连接器。
目前该漏洞Apache Kafka官网已发布最新版本,请及时进行更新。
下载链接:
https://downloads.apache.org/kafka/3.4.0/kafka-3.4.0-src.tgz