安全风险通告
第1章 安全通告
近日,相关机构监测到 Apache Log4j 存在任意代码执行漏洞,经过分析,该组件存在 Java JNDI 注入漏洞,当程序将用户输入的数据进行日志,即可触发此漏洞,成功利用此漏洞可以在目标服务器上执行任意代码。
经验证,Apache Struts2、Apache Solr、Apache Druid、Apache Flink 等众多组件与大型应用均受影响,鉴于此漏洞危害巨大,利用门槛极低,建议尽快参考缓解方案阻止漏洞攻击。
当前漏洞状态:
技术细节 |
PoC 状态
|
EXP 状态 |
在野利用
|
已公开 |
已公开 |
已公开 |
已发现 |
第2章 漏洞信息
2.1 漏洞描述
Apache Log4j 是 Apache 的一个开源项目,Apache log4j2 是 Log4j 的升级版本,我们可以控制日志信息输送的目的地为控制台、文件、GUI 组件等,通过定义每一条日志信息的级别,能够更加细致地控制日志的生成过程。
近日,奇安信 CERT 监测到 Apache Log4j 存在任意代码执行漏洞,经过分析,该组件存在 Java JNDI 注入漏洞,当程序将用户输入的数据进行日志,即可触发此漏洞,成功利用此漏洞可以在目标服务器上执行任意代码。经验证,Apache Struts2、Apache Solr、Apache Druid、Apache Flink 等众多组件与大型应用均受影响,鉴于此漏洞危害巨大,利用门槛极低,建议尽快参考缓解方案阻止漏洞攻击。
Apache Log4j 任意代码执行漏洞
漏洞名称 |
Apache Log4j 任意代码执行漏洞 |
||||
漏洞类型 |
代码执行 |
风险等级 |
紧急 |
漏洞 ID |
暂无 |
公开状态 |
已公开 |
在野利用 |
已发现 |
||
漏洞描述 |
Apache Log4j 是 Apache 的一个开源项目,通过定义每一条 日志信息的级别,能够更加细致地控制日志生成过程。经过分 析,Log4j2 中存在 JNDI 注入漏洞,当程序将用户输入的数据进行 日志记录时,即可触发此漏洞,成功利用此漏洞可以在目标服务器上执行任意代码。 |
||||
参考链接 |
https://github.com/apache/logging-log4j2 |
2.2 风险等级
紧急
第3章 影响范围
Apache Log4j 2.x < 2.15.0-rc2
第4章 处置建议
1. 漏洞排查
1)排查应用是否引入了 Apache Log4j2 Jar 包,若存在依赖引入,则可能存在漏洞影响。 相关用户可根据 Java JAR 解压后是否存在org/apache/logging/log4j 相关路径结构,判断是否使用了存在漏洞的组件,若存在相关 Java 程序 包,则极可能存在该漏洞。
2) 若程序使用 Maven 打包,查看项目的 pom.xml 文件中是否存在如下图
所示的相关字段,若版本号为小于 2.15.0-rc2,则存在该漏洞。
3)若程序使用 gradle 打包,查看 build.gradle 编译配置文件,若在dependencies 部分存在 org.apache.logging.log4j 相关字段,且版本号为小于 2.15.0-rc2,则存在该漏洞。
2. 攻击排查
a) 攻击者在利用前通常采用 dnslog 方式进行扫描、探测,对于常见利用方式可通过应用系统报错日志中的
"javax.naming.CommunicationException"、
"javax.naming.NamingException: problem generating object usingobject factory"、"Error looking up JNDI resource"关键字进行排查。
b) 流量排查:攻击者的数据包中可能存在:“${jndi:rmi”、“${jndi:ldap”字样。
3. 修复建议
a) 升级到最新版本:
请联系厂商获取修复后的官方版本:https://github.com/apache/logginglog4j2 ;
请尽快升级 Apache Log4j2 所有相关应用到最新的 log4j-2.15.0-rc2 版本,地址:https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2
b) 缓解措施:
(1)添加 jvm 启动参数 -Dlog4j2.formatMsgNoLookups=true
(2)在应用程序的 classpath 下添加 log4j2.component.properties 配置文件,文件内容:log4j2.formatMsgNoLookups=True
(3)设置系统环境变量 FORMAT_MESSAGES_PATTERN_disABLE_LOOKUPS设置为 true
(4)建议 JDK 使用 11.0.1、8u191、7u201、6u211 及以上的高版本
(5)限制受影响应用对外访问互联网