出品|开源中国 作者|罗奇奇 本文旨在介绍 Log4shell 漏洞,并收集各组织/开源项目对该漏洞的响应,以让各大开发者对该漏洞的危害有所了解,避免更多损失。 Log4shell 漏洞背景说明 Apache Log4j2 是一个基于 Java 的日志记录工具。该工具重写了 Log4j 框架,并且引入了大量丰富的特性,被大量用于业务系统开发,用来记录日志信息。 CVE-2021-44228 远程控制漏洞(RCE)影响从 2.0-beta9 到 2.14.1 的 Log4j 版本。受影响的 Log4j 版本包含 Java 命名和目录接口 (JNDI) 功能,可以执行如消息查找替换等操作,攻击者可以通过向易受攻击的系统提交特制的请求,从而完全控制系统,远程执行任意代码,然后进行窃取信息、启动勒索软件或其他恶意活动。 Apache Log4j2 安全补丁更新过程 2021 年 12 月 11 日:发布 2.15.0 版本,对 JNDI 查询功能进行限制。但此版本的修复不完整,导致了第二个 Log4j 漏洞漏洞: CVE-2021-45046。 2021-12-13: 发布 2.16.0 版本,为了解决 CVE-2021-45046 漏洞, Log4j 2.16.0 直接禁用了 JDNI 功能。 官方通告 CVE-2021-44228(Log4j2 初始漏洞) Apache Log4j 2 2.0-beta9 到 2.12.1 和 2.13.0 到 2.15.0 版本的 JNDI 功能在配置、日志消息和参数中使用,无法防止攻击者控制的 LDAP 和其他 JNDI 相关端点。当启用消息查找替换时,控制日志消息或日志消息参数的攻击者可以执行从 LDAP 服务器加载的任意代码。从 log4j 2.15.0 开始,默认情况下已禁用此行为。从版本 2.16.0 开始,此功能已完全删除。请注意,此漏洞特定于 log4j-core,不会影响 log4net、log4cxx 或其他 Apache 日志服务项目。 CVE-2021-45046(Log4j 2.15.0 未完整修复的漏洞) Apache Log4j 2.15.0 中针对 CVE-2021-44228 的修复在某些非默认配置中不完整。当日志配置使用非默认模式布局和上下文查找(例如,${ctx:loginId})或线程上下文映射模式( %X、%mdc 或 %MDC)使用 JNDI 查找模式制作恶意输入数据,从而导致拒绝服务 (DOS) 攻击。默认情况下,Log4j 2.15.0 尽最大努力将 JNDI LDAP 查找限制为 localhost。Log4j 2.16.0 通过删除对消息查找模式的支持和默认禁用 JNDI 功能来修复此问题。 CVE-2021-4104(Log4j 1.2 版本问题) 当攻击者对 Log4j 配置具有写访问权限时,Log4j 1.2 中的 JMSAppender 容易受到不可信数据的反序列化。攻击者可以提供 TopicBindingName 和 TopicConnectionFactoryBindingName 配置,导致 JMSAppender 以类似于 CVE-2021-44228 的方式执行 JNDI 请求,从而导致远程代码执行。 注意, JMSAppender 不是 Log4j 的默认配置,因此此漏洞仅在特别配置为 JMSAppender 时才会影响 Log4j 1.2。事实上 Apache Log4j 1.2 已于 2015 年 8 月终止生命周期。用户应该升级到Log4j 2,因为它解决了以前版本的许多其他问题。 组织/开源项目的响应 已修复/更新: Metabase : v0.41.4 发布,解决 log4j2 漏洞问题 openEuler:欧拉开源社区 Log4j 高危安全漏洞修复完成 KubeSphere:Apache Log4j 2 远程代码执行最新漏洞的修复方案 MateCloud :4.2.8 正式版发布,修复 Log4j2 的安全漏洞 openLooKeng 开源社区: Apache Log4j2 高危安全漏洞修复完成 JPress 博客系统:发布新版,修复 Log4j 漏洞问题 Netty :4.1.72.Final 发布,更新 Log4j2 版本 Apache NiFi :1.5.1 紧急发布,修复 log4j2 相关问题 Jedis :3.7.1、4.0.0-rc2 发布,修复 Log4j 安全问题 Eurynome Cloud : v2.6.2.10 发布,修复 Apache Log4j2 安全问题 Jedis: 3.7.1、4.0.0-rc2 发布,修复 Log4j 安全问题 Apache Solr :发布漏洞影响情况和缓解措施 Minecraft :发布漏洞声明和缓解方案 Apache Flink :关于 Apache Log4j 零日 (CVE-2021-44228) 的建议 Apache Druid:建议所有用户升级到 Druid 0.22.1 OpenSearch:重要提示:更新到 OpenSearch 1.2.1 OpenNMS:受 Apache Log4j 漏洞影响的 OpenNMS 产品 IBM Cúram :可能会影响 Cúram Social Program IBM WebSphere:受影响,已更新 不受影响: Anolis OS: 不受 Log4j 高危安全漏洞影响 SUSE :产品均不受影响 Apache Spark:不受影响 Curl / Libcurl :不受影响 Zabbix :不受影响 DBeaver :Log4j2 漏洞对我们的用户不危险 VideoLAN:核心已移植到 Kotlin ,不用 Log4j Cloudflare:Cloudflare 如何安全应对 Log4j 2 漏洞 LastPass:不受影响 HackerOne:不受影响,能利用漏洞影响 H1 的人可获得 25000 美金奖励 影响待定 华为:启动了调查分析,相关排查还在持续进行 微软:除了明确涉及 Minecraft,其他的情况仍在调查 JetBrains: YouTrack Standalone、Hub、Upsource 和 Floating 许可证服务器受影响但已修复,其余仍在测试 发布漏洞相关工具 360CERT:发布Log4j2恶意荷载批量检测调查工具 腾讯容器安全:发布开源 Log4j2 漏洞缓解工具 此列表将持续更新,俺一个人能力有限,欢迎大家在评论区分享你所了解的公司/组织/开源项目对 Log4shell 漏洞的回应,格式为 公司/组织/项目名称 | 回应类别(已更新/修复/不受影响等)| 回应链接 。此漏洞影响面太广,希望大家一起合作,避免更多组织或个人因此受到损失。