查看原文
其他

没完没了,Apache Log4j:你爆我也爆!

康熙 终码一生 2022-09-22

点击“终码一生”,关注,置顶公众号

每日技术干货,第一时间送达!



最近,Apache Log4j日志库中发现了另一个严重的远程代码执行漏洞,现在被跟踪为 CVE-2021-44832。这是 Log4j 库中的第三个 RCE 和第四个漏洞,其次分别是 CVE-2021-44228 (RCE)、CVE-2021-45046 (RCE) 和 CVE-2021-45105 (DoS 攻击)。

目前,Apache 团队已发布新的 Log4j 版本以修复新发现的这一漏洞。根据介绍,CVE-2021-44832 表现为,当攻击者控制配置时,Apache Log4j2 通过 JDBC Appender 容易受到 RCE 的攻击。


CVE-2021-44832远程代码执行
严重性缓和
Base CVSS Score6.6 (AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H)
受影响的版本从 2.0-alpha7 到 2.17.0 的所有版本,不包括 2.3.2 和 2.12.4


Apache Log4j2 2.0-beta7 到 2.17.0 版本(不包括安全修复版本 2.3.2 和 2.12.4)容易受到远程代码执行(RCE)攻击,其中有权修改日志配置文件的攻击者可以构建恶意配置将 JDBC Appender 与引用 JNDI URI 的数据源一起使用,该 JNDI URI 可以执行远程代码。此问题已通过将 JNDI 数据源名称限制为 Log4j2 版本 2.17.1、2.12.4 和 2.3.2 中的 java 协议来解决。


Log4j 1.x 不受此漏洞影响。受影响的用户可升级到 Log4j 2.3.2(适用于 Java 6)、2.12.4(适用于 Java 7)或 2.17.1(适用于 Java 8 及更高版本),以缓解该漏洞。

在以前的版本中,如果正在使用 JDBC Appender,请确认它没有被配置为使用 Java 以外的任何协议。官方提醒,只有 log4j-core JAR 文件受此漏洞影响。仅使用 log4j-api JAR 文件而不使用 log4j-core JAR 文件的应用程序不受此漏洞的影响。另外,Apache Log4j 是唯一受此漏洞影响的日志服务子项目。Log4net 和 Log4cxx 等其他项目不受此影响。


发布详情


从版本 2.17.1(以及针对 Java 7 和 Java 6 的 2.12.4 和 2.3.2)开始,JDBC Appender 将使用 JndiManager,并要求 log4j2.enableJndiJdbc 系统属性包含 true 值以启用 JNDI。


启用 JNDI 的属性已从“log4j2.enableJndi”重命名为三个单独的属性:log4j2.enableJndiLookup、log4j2.enableJndiJms 和 log4j2.enableJndiContextSelector。


JNDI 功能已在以下版本中得到强化:2.3.1、2.12.2、2.12.3 或 2.17.0。从这些版本开始,已删除对 LDAP 协议的支持,并且 JNDI 连接仅支持 JAVA 协议。


详情可查看此处:https://logging.apache.org/log4j/2.x/security.html。


PS:防止找不到本篇文章,可以收藏点赞,方便翻阅查找哦。 


往期推荐



IntelliJ IDEA 2021.3 最新版本 免注册登陆 完美破解 永久激活

Java 18 要来了,你不会还在用Java 8吧?

Spring Boot + EasyExcel 导入导出,好用到爆,可以扔掉 POI 了!

阿里二面:main 方法可以继承吗?

再见 Typora,这款开源 MarkDown 编辑器更香!

SQL 优化法则,就是这么简单!


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存