Apache Kafka Connect 模块 JNDI 注入(CVE-2023-25194)
系列简介:漏洞真实影响分析是墨菲安全实验室针对热点漏洞的分析系列文章,帮助企业开发者和安全从业者理清漏洞影响面、梳理真实影响场景,提升安全应急响应和漏洞治理工作效率。
漏洞概述
漏洞原理
bin/connect-standalone.sh启动,默认会在8083端口开启HTTP REST API服务,可对连接器(Connector)的配置进行操作。
sasl.jaas.config属性值设置为 com.sun.security.auth.module.JndiLoginModule(通过 producer.override.sasl.jaas.config, consumer.override.sasl.jaas.config或 admin.override.sasl.jaas.config属性进行配置)时,如果连接器连接到攻击者可控的 LDAP 服务器时容易受到反序列化攻击。
Aiven云数据平台攻击场景案例
database.history.producer.sasl.jaas.config设置客户端的 sasl.jaas.config属性,从而开启JNDI登录验证模块,并结合 user.provider.url属性通过LDAP服务实现注入,又通过Scala和CommonsCollections7作为gadget构造了利用链,最终实现代码执行。
风险场景
-
数据管道服务(数据迁移、同步)
-
Kafka相关的测试服务(用于对broker的测试)
-
攻击者可以控制连接器(Connector)的配置
-
Kafka服务能够访问攻击者控制的LDAP服务(通常需要能访问互联网)
-
基于远程LDAP引用注入需要java版本小于11.0.1、8u191、7u201、6u211,本地则需要其classpath中加载了可以用于构造利用链的类
参考链接
-
https://www.oscs1024.com/hd/MPS-2023-3834
-
https://hackerone.com/reports/1529790
-
https://kafka.apache.org/documentation.html#connect
-
https://github.com/apache/kafka/commit/ae22ec1a0ea005664439c3f45111aa34390ecaa1
免费代码检测/情报预警
墨菲安全是一家为您提供专业的软件供应链安全管理的科技公司,能力包括代码安全检测、开源组件许可证合规管理、云原生容器安全检测、软件成分分析(SCA)等,丰富的安全工具助您打造完备的软件开发安全能力(DevSecOps)。
旗下安全研究团队墨菲安全实验室,专注于软件供应链安全相关领域的技术研究,关注的方向包括:开源软件安全、程序分析、威胁情报分析、企业安全治理等。公司核心团队来自百度、华为等企业,拥有超过十年的企业安全建设、安全产品研发及安全攻防经验。
免费代码安全检测工具: https://www.murphysec.com/?src=osc
IDE插件说明文档:https://www.murphysec.com/docs/guides/scan-scene/ide-plugin.html
免费情报订阅: https://www.oscs1024.com/cm/?src=osc