查看原文
其他

1214 最新!Log4j 再发版,彻底斩断核弹级漏洞,又要熬夜了。。。

The following article is from Java技术栈 Author 栈长

关注Java核心技术,推送更多 Java 干货!

背景

这几天为了应对《突发!Apache Log4j2 报核弹级漏洞。。赶紧修复!!》,Log4j2 连续发布了两个 RC(Release Candidate)候选版本,1 个正式版本。

在第一次的 RC1 候选版本中,Log4j2 还存在漏洞绕过风险,官方随后又发布了 RC2,后面就发布了 Log4j 2.15.0 正式版本,可用于生产环境,正式解决了核弹极漏洞。

今天栈长打开公众号Java技术栈,又有粉丝留言说,2.16.0 发布了!!

栈长前往一看:

我天!Log4j 又在搞什么鬼?这又发了 3 个版本??

2 个候选版本,1 个正式版本:2.16.0

是的,又一个正式版本 Log4j 2.16.0 发布了,可用于生产环境。。

下面来看下 2.15.0 - 2.16.0 两个版本都修复了啥内容。

解决漏洞:CVE-2021-44228

漏洞原因:

Log4j2 中提供了Lookups 机制,用于添加一些特殊值到日志中,在 Lookups 机制中,由于  JNDI 功能没有对名称解析做限制,而某些协议是不安全的,可以允许远程代码执行,从而导致核弹级漏洞。

2.15.0 修复内容:

1、Log4j 2.15.0+ 现在默认将协议限制为仅 java、ldap 和 ldaps,并将 ldap 协议做访问限制了,默认仅允许访问本地服务器上的 Java 原始对象。

2、Log4j 2.15.0+ 现在默认禁用 Lookups 功能,虽然 Log4j 2.x 没有完全废除这项功能,但强烈建议大家不要启用它。

2.16.0 修复内容:

1、默认禁用 JNDI 功能。

2、移除消息的 Lookups 功能。

总结

2.15.0 只是对危险功能做了限制和默认禁用,2.16.0 就狠了,干脆直接干掉了。

2.16.0 这次更新也是很有必要的,直接斩草除根,将未知风险扼杀在摇篮里,这也是为了防止用户不小心开启,因为漏洞过去,大家就会疏于防范,在不注意的情况下又会造成漏洞。

果然是核弹级漏洞,大大小小版本搞了好些个了。。这次应该是最后一次的修复版本了吧?大家有没有被折腾过多次的?所以,如果有必要,你可能还要再折腾一次。。。

如何下载、升级、修复,以及 Spring Boot 应对方案,可参考栈长之前分享的文章:

如果你想关注和学习最新、最主流的 Java 技术,可以持续关注公众号Java核心技术,公众号第一时间推送。

版权声明: 本文系公众号 "Java技术栈" 原创,原创实属不易,转载、引用本文内容请注明出处,抄袭者一律举报+投诉,并保留追究其法律责任的权利。

最近好文分享


1. 最新 Java 面试题出炉!(带全部答案)

2. Java 日志记录最佳实践,写得太好了吧!

3. 代码写的垃圾?这 3 个插件你值得拥有!

4. 面试官:手写一个必然死锁的例子?

5. 都在聊 DDD,到底哪里超越了MVC?

更多请关注 • Java核心技术

一个分享Java核心技术干货的公众号

点击阅读原文获取面试题~

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

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