网鼎杯2020朱雀组
考察反序列化,主要是找到反序列化的触发点
抓包可以发现,有func和p两个参数,这里func是data函数,p是时间函数的格式,达到的效果刚好就是左上角的时间显示,我们可以设想一下,这里会不会可以实现任意函数,try:
抓个包对参数更改一下:func=readfile&p=index.php
于是得到了index.php的代码:

disable_fun 那里过滤了很多函数,但是,我们可以发现这里有Test类,类里面有__destruct函数,且调用了gettime()函数,而且disable_fun没有ban掉 unserialize()函数,可以考虑利用反序列化来实现所有我们想要的函数。先找到flag文件所在的位置,我们这样来构造序列化:


然后再构造读取flag的序列化字符串:
