郑重声明:所用漏洞环境为自建虚拟机vulnhub靶机环境,仅供本人学习使用。
漏洞简述
Fastjson是阿里巴巴公司开源的一款json解析器,其性能优越,被广泛应用于各大厂商的Java项目中。fastjson于1.2.24版本后增加了反序列化白名单,而在1.2.48以前的版本中,攻击者可以利用特殊构造的json字符串绕过白名单检测,成功执行任意命令。
准备环境
测试机IP:192.168.79.129
靶机IP:192.168.79.131
1. 启动Vulnhub靶机环境:
![](https://img.haomeiwen.com/i15420652/7af130ed56f93ffc.png)
2. 验证靶机应用启用成功:
![](https://img.haomeiwen.com/i15420652/6fc73ffa7afc583b.png)
漏洞复现
方法一:marshalsec-0.0.3-SNAPSHOT-all.jar + Exploit.java
引用:https://github.com/CaijiOrz/fastjson-1.2.47-RCE
1. 准备Exploit.java
2. 编译(关于Javac环境,测试机与靶机一定要接近,否则无法.class文件无法被正常解析执行)
Javac Exploit.java,生成Exploit.class
3. 开启LDAP和Web服务
![](https://img.haomeiwen.com/i15420652/1bea6de0519993a9.png)
![](https://img.haomeiwen.com/i15420652/687dee82e65bc44c.png)
4.使用NC侦听反弹端口
![](https://img.haomeiwen.com/i15420652/0b921af35f9ba22f.png)
5.通过Burp POST payload(注意改成Content-Type: application/json)
![](https://img.haomeiwen.com/i15420652/3681fdcecb4011f7.png)
6.发现LDAP转发Web成功,靶机从Web服务获取Exploit.class
![](https://img.haomeiwen.com/i15420652/63f878b4e821f1ff.png)
![](https://img.haomeiwen.com/i15420652/d35e5da819dbb6bd.png)
7. 得到反弹Shell
![](https://img.haomeiwen.com/i15420652/65fbb2b7163e6103.png)
方法二:通过工具fastjson_rce_tool
引用:https://github.com/wyzxxz/fastjson_rce_tool
1. 开启LDAP服务,并加上需要执行的命令(反弹shell命令)
![](https://img.haomeiwen.com/i15420652/64f15b2e65e66cea.png)
2.使用NC侦听反弹端口
![](https://img.haomeiwen.com/i15420652/6a9f232cf9fbb02e.png)
3. 通过Burp POST payload(注意改成Content-Type: application/json)
![](https://img.haomeiwen.com/i15420652/8b5e11085cf44ce1.png)
4. 成功发送payload
![](https://img.haomeiwen.com/i15420652/66b8360d1deb076f.png)
5. 得到反弹Shell
![](https://img.haomeiwen.com/i15420652/179f73b309a4cc41.png)
关闭环境
![](https://img.haomeiwen.com/i15420652/e5df483dd3aee5f0.png)
网友评论