本文最后更新于521 天前,其中的信息可能已经过时,如有错误请发送邮件到big_fw@foxmail.com


代码审计

只需要使得admin=admin并且passwd=wllm,则可获取到flag,但是其中多了一个__wakeup的魔术方法
wakeup()魔术方法在执行unserialize()时,会优先调用这个函数,
我们修改一下即可绕过
__wakeup()函数漏洞原理:当序列化字符串表示对象属性个数的值大于真实个数的属性时就会跳过__wakeup的执行
O:6:"HaHaHa":3:{s:5:"admin";s:5:"admin";s:6:"passwd";s:4:"wllm";}

总结
魔法函数绕过绕过
__wakeup()函数漏洞原理:当序列化字符串表示对象属性个数的值大于真实个数的属性时就会跳过__wakeup的执行