修复 Apache Kafka 中的远程代码执行漏洞CVE-2023-25194

文章目录

  • 前言
  • 一、Log4Shell connection
  • 二、Disclosure
  • Updates, mitigations


前言

Possible RCE and denial-of-service issue discovered in Kafka Connect

在 Kafka Connect 中发现可能的 RCE 和拒绝服务问题。

更新 阿帕奇软件基金会 (ASF) 已解决了一个漏洞,该漏洞可被利用来使用 Kafka Connect 发起远程代码执行 (RCE) 攻击。

该关键漏洞于 2 月 8 日公布,被追踪为 CVE-2023-25194。Apache Kafka Connect 是 Apache Kafka 的一个免费开源组件,是系统、数据库和键值存储之间数据集成的中心枢纽。

ASF 声称,超过 80% 的财富 100 强企业都在使用 Kafka 平台,包括每 10 家银行中的约 7 家。

UPDATED The Apache Software Foundation (ASF) has resolved a vulnerability that can be exploited to launch remote code execution (RCE) attacks using Kafka Connect.

Announced on February 8, the critical flaw is tracked as CVE-2023-25194. It was discovered in Apache Kafka Connect, a free, open source component of Apache Kafka that operates as a central hub for data integration between systems, databases, and key-value stores.

The ASF claims that more than 80% of Fortune 100 organizations use the Kafka platform, including approximately seven out of every 10 banks.

According to Apache’s mailing list note, the security flaw was discovered by bug bounty hunter Jari Jääskelä, who reported the issue via Aiven’s HackerOne bug bounty program and earned a $5,000 bug bounty reward.

根据阿帕奇邮件列表说明,该安全漏洞是由漏洞赏金猎人Jari Jääskelä发现的,他通过Aiven的HackerOne漏洞赏金计划报告了该问题,并获得了5000美元的漏洞赏金奖励。

The vulnerability can only be triggered when there is access to a Kafka Connect worker – a logical work unit component – and the user can create or modify worker connectors with an arbitrary Kafka client SASL JAAS config and a SASL-based security protocol.

只有在访问 Kafka Connect Worker(逻辑工作单元组件),并且用户可以使用任意 Kafka 客户端 SASL JAAS 配置和基于 SASL 的安全协议创建或修改 Worker 连接器时,才会触发该漏洞。

在这里插入图片描述

https://nvd.nist.gov/vuln/detail/CVE-2023-25194

https://kafka.apache.org/cve-list


提示:以下是本篇文章正文内容,下面案例可供参考

一、Log4Shell connection

The vulnerability involves the Lightweight Directory Access Protocol (LDAP) and Java Naming and Directory Interface (JNDI) endpoints, as was the case with ‘Log4Shell’, the landmark vulnerability discovered in ubiquitous Java logging library Apache Log4j in 2021. JNDI is also involved in another, newly disclosed critical vulnerability in Apache Sling JCR Base.

该漏洞涉及轻量级目录访问协议(LDAP)和 Java 命名与目录接口(JNDI)端点,就像 2021 年在无处不在的 Java 日志库 Apache Log4j 中发现的标志性漏洞 "Log4Shell "一样。Apache Sling JCR Base 中新披露的另一个关键漏洞也涉及 JNDI。

With the Kafka bug, an authenticated attacker could configure a specific connector property via either the Aiven API or the Kafka Connect REST API, forcing a worker to connect to an attacker-controlled LDAP server.

“The server will connect to the attacker’s LDAP server and it deserializes the LDAP response, which the attacker can use to execute java deserialization gadget chains on the Kafka Connect server,” the advisory reads. “Attacker[s] can execute commands on the server and access other resources on the network.”

When each prerequisite exists, Apache says it would be possible to perform JNDI requests, potentially leading to the execution of remote code or denial-of-service attacks.

利用 Kafka 漏洞,经过身份验证的攻击者可以通过 Aiven API 或 Kafka Connect REST API 配置特定连接器属性,从而迫使 Worker 连接到攻击者控制的 LDAP 服务器。

