Log4j2组件引发的安全风险还在持续增加。上周五(12月17日)Apache软件基金会(ASF)为广泛使用的日志库推出另一个补丁版本2.17.0,该补丁版本是为了应对黑客利用第三个Log4j2漏洞进行拒绝服务(DoS)攻击。
该漏洞编号为CVE-2021-45105(CVSS评分:7.5),新漏洞影响该组件的所有版本,从2.0-beta9到2.16.0。ASF在之前发布了2.16版本用于修复第二个Log4j2漏洞(CVE-2021-45046远程代码执行漏洞)。但是该修复版本仅仅是CVE-2021-44228的不完整修复,目前出现的第三个漏洞利用链并不受该升级补丁的影响。
CVE-2021-45105漏洞
ASF在修订后的公告中称:“Apache Log4j2版本2.0-alpha1至2.16.0不能防止自引用查找的不受控制的递归”。“当日志配置使用带有上下文查找的非默认模式布局(例如,$${ctx:loginId})时,控制线程上下文映射(MDC)输入数据的攻击者可以制作包含递归的恶意输入数据查找,导致StackOverflowError终止进程。”
3号漏洞会是最终章?
谷歌开源洞察团队通过分析发现,大约有35863个java包使用了包含缺陷的Apache Log4j2的库版本,而直接依赖Log4j2组件的仅有7000多个。调查显示受影响的范围组件并非与Log4j2强相关,这给风险排查带来了更大的困难。这也意味着第三个漏洞的出现远远不会是结束,还有更多的Log4j2安全漏洞将会出现。
受Log4j2依赖的组件
安全形势依然严峻 安全自查不可或缺
迄今为止在Log4j2框架中发现的完整缺陷列表和修复版本说明如下:
CVE-2021-44228(CVSS 评分:10.0):
影响 Log4j 2版本从 2.0-beta9 到 2.14.1 的远程代码执行漏洞(在 2.15.0 版本中修复)
CVE-2021-45046(CVSS 评分:9.0):
一个信息泄漏和远程代码执行漏洞,影响从 2.0-beta9 到 2.15.0 的 Log4j 2版本,不包括 2.12.2(在 2.16.0 版本中修复)
CVE-2021-45105(CVSS 评分:7.5):
一个影响从 2.0-beta9 到 2.16.0 的 Log4j 2版本的拒绝服务漏洞(在 2.17.0 版本中修复)
鉴于当前复杂的安全形势以及该漏洞组件的广泛使用,它对企业提出了紧迫的挑战。企业应当立即开展新一轮的自查,修复所有具有该安全风险的系统以及产品。