美文网首页美文共赏
PHP-Wakeup魔术漏洞骚操作

PHP-Wakeup魔术漏洞骚操作

作者: H_00c8 | 来源:发表于2021-12-12 16:14 被阅读0次
    image.png

    起因

    前两天在攻防世界做题的时候,看到了一个Wakeup绕过的典型案例。正好拿来写一篇随笔记录。


    image.png

    案例

    进入后,我们得到题目代码,我们现在需要读一下这个代码。
    先对代码进行一个审计
    __wakeup()很容易绕过,只需要令序列化字符串中标识变量数量的值大于实 际变量即可绕过__wakeup()函数
    _wakeup()的绕过,大概应该是PHP5<5.6.25,PHP7 < 7.0.10 的版本存在wakeup的漏洞。当反序列化中object的个数和之前的个数不等时,wakeup就会被绕过。
    ( 在反序列化执行之前,会先执行__wakeup这个魔术方法,所以需要绕过,当成员属性数目大于实际数目时可绕过wakeup方法,正则匹配可以用+号来进行绕过。)
    正则匹配这里匹配的是 O:4,我们用 O:+4 即可绕过(看到类似题才想到所以构造 payload
    a= new Demo('fl4g.php'); b=serialize(a); b=strreplace(′O:4′,′O:+4′,b);b=str_replace('1:{','2:{',b); echo base64_encode(b);

    image.png

    Flag

    image.png

    拿到Base64编码后的反序列化字符串,TzorNDoiRGVtbyI6Mjp7czoxMDoiAERlbW8AZmlsZSI7czo4OiJmbDRnLnBocCI7fQ==
    给网站进行get传参,拿到flag


    image.png
    image.png

    相关文章

      网友评论

        本文标题:PHP-Wakeup魔术漏洞骚操作

        本文链接:https://www.haomeiwen.com/subject/hubrfrtx.html