"服务器将连接到攻击者的 LDAP 服务器,并对 LDAP 响应进行反序列化,攻击者可利用该响应在 Kafka Connect 服务器上执行 java 反序列化小工具链,"该公告写道。"攻击者可以在服务器上执行命令,并访问网络上的其他资源。

阿帕奇表示,当每个前提条件都存在时,就有可能执行 JNDI 请求,从而可能导致执行远程代码或拒绝服务攻击。

二、Disclosure

Josep Prat, open source engineering director at Aiven, said Aiven’s bug bounty program bolstered “the security posture of the overall open source ecosystem” as well as its own.

“The bounty program at Aiven applies to both proprietary software as well as any of the open source projects used by it,” he told The Daily Swig.

“Since running our bounty program in 2020, 25% of the reports are on open source projects, of which 80% are on projects not owned by Aiven but part of the our dependency chain, such as projects owned by the Apache Software Foundation.”

Prat said if bug reports are “deemed to affect upstream projects, we will reach out to the security team of the said project and report the possible vulnerability that was discovered.

“In this particular instance, though, the vulnerability was initially assessed to only impact Apache Kafka service providers (and not upstream) rather than being a deficiency of the project itself. Hence, in accordance with the process, Aiven accepted and the bounty was paid to the reporter.”

Prat said the issue was then promptly reported to the Kafka security team and resolved with the help of Aiven engineers.

Aiven公司开源工程总监Josep Prat说,Aiven公司的漏洞悬赏计划不仅增强了自身的实力,而且还 “加强了整个开源生态系统的安全态势”。

"他告诉《The Daily Swig》:"Aiven的漏洞悬赏计划既适用于专有软件,也适用于其使用的任何开源项目。

“自2020年启动我们的悬赏计划以来,25%的报告涉及开源项目,其中80%涉及非爱文所有但属于我们依赖链的项目,如阿帕奇软件基金会(Apache Software Foundation)所有的项目。”

Prat说,如果错误报告 “被认为会影响上游项目,我们将与上述项目的安全团队联系,并报告可能发现的漏洞”。

“不过,在这个特殊的例子中,漏洞最初被评估为只影响 Apache Kafka 服务提供商(而不是上游),而不是项目本身的缺陷。因此,按照流程,Aiven 接受并向报告者支付了赏金。”

Prat说,该问题随后被迅速报告给了Kafka安全团队,并在Aiven工程师的帮助下得到了解决。

Updates, mitigations

The report was first submitted to Aiven on April 4, 2022. Apache Kafka versions 2.3.0-3.3.2 were found to be impacted, and the vulnerability was fixed in version 3.4.0.

The ASF notes that since Kafka 3.0.0, users have been able to specify the connector configuration properties used in the attack chain. A new property has been added that disables problematic login module usage in the SASL JAAS configuration in version 3.4.0, alongside additional security measures.

该报告于2022年4月4日首次提交给Aiven。Apache Kafka的2.3.0-3.3.2版本被发现受到影响,该漏洞已在3.4.0版本中得到修复。

ASF 指出,自 Kafka 3.0.0 起,用户可以指定攻击链中使用的连接器配置属性。在 3.4.0 版中,除了额外的安全措施外,还添加了一个新属性,用于禁止在 SASL JAAS 配置中使用有问题的登录模块。

The ASF said: “We advise the Kafka Connect users to validate connector configurations and only allow trusted JNDI configurations. Also, examine connector dependencies for vulnerable versions and either upgrade their connectors, upgrading that specific dependency, or removing the connectors as options for remediation.”

Jääskelä also submitted a second critical vulnerability report concerning Apache Kafka in the same month.

The Aiven JDBC sink, including the SQLite JDBC driver, could be abused with an unprotected Jolokia bridge to execute RCE on Kafka Connect servers. The bug bounty hunter was awarded $5,000 for this report too, and the security issue has since been resolved.

ASF 说:“我们建议 Kafka Connect 用户验证连接器配置,只允许可信的 JNDI 配置。同时,检查连接器依赖的易受攻击版本,并将升级连接器、升级特定依赖或移除连接器作为补救选项。”

同月,Jääskelä 还提交了第二份有关 Apache Kafka 的重大漏洞报告。

