Logback 也爆雷了

Log4j2 漏洞最新进展:

Log4j 2.3.1 发布!又是什么鬼??

Log4j2 核弹级漏洞刚结束没几天,Logback 其实也爆雷了,这你能信??

栈长在上篇文章提到,因 Log4j2 漏洞的反复无常,导致某些公司已经切换到 Logback 了,如果这也是你们公司的决定,请在文章下面评论区留言。

可令栈长万万想不到的是,在 Log4j2 漏洞修复期间,Logback 也出事了,我们来看官方的通告:

漏洞摘要

| CVE-2021-42550 | 远程代码执行漏洞 |
| 安全等级 | 中 |
| 影响版本 | logback < 1.2.9
logback < 1.3.0-alpha11 |

该漏洞影响了两条版本线:

  • Logback 1.2.x
  • Logback 1.3.x

当然,生产主要还是以 1.2.x 为主,1.3.x 尚未正式发布,Alpha 表示早期的内部测试版本。

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

漏洞描述

在 Logback 1.2.7 及之前的版本中,具有编辑配置文件权限的攻击者可以制作恶意配置,允许从 LDAP 服务器加载、执行任意代码。

漏洞具体详情可参考:

  • https://cve.report/CVE-2021-42550
  • https://logback.qos.ch/news.html

解决方案

Logback 升级到安全版本:

  • Logback 1.2.9+
  • Logback 1.3.0-alpha11+

修复内容:

1)强化 Logback 的 JNDI 查找机制,只接受 java: 命名空间中的请求,所有其他类型的请求都将被忽略。

2)SMTPAppender 也被加强了。

3)出于安全原因,暂时删除了数据库支持。

4)因 Groovy 配置过于强大,出于安全原因,删除了对 Groovy 的配置支持,后面也不太可能恢复。

看来,JNDI 又闯祸了。。。

JDNI 这到底是什么破玩意,有时间栈长再分享一篇,关注公众号Java技术栈第一时间推送哦。

上篇文章《终于!Spring Boot 最新版发布,一招解决 Log4j2 核弹级漏洞!》,Spring Boot 在最新版本中已经升级到了安全版本:Logback 1.2.9

不过在 Logback v1.2.9 中还存在 bug:

目前最新版本:

  • Logback 1.2.10
  • Logback 1.3.0-alpha12

建议直接升级到最新版本,所以,没有必要升级 Spring Boot 主版本,最好的解决方案是只升级 Logback 版本即可。

Spring Boot 基础就不介绍了,推荐下这个实战教程(含示例源码):

https://github.com/javastacks/spring-boot-best-practice

Spring Boot & Maven:

<properties>
    ...
    <logback.version>1.2.10</logback.version>
</properties>

更新之后的 Logback 版本:

另外,官方还建议把 logback 日志配置文件设置为只读,这样就能彻底堵死配置文件被篡改所引发的漏洞。

在 12/14 ~ 12/23 这段时间,官方针对两个版本线都进行了多次版本更新,以解决此漏洞,也是折腾啊。。

Logback 这个漏洞属于中危级别,也少有报道,但该漏洞属于远程代码执行,危害的后果也挺严重的,建议大家还是升级吧,防患未然!

话说你们用的什么版本呢?赶紧检查升级吧!

刚从 Log4j2 切换过来的小伙伴恐怕要哭笑不得了吧?如果说的就是你,请在下面评论区留言……

Log4j2 & Logback 漏洞的后续进展,栈长也会持续跟进,关注公众号Java技术栈,公众号第一时间推送。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注