共计 1944 个字符,预计需要花费 5 分钟才能阅读完成。
Log4j2 再爆雷
Log4j2 这是没完没了了,栈长认为《玩大了!Log4j 2.x 再爆雷。。。》Log4j 2.16.0 是最终终结版本了,没想到才过多久又爆雷了:
前两天栈长还说 Log4j 2.16.0 是最平安的版本,没想到这么快就又打脸了,Log4j 2.17.0 横空出世。。。
又来了。。Log4j2 这是中了新冠的毒?
这次又爆进去新的 DOS 拒绝服务攻打破绽。。
如果你想关注和学习最新、最支流的 Java 技术,能够继续关注公众号 Java 技术栈,公众号第一工夫推送。
安全漏洞:CVE-2021-45105
破绽摘要
Log4j 团队又获悉了一个重要的安全漏洞 CVE-2021-45105:
CVE-2021-45105 | 拒绝服务攻打破绽 |
---|---|
安全等级 | 高 |
影响版本 | Log4j2 2.0-alpha1 到 2.16.0 |
该破绽已在反对 Java 8+ 版本的 Log4j 2.17.0 中失去解决,请尽快降级。
破绽详情
因没有避免自援用 lookups 的不受管制的递归,当日志配置应用带有上下文 Lookup 的非默认模式,例如:
$${ctx:loginId}
此时,攻击者能够制作蕴含递归查找的歹意输出数据,导致 StackOverflowError 谬误而终止过程,这也就是 DOS(Denial of Service)拒绝服务攻打。
从 Log4j 2.17.0 版本开始,只有配置中的 lookup 字符串才容许递归扩大,另外,在任何其余用法中,仅解析最顶级的 lookup,不解析任何嵌套的 lookups。
解决方案
1、降级版本
立马降级到最新版本:Log4j 2.17.0
最新正式版本下载:
https://logging.apache.org/lo…
最新 Maven 依赖:
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.17.0</version>
</dependency>
spring-boot-starter-log4j2 尚未更新,能够先笼罩其内置版本:
<properties>
<log4j2.version>2.17.0</log4j2.version>
</properties>
Spring Boot 根底就不介绍了,举荐下这个实战教程:
https://github.com/javastacks…
另外,Spring Boot 也在跟进此破绽,界时新版本能够连带解决,等新版本公布,栈长再给大家解读,公众号 Java 技术栈第一工夫推送,不要走开哦。
2、长期解决
如果你不想降级版本,能够思考应用以下 2 种长期解决方案:
1)在 PatternLayout
日志配置中,替换上下文 Lookups 中的 ${ctx:loginId}
或者 $${ctx:loginId}
为线程上下文映射模式(%X, %mdc, or %MDC)。
2)或者,删除对上下文 Lookups 中对 ${ctx:loginId} or $${ctx:loginId}
的援用,它们个别来自应用程序内部,如 HTTP Header 或用户输出。
总结
Log4j2 最近是魔怔了??
始终在解决破绽,间断发版,从最开始的 Log4j 2.15.0 到当初最新 2.17.0,大大小小的版本曾经发了 10 个了,影响的周期曾经靠近两周了,目前还没看到收尾的迹象。。
这次应该是爆进去的第 4 个破绽了:
- CVE-2021-45105(拒绝服务攻打破绽,最新!)
- CVE-2021-45046(近程代码执行破绽)
- CVE-2021-44228(近程代码执行破绽)
- 信息透露破绽(平安公司 Praetorian 发现)
前面 3 个在 Log4j 2.16.0 中曾经失去解决,最新的请降级 2.17.0!!!
这是不是最初一次版本不得而知,总之这个版本是必须降级的,或查看配置,应用长期解决方案,后续停顿栈长也会第一工夫跟进,关注公众号 Java 技术栈,公众号第一工夫推送。
这也不能怪 Log4j2,具体可浏览:
Log4j2 维护者发声:没有工资,还要挨骂!!(我真是醉了!)
所以,用开源就要承受开源可能带来的影响,也不能指责开源人,都是成年人了,用不必是本人的抉择,哪款产品没有破绽呢?哪怕是商用产品。
版权申明: 本文系公众号 “Java 技术栈 ” 原创,原创实属不易,转载、援用本文内容请注明出处,剽窃者一律举报+投诉,并保留追究其法律责任的权力。
近期热文举荐:
1.1,000+ 道 Java 面试题及答案整顿 (2021 最新版)
2. 劲爆!Java 协程要来了。。。
3. 玩大了!Log4j 2.x 再爆雷。。。
4.Spring Boot 2.6 正式公布,一大波新个性。。
5.《Java 开发手册(嵩山版)》最新公布,速速下载!
感觉不错,别忘了顺手点赞 + 转发哦!