包括 SQLite JDBC 驱动程序在内的 Aiven JDBC sink 可能会被未受保护的 Jolokia 桥滥用,从而在 Kafka Connect 服务器上执行 RCE。该漏洞赏金猎人也因这份报告获得了 5,000 美元的奖励,该安全问题后来也得到了解决。

We advise all Kafka users to promptly upgrade to a version of snappy-java (>=1.1.10.1) to mitigate this vulnerability. The latest version (1.1.10.1, as of July 5, 2023) of snappy-java is backward compatible with all affected versions of Kafka. The affected library jar for snappy-java should be replaced with this newer version.
This vulnerability allows any user who can produce data to the broker to exploit the vulnerability, potentially causing an Out-of-Memory (OOM) condition, leading to Denial-of-Service(DoS) on the Kafka broker. It could be exploited by sending a malicious payload in the record which is compressed using snappy. On receiving the record, the broker will try to de-compress the record to perform record validation and it will delegate decompression to snappy-java library. The vulnerability in the snappy-java library may cause allocation of an unexpected amount of heap memory, causing an OOM on the broker. Any configured quota will not be able to prevent this because a single record can exploit this vulnerability.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/184744.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【深度学习实验】图像处理(三):PIL——自定义图像数据增强操作(随机遮挡、擦除、线性混合)

文章目录 一、实验介绍二、实验环境1. 配置虚拟环境2. 库版本介绍 三、实验内容0. 导入必要的库1. PIL基础操作2. Cutout(遮挡)2.1 原理2.2 实现2.3 效果展示 3. Random Erasing(随机擦除)3.1 原理3.2 实现3.3 效果展示 4. Mixup&…

健身房服务预约会员管理系统小程序效果怎样

健身房是很多人锻炼的主要场所之一,各地城区都有大量品牌,主要以同城客户为主,具备较强的客户管理和门店运营属性 ,面对当今互联网环境,需要商家进一步管理赋能。 那么通过【雨科】平台搭建健身房管理系统能帮助商家实…

【raect.js + hooks】useRef 搭配 Houdini 创造 useRipple

水波纹点击特效 really cool,实现水波纹的方案也有很多,笔者经常使用 material 组件,非常喜欢 mui 中的 ripple,他家的 ripple 特效就是通过 css Houdini 实现的。 今天,我们将复刻一个 ripple,并封装成 ho…

淘宝商品详情数据接口(店铺搬家、数据分析、代购商城、ERP选品、无货源铺货、品牌监控)

