关于springboot项目日志框架默认使用slf4j时是否需要处理log4j-JNDI注入漏洞的说明
前几天爆出的log4j-JNDI注入漏洞可谓骇人听闻啊,博客里、公众号上也不断的推送各种最新解决方案,几乎都是更换新的maven引用。
那么问题来了,我目前负责的项目pom.xml里没有引用log4j、log4j2的依赖,但是代码中明确有使用过日志,我该怎么办,我需要升级到最新的依赖吗?我该如何升级?对于我这个小菜鸟来说,我不知所措了
如果再看这篇博客的你也面临同样的问题,那么请跟着我的文章继续往下看(大佬随意,欢迎指正):
首先我们下载Maven Helper或相关类似功能的插件,
下载安装好后应用,打开pom.xml文件,最下方会出现截图红框中的字样,点击进去,如图进行操作,
我们可以看到log4j-api是被log4j-to-slf4j引用的, log4j-to-slf4j是被spring-boot-starter-logging引用的,spring-boot-starter-logging是被spring-boot-starter引用的,最终的spring-boot-starter是在pom.xml中引用的,如图:
通过各种查阅资料,最终我了解到,此处默认使用slf4j+logback的方式来记录日志,并没有使用log4j、log4j2等日志框架,故不存在log4j-JNDI注入漏洞。
以下为资料截图:
除此之外,通过进行一个简单的小测试,也能表明当前项目不存在log4j-JNDI注入漏洞。测试方法见博客《关于近期log4j漏洞问题,自我排查以及更新log4j包的思路整理》
以上为个人近几天的学习整理总结,若有不对的地方欢迎留言指正!