题目来源于攻防世界
解法步骤:
打开后观察代码可以发现我们必须要在调用xctf时绕过__wakeup,但我们知道
wakeup()会在unserialize时自动调用。
所以本题的目标就是要在反序列化时绕过wakeup()
通过查阅资料发现 当 序列化的字符串中的 属性值 个数 大于 属性个数 就会导致反序列化异常,从而绕过 __wakeup()(CVE-2016-7124)
下面构造序列化代码,实例化对象
new xctf()
得到序列化O:4:"xctf":1:{s:4:"flag";s:3:"111";}
后,修改属性值 1为 2
最后用get方式传入参数 即可
- Web-unserialize unserialize CTFer blogs Webweb-unserialize unserialize ctfer blogs web-unserialize web-robots robots ctfer blogs web-easyphp easyphp ctfer blogs web-isc ctfer blogs web web_php_unserialize xctf-web_php_unserialize web_php_unserialize web_xctf_writeup unserialize unserialize3 unserialize ctf-web世界 web_xctf_writeup unserialize3 unserialize writeup