使用淘宝API接口需要以下步骤: 注册开发者账号:在淘宝开放平台(https://o0b.cn/anzexi)上注册一个开发者账号,并创建一个应用。 获取API密钥:在应用页面上获取API密钥,这是后续调用API接口的凭…

Mendix组件推荐:灵活的在线表格

- 视频 mendix在线表格.mp4 20.95MB - 客户需求 如果你是一个中小型企业的负责人,你可能面临着: 多人协作录入数据展示数据库中的数据对数据安全有要求、希望本地离线部署并且IT人员配置有限等挑战 为了更好地管理你的业务数据,你需要一个…

如何防止网络被入侵?

随着互联网的普及,网络安全问题越来越受到人们的关注。其中,如何防止网络被入侵是一个重要的问题。本文将介绍一些防止网络被入侵的方法,帮助大家保护自己的网络安全。 一、使用强密码 强密码是防止网络被入侵的第一道防线。一个好的密码应该…

【brpc学习实践十二】bthread

概览 bthread(代码)是baidu-rpc使用的M:N线程库,是其稳定和高效的关键组件。能更好地利用多核cpu,能在pthread中运行,需要注意的是,bthread的work stealing机制会da让任务pthread发生切换,从而让thread_local变量不可信,通常在bthread_usleep或这join的时候就有可能发生…

Agent举例与应用

什么是Agent OpenAI 应用研究主管 Lilian Weng 在一篇长文中提出了 Agent LLM(大型语言模型)记忆规划技能工具使用这一概念,并详细解释了Agent的每个模块的功能。她对Agent未来的应用前景充满信心,但也表明到挑战无处不在。 现…

Linux RN6752 驱动编写

一、概述 关于 RN6752V1 这个芯片这里就不做介绍了,看到这篇笔记的小伙伴应该都明白,虽然说 RN6752V1 芯片是 AHD 信号的解码芯片,但是也可以把芯片当做是一个 YUV 信号的 MIPI 摄像头,所以驱动的编写和 MIPI 摄像头无太大的区别。…

虚拟机虚拟化原理

目录 什么是虚拟化广义虚拟化狭义虚拟化 虚拟化指令集敏感指令集虚拟化指令集的工作模式监视器对敏感指令的处理过程: 虚拟化类型全虚拟化类虚拟化硬件辅助虚拟化 虚拟化架构裸金属架构宿主机模式架构 什么是虚拟化 虚拟化就是通过模仿下层原有的功能模块创造接口来…

中国版的 GPTs:InsCode AI 生成应用

前言 在上一篇文章 《InsCode:这可能是下一代应用开发平台?》中,我们介绍了一个新的应用开发平台 InsCode,它是基于云原生开发环境 云 IDE AI 辅助编程的一站式在线开发平台。 最近,InsCode 又推出了另一种全新的开…

Python三十个常见的脚本汇总

1、冒泡排序 2、计算x的n次方的方法 3、计算a*a b*b c*c …… 4、计算阶乘 n! 5、列出当前目录下的所有文件和目录名 6、把一个list中所有的字符串变成小写: 7、输出某个路径下的所有文件和文件夹的路径 8、输出某个路径及其子目录下的所有文件路径 9、输出某个路…

深度学习毕设项目 医学大数据分析 - 心血管疾病分析

# 1 前言 🚩 基于大数据的心血管疾病分析 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分工作量:3分创新点:4分 1 课题背景 本项目的任务是利用患者的检查结果预测心血管疾病(CVD)的存在与否。 2 数据…

【开源视频联动物联网平台】流媒体传输协议HLS,FLV的功能和特点

HLS(HTTP Live Streaming)和FLV(Flash Video)都是用于视频流传输的协议或容器格式,但它们在某些方面有着显著的区别和特点。 HLS是一种由苹果公司开发的用于流媒体传输的协议,而FLV则是Adobe公司开发的用于…

【ArcGIS Pro二次开发】:CC工具箱1.1.4更新_免费_50+工具

CC工具箱1.1.4更新【2023.11.30】 使用环境要求:ArcGIS Pro 3.0 一、下载链接 工具安装文件及使用文档: https://pan.baidu.com/s/1OJmO6IPtMfX_vob3bMtvEg?pwduh5rhttps://pan.baidu.com/s/1OJmO6IPtMfX_vob3bMtvEg?pwduh5r 二、使用方法 1、在下…

从物理机到K8S:应用系统部署方式的演进及其影响

公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享。 概述 随着科技的进步,软件系统的部署架构也在不断演进,从以前传统的物理机到虚拟机、Docker和Kubernetes,我们经历了一系列变化。 这些技术的引入…

VBA技术资料MF88:测试Excel文件名是否有效

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。我的教程一共九套,分为初级、中级、高级三大部分。是对VBA的系统讲解,从简单的入门,到…

系列二十五、Spring设计模式之适配器模式

一、适配器模式 1.1、概述 适配器模式(Adapter Pattern)用于兼容不相关的接口之间,类似于一个桥梁,它结合了两个独立接口的功能,这种类型的设计属于结构型模式,为了方便大家伙的理解,我举个例子…

什么是美颜sdk?集成第三方美颜sdk的步骤

本文将深入探讨如何集成第三方美颜sdk,为直播平台引入更先进、更具吸引力的美颜特效。 第一步:选择合适的第三方美颜sdk 在开始集成美颜sdk之前,首要任务是选择适合自己直播平台需求的第三方美颜sdk。不同的sdk可能具有不同的特色和性能&a…

如何修改.exe文件的修改时间,亲测有效

💂 个人网站:【 海拥】【神级代码资源网站】【办公神器】🤟 基于Web端打造的:👉轻量化工具创作平台💅 想寻找共同学习交流的小伙伴,请点击【全栈技术交流群】 演示视频: 10秒钟实现将文件的修改…