背景

前些天Log4j的漏洞,不知多少程序被抓去加班,关键漏洞还是接连出现的,真是辛苦了程序员,也辛苦了Log4j的开源作者。

为此,二师兄还专门写了一篇还原漏洞的文章【原文点这里】。竟然有朋友在评论区说”就这么一个小漏洞,值得这么大肆的写吗?“。看来那位朋友还没意识到漏洞的严重性。

本来以为使用的是Logback能够躲过一劫,没想到,又看到朋友圈在讨论Logback的爆出的新漏洞,吓得赶紧看了一下项目中的版本。

漏洞详情

为了了解一下是什么情况,先去官网(https://logback.qos.ch/news.html)看看。在官网的News中可以看到,在12月16日更新了1.2.9版本。

Logback漏洞

通过上面的News可以看出,12月16日更新了1.2.9版本,并在描述中提示受影响的版本是小于1.2.9版本。

官方为了避免恐慌,特意强调:” Please understand that log4Shell/CVE-2021-44228 and CVE-2021-42550 are of different severity levels.

也就是说,该漏洞与Log4j的漏洞根本不是一个级别的。所以,大家不必恐慌。

漏洞的被利用需要满足三个条件:

  • 拥有修改logback.xml的权限;
  • Logback版本低于1.2.9版本;
  • 重启应用或者在攻击之前将scan设置为true。

点击上面的漏洞(编号:CVE-2021-42550),看到最新修改日期是12月22日:

CVE-2021-42550

通过官网描述,可以知道:Logback 1.2.7(下面显示为小于1.2.9)及以下版本中,存在安全漏洞,攻击者可以通过更改 logback 配置文件添加恶意配置,从而可以执行 LDAP 服务器上加载的任意代码

安全防护

看似挺严重的漏洞,但在上图中描述漏洞的严重级别只有MEDIUM级,即中级。所以,不必过于恐慌,但如果有可能的话,还是选择升级来确保系统的安全。

解决方案很简单:除了将Logback升级到1.2.9版本,官方还建议将Logback的配置文件设置为只读。

如果你使用的是Spring Boot的项目,除了新发布的2.5.8和2.6.2以外,Logback还都未升级到1.2.9版本。建议在pom.xml文件中升级一下Logback的版本:

<properties>
  <java.version>1.8</java.version>
  <logback.version>1.2.9</logback.version>
</properties>

小结

Log4j的漏洞让大家成了惊弓之鸟,但这次不必恐慌。软件有漏洞存在是必然的客观事实。发现漏洞,解决漏洞即可。但这些漏洞的发生给我们提了个醒儿:如何及时得知自己系统中所使用软件是否存在漏洞

如果你在思考上面的问题,其实本篇文章已经给你提示了一个解决途径:有事没事看看所使用框架的官网版本更新。而本文的基本思路就是:得知漏洞消息,查看官网,进而得到漏洞信息及解决方案。其实,更进一步,还可以看看代码中前后版本都改了什么代码,那你将收获更多。



Log4j一波未平,Logback 一波又起!再爆漏洞!!插图2

关注公众号:程序新视界,一个让你软实力、硬技术同步提升的平台

除非注明,否则均为程序新视界原创文章,转载必须以链接形式标明本文链接

本文链接:http://www.choupangxia.com/2021/12/25/logback-bug/