美文网首页
【紧急】继续折腾,Log4j再发2.16.0,强烈建议升级

【紧急】继续折腾,Log4j再发2.16.0,强烈建议升级

作者: Tom弹架构 | 来源:发表于2021-12-15 16:06 被阅读0次

背景

继前天正式发布的2.15.0之后,Apache log4j 2 团队宣布 Log4j 2.16.0 发布!

由于SLF4J适配兼容性的中断,Log4j 现在发布两个版本的SLF4J to Log4j的适配器。log4j-slf4j-impl对应 SLF4J 1.7.x 及更早版本;log4j-slf4j18-impl对应SLF4J 1.8.x 及更高版本一起使用。SLF4J-2.0.0 alpha 版本目前还不完全支持。

强烈推荐升级2.16.0。

修正错误

1、LOG4J2-3208:默认禁用 JNDI。需要 log4j2.enableJndi设置为 true 以允许 JNDI。无论是Log4j2还是其它使用了JNDI的Java类库中,在不受保护的上下文中使用JNDI都具有一个很大的问题安全风险。

2、LOG4J2-3211:完全删除对Message Lookups的支持。目的是采取强化措施以防止 CVE-2021-44228,此举措不是修复 CVE-2021-44228所必须的。

受漏洞影响的Apache项目

另外Apache 安全团队在今天公布了受log4j CVE-2021-44228影响的Apache项目。可以根据下面列表进行排查:

项目 是否受到影响 解决方案
Apache Archiva 2.2.6正式发行版将解决这个问题
Apache Druid 更新到0.22.1
Apache EventMesh 暂无明确方案
Apache lceberg
Apache Flink 暂无明确方案
Apache Fortress 更新到2.0.7
Apache Geode 更新到1.12.6,1.13.5,1.14.1
Apache Guacamole
Apache Hadoop 使用log4j 1.x
Apache Hive 暂无明确方案
Apache Jena 暂无明确方案
Apache JMeter 暂无明确方案
Apache JSPWiki 暂无明确方案
Apache Log4J1.2 存在类似漏洞 参考「CVE-2021-4104]漏洞,JMS调用JNDI北洞
Apache Log4J2.x 更新到2.16.0
Apache Log4Net
Apache OFBiz 更新到18.12.03
Apache Ozone 更新到1.2.1
Apache skyWalking 更新到8.9.1
Apache Solr 更新到8.11.1
Apache Spark 使用log4j 1.x
Apache Struts 暂无明确方案
Apache Tomcat
Apache TrafficControl 暂无明确方案
Apache ZooKeeper 使用log4j 1.x
Apache Calcite Avatica 更新到1.20.0
Apache CloudStack

在 2.15.0 版本之前,Log4j 会在模式布局(Pattern Layout)中包含的消息或参数中自动解析 Lookups。这行为不再是默认值,必须通过指定启用%msg{lookup}。Apache Log4j 2.16.0至少需要Java 8才能构建和运行。Log4j 2.12.1是最后一个支持Java 7的版本。Java 7不是Log4j团队的长期支持版本。

升级措施

本人在前几天紧急连载了关于此漏洞的修复教程: Apache Log4j任意代码执行漏洞安全风险升级修复教程 ,此方法依然有效。

如果你懒得看之前的文章,可以通过直接升级jar包的方式,加入如下依赖:


<properties>
    <java.version>1.8</java.version>
    <log4j2.version>2.16.0</log4j2.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>${log4j2.version}</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>${log4j2.version}</version>
    </dependency>
</dependencies>

如果你的是SpringBoot项目,只需修改版本号:


<properties>
    <java.version>1.8</java.version>
    <log4j2.version>2.16.0</log4j2.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-log4j2</artifactId>
    </dependency>
</dependencies>

参考资料

有关Apache Log4j2的完整信息,包括有关如何提交错误报告、补丁或改进建议,请参阅Apache Apache Log4j2网站:

https://logging.apache.org/log4j/2.x/

事件时间线

[2021/12/14] Apache log4j 2 团队宣布 Log4j 2.16.0 发布

[2021/12/13] 官方发布正式发布2.15.0,Java日志库Log4j2注入漏洞复现

[2021/12/11] Spring Boot应对Log4j2注入漏洞官方指南

[2021/12/10] 知名Java日志组件Log4j2爆出严重0 day漏洞
关注『 Tom弹架构 』回复“Spring”可获取完整源码。

本文为“Tom弹架构”原创,转载请注明出处。技术在于分享,我分享我快乐!如果您有任何建议也可留言评论或私信,您的支持是我坚持创作的动力。关注『 Tom弹架构 』可获取更多技术干货!

原创不易,坚持很酷,都看到这里了,小伙伴记得点赞、收藏、在看,一键三连加关注!如果你觉得内容太干,可以分享转发给朋友滋润滋润!

相关文章

  • 【紧急】继续折腾,Log4j再发2.16.0,强烈建议升级

    背景 继前天正式发布的2.15.0之后,Apache log4j 2 团队宣布 Log4j 2.16.0 发布! ...

  • Log4j2再发新版本2.16.0,完全删除Message Lo

    昨天,Apache Log4j 团队再次发布了新版本:2.16.0! 2.16.0 更新内容 默认禁用JNDI的访...

  • struts2.3升级到 struts2.5.13

    log4j 1 升级到 log4j 2 1、删除掉 log4j 1的配置文件。如 classpath 下面的 lo...

  • Log4j2基本使用入门

    1.Log4j2简介 Apache Log4j 2是日志框架Log4j的升级,它比其前身Log4j 1.x提供了重...

  • SpringBoot 使用log4j2日志配置

    前言 Apache Log4j2 是对 Log4j 的升级,它比其前身 Log4j 1.x 提供了重大改进,并提供...

  • 继续折腾

    此刻已经洗白白摆好大字型,前来翻简妃的牌子,研究一番发现昨天忘记翻牌子了,很是对不起简小姐呢 上午睡完懒觉爬起来打...

  • 继续折腾

    国庆到现在,情绪低落,整个人都不在状态,满脑子的胡思乱想,感觉自己跟现实脱节,又感觉自己想要逃避、活在幻想里。 九...

  • 继续折腾

    8.21.晚。 陈先生今晚加班,嗯,前天还在说他这几天晚上还算轻松,今天他就开始加班了,果然有些话一说就坏。 今天...

  • 继续折腾

    今天继续躺平,身体状态恢复中,明后天应该就能够恢复如常了,今天继续写水文更新。感谢杨先生这段时间细心周到的照顾,今...

  • 折腾,继续使劲折腾

    ​ 对待生命你不妨大胆一点,因为我们终究是要失去它的。 —弗里德里希·威廉·尼采 1...

网友评论

      本文标题:【紧急】继续折腾,Log4j再发2.16.0,强烈建议升级

      本文链接:https://www.haomeiwen.com/subject/kcdpfrtx.html