ApacheLog4j2远程代码执行漏洞排查及修复手册
安全公告编号:CNTA-2021-0034
一、漏洞情况分析
ApacheLog4j是一个基于Java的日志记录组件。ApacheLog4j2是Log4j的升级版本,通过重写Log4j引入了丰富的功能特性。该日志组件被广泛应用于业务系统开发,用以记录程序输入输出日志信息。
CNVD对该漏洞的综合评级为“高危”。
二、漏洞排查方法
2.1版本排查
存在该漏洞的Log4j2组件版本为:Log4j2.X≤Log4j组件版本 2.2中间件排查 涉及的受影响中间件或应用,包括但不限于:ApacheSolr、ApacheDruid、ApacheStruts2、ApacheFlink、Flume、Dubbo、Redis、Logstash、ElasticSearch、Kafka、Ghidra、Minecraft、Apachehive、Datax、Streaming、DolphinScheduler、Storm、Spring等。 三、攻击情况排查 3.1日志排查 攻击者常采用dnslog方式进行扫描、探测,对于常见漏洞利用方式对应用系统报错日志中的“javax.naming.CommunicationException”、“javax.naming.NamingException:problemgeneratingobjectusingobjectfactory”、“ErrorlookingupJNDIresource”等关键字段进行排查。 3.2流量排查 四、漏洞修复建议 4.1官方补丁 4.2临时修复措施(任选其一) (1)添加jvm启动参数-Dlog4j2.formatMsgNoLookups=true; (2)在应用classpath下添加log4j2.component.properties配置文件,文件内容为log4j2.formatMsgNoLookups=true; (3)JDK使用11.0.1、8u191、7u201、6u211及以上的高版本; (4)限制受影响应用对外访问互联网; (5)禁用JNDI。如在spring.properties里添加spring.jndi.ignore=true; (6)部署使用第三方防火墙产品进行安全防护,并更新WAF、RASP规则等。