史诗级无门槛利用!​Apache Log4j2 远程代码执行漏洞利用(CVE-2021-44228)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 当前Apache Log4j2漏洞的影响极广,有消息称,截止到2021年12月13日仍存在RC1绕过的可能。所以,以检测与分析为目的,日志易安全团队对该漏洞进行复现,进而分析对应的攻击特征,形成SIEM与NTA检测规则。
0x01Apache Log4j2简介

Apache Log4j2是Apache Log4j的升级,参考了Logback进行改进,同时修复了Logback架构中的一些固有问题。Apache Log4j2是一款强大的JAVA日志框架,在各种JAVA项目中被广泛的应用。

0x02 漏洞介绍

由于Apache Log4j2某些功能存在递归解析功能,攻击者可直接构造恶意请求,触发远程代码执行漏洞。漏洞利用无需特殊配置,Apache Struts2、Apache Solr、Apache Druid、Apache Flink等均受影响。

目前日志易安全团队已复现该漏1.jpg

0x03 漏洞影响

Apache Log4j2 version < Apache Log4j2 2.15.0-rc2

0x04 漏洞利用检测

1、通过日志易SIEM安全大数据平台与NTA结合进行检测

基于漏洞复现与研究,进行漏洞尝试利用时,往往会发送的恶意HTTP请求,而URL或请求体可能会携带"${jndi:...}"参数,我们可以使用日志易NTA进行检测(目前已更新NTA规则库),威胁告警如下。

2.jpg

点击查看告警详情,分析具体的告警Payload,如下图(URL部分)所示。

3.jpg

4.jpg

请求体检测,触发的告警如下图所示。

5.jpg

6.jpg

2、通过日志易SIEM安全大数据分析平台中的日志对历史数据进行排查分析

通过日志易自研的搜索处理语言SPL(Search Processing Language)对Payload特征进行分析与检测,主要有

l "${jndi:ldap://"

l "${jndi:rmi://"

l "${jndi:ldaps://"

7.jpg

0x05 漏洞修复

1、目前官方已发布测试版本修复该漏洞,受影响用户可自行更新。

下载链接:

https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2

2、缓解措施

① 设置参数:

log4j2.formatMsgNoLookups=True

② 设置JVM参数:

-Dlog4j2.formatMsgNoLookups=true

③ 设置系统环境变量:

FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS设置为true


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
安全 Java 开发者
刚折腾完Log4J,又爆Spring RCE核弹级漏洞
继Log4J爆出安全漏洞之后,又在深夜,Spring的github上又更新了一条可能造成RCE(远程命令执行漏洞)的问题代码,随即在国内的安全圈炸开了锅。有安全专家建议升级到JDK 9以上,有些专家又建议回滚到JDK 7以下,一时间小伙伴们不知道该怎么办了。大家来看一段动画演示,怎么改都是“将军"。
117 1
|
6月前
|
Apache
web服务器(Apache)访问日志(access_log)详细解释
web服务器(Apache)访问日志(access_log)详细解释
|
安全 Java Shell
Apache Log4j2 远程代码执行漏洞
Apache Log4j2是一个·基于Java的日志记录工具,该工具重写了Log4j框架,并且引入大量丰富的特性,该日志框架被大量用于业务系统开发,用来记录日志信息。
105 2
|
安全 druid Java
【紧急】Apache Log4j任意代码执行漏洞安全风险升级修复教程
近期一个 Apache Log4j 远程代码执行漏洞细节被公开,攻击者利用漏洞可以远程执行代码。经过分析,该组件存在Java JNDI注入漏洞,当程序将用户输入的数据进行日志,即可触发此漏洞,成功利用此漏洞可以在目标服务器上执行任意代码。
362 1
|
安全 Java 大数据
CDH/HDP/CDP等大数据平台中如何快速应对LOG4J的JNDI系列漏洞
CDH/HDP/CDP等大数据平台中如何快速应对LOG4J的JNDI系列漏洞
|
14天前
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
123 30
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
1月前
|
XML JSON Java
Logback 与 log4j2 性能对比:谁才是日志框架的性能王者?
【10月更文挑战第5天】在Java开发中,日志框架是不可或缺的工具,它们帮助我们记录系统运行时的信息、警告和错误,对于开发人员来说至关重要。在众多日志框架中,Logback和log4j2以其卓越的性能和丰富的功能脱颖而出,成为开发者们的首选。本文将深入探讨Logback与log4j2在性能方面的对比,通过详细的分析和实例,帮助大家理解两者之间的性能差异,以便在实际项目中做出更明智的选择。
226 3
|
3月前
|
Kubernetes Ubuntu Windows
【Azure K8S | AKS】分享从AKS集群的Node中查看日志的方法(/var/log)
【Azure K8S | AKS】分享从AKS集群的Node中查看日志的方法(/var/log)
131 3
|
1月前
|
存储 缓存 关系型数据库
MySQL事务日志-Redo Log工作原理分析
事务的隔离性和原子性分别通过锁和事务日志实现,而持久性则依赖于事务日志中的`Redo Log`。在MySQL中,`Redo Log`确保已提交事务的数据能持久保存,即使系统崩溃也能通过重做日志恢复数据。其工作原理是记录数据在内存中的更改,待事务提交时写入磁盘。此外,`Redo Log`采用简单的物理日志格式和高效的顺序IO,确保快速提交。通过不同的落盘策略,可在性能和安全性之间做出权衡。
1633 14
|
1月前
|
Python
log日志学习
【10月更文挑战第9天】 python处理log打印模块log的使用和介绍
31 0

推荐镜像

更多