题目
先通过目录扫描找到题目
<?php
error_reporting(0);
show_source("cl45s.php");
class wllm{
public $admin;
public $passwd;
public function __construct(){
$this->admin ="user";
$this->passwd = "123456";
}
public function __destruct(){
if($this->admin === "admin" && $this->passwd === "ctf"){
include("flag.php");
echo $flag;
}else{
echo $this->admin;
echo $this->passwd;
echo "Just a bit more!";
}
}
}
$p = $_GET['p'];
unserialize($p);
?>
思路
定义了一个名为wllm的类,里面有两个公共属性:public $admin;public $passwd;admin和passwd。
构造函数__construct()将它们初始化为"user"和"123456"。然后在析构函数__destruct()中,检查admin是否等于"admin",passwd是否等于"ctf",如果满足条件就包含flag.php并输出$flag,否则输出admin、passwd和一个提示信息。
最后,代码通过GET参数p获取输入,并对其进行反序列化操作。目

最低0.47元/天 解锁文章
453

被折叠的 条评论
为什么被折叠?



