风险通告
近日,奇安信CERT监测到Apache官方发布了ApacheLog4j远程代码执行漏洞(CVE-2021-44832),在某些特殊场景下(如系统采用动态加载远程配置文件的场景等),有权修改日志配置文件的攻击者可以构建恶意配置,通过
JDBCAppender 引用JNDI URI 数据源触发JNDI注入,成功利用此漏洞可以实现远程代码执行。
经奇安信 CERT 研判,该漏洞利用条件严苛,影响范围有限,用户不必惊慌,目前官方已有安全版本,鉴于 Log4j 在全球范围内部署量较大,建议用户使用处置建议中的缓解措施或升级到最新版本。
当前漏洞状态
细节是否公开 | PoC状态 | EXP状态 | 在野利用 |
是 | 已公开 | 未知 | 未知 |
ApacheLog4j是Apache的一个开源项目,Apachelog4j2是Log4j的升级版本,我们可以控制日志信息输送的目的地为控制台、文件、GUI组件等,通过定义每一条日志信息的级别,能够更加细致地控制日志的生成过程。
近日,奇安信CERT监测到Apache官方发布了ApacheLog4j远程代码执行漏洞(CVE-2021-44832),在某些特殊场景下(如系统采用动态加载远程配置文件的场景等),有权修改日志配置文件的攻击者可以构建恶意配置,通过
JDBCAppender 引用JNDI URI 数据源触发JNDI注入,成功利用此漏洞可以实现远程代码执行。
ApacheLog4j 1.x 不受此漏洞影响,只有引用 log4j-core 依赖受此漏洞影响。仅引用log4j-api 依赖而不引用 log4j-core的应用程序不受此漏洞的影响。ApacheLog4j 是唯一受此漏洞影响的日志服务子项目,Log4net 和 Log4cxx 等其他项目不受影响。
从发布的最新版本 2.17.1(以及 Java 7 和 Java 6 的 2.12.4 和 2.3.2)开始,JDBC Appender默认关闭JNDI,仅当log4j2.enableJndiJdbc系统属性为true时才能启用JNDI功能。启用 JNDI 的属性(之前为log4j2.enableJndi)重命名为三个单独的属性:log4j2.enableJndiLookup、log4j2.enableJndiJms 和log4j2.enableJndiContextSelector。从2.3.1、2.12.2、2.12.3及2.17.0版本开始,已删除对 LDAP 协议的支持,并且 JNDI 连接仅支持 JAVA 协议。
经奇安信 CERT 研判,该漏洞利用条件严苛,影响范围有限,用户不必惊慌,目前官方已有安全版本,鉴于 Log4j 在全球范围内部署量较大,建议用户使用处置建议中的缓解措施或升级到最新版本。
CVE-2021-44832 Apache Log4j 远程代码执行漏洞
漏洞名称 | Apache Log4j远程代码执行漏洞 | ||||
漏洞类型 | 远程代码执行 | 风险等级 | 中危 | 漏洞ID | CVE-2021-44832 |
公开状态 | 已公开 | 在野利用 | 无 | ||
漏洞描述 | Apache Log4j 存在远程代码执行漏洞,有权修改日志配置文件的攻击者可以构建恶意配置,通过JDBC Appender 引用JNDI URI 数据源触发JNDI注入,成功利用此漏洞可以实现远程代码执行。 | ||||
参考链接 | |||||
https://logging.apache.org/log4j/2.x/security.html |
奇安信 CERT 第一时间分析并复现了Apache Log4j 远程代码执行漏洞(CVE-2021-44832),复现截图如下:
2.0-beta7<= Apache Log4j2 <= 2.17.0
不包括更新修复版本2.3.2和2.12.4
一、漏洞排查措施
1. 用户可自查系统是否引用 Apache log4j-core 依赖,没有引用则不受
漏洞影响。
2. 排查系统中日志配置是否采用远程动态加载模式。
3. 排查系统中是否正在使用JDBCAppender,且是否被配置为支持JNDI等其他可利用的协议。
二、漏洞修复建议
1. 版本升级
目前 Apache Log4j 官方已有可更新版本,用户可升级至安全版本。
升级到 Log4j2.3.2(适用于 Java 6)、2.12.4(适用于 Java7)或2.17.1(适用于 Java 8 及更高版本)。
可从地址中下载升级: https://logging.apache.org/log4j/2.x/download.html
2. 缓解措施
若无法及时升级至安全版本,可采用以下缓解措施来缓解此漏洞:
(1)修改系统中的JDBCAppender配置为 JNDI 数据源仅支持Java协议。
(2)建议 JDK 使用 11.0.1、8u191、7u201、6u211 及以上的高版本。
(3)移除 log4j-core 包中 JndiLookup 类文件,并重启服务。
具体命令:
zip -q-d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
(4)限制受影响应用对外访问互联网
奇安信天眼产品解决方案
奇安信天眼新一代威胁感知系统在第一时间加入了该漏洞的检测规则,请将规则包升级到3.0.1229.13187上版本。规则名称:Log4j2任意代码执行漏洞(CVE-2021-44832),规则ID:0x10020E3F。奇安信天眼流量探针(传感器)升级方法:系统配置->设备升级->规则升级,选择“网络升级”或“本地升级”。
奇安信网神网站应用安全云防护系统已全面支持对Apache Log4j 远程代码执行漏洞(CVE-2021-44832)的防护。
奇安信新一代智慧防火墙(NSG3000/5000/7000/9000系列),已通过更新IPS特征库完成了对该漏洞的防护。建议用户尽快将IPS特征库升级至“2112291100”及以上版本并启用规则ID: 4346701进行检测。
奇安信网神网络数据传感器(NDS5000/7000/9000系列)产品,已具备该漏洞的检测能力。规则ID为:7153,建议用户尽快升级检测规则库至2112291100以后版本并启用该检测规则。
奇安信开源卫士20211229. 934版本已支持对ApacheLog4j2 远程代码执行漏洞-CVE-2021-44832的检测。
2021年12月奇安信 CERT发布安全风险通告