MRCTF 2020
Web
Ez_bypass
题目
<?php
include 'flag.php';
$flag = 'MRCTF{xxxxxxxxxxxxxxxxxxxxxxxxx}';
if (isset($_GET['gg']) && isset($_GET['id'])) {
$id = $_GET['id'];
$gg = $_GET['gg'];
if (md5($id) === md5($gg) && $id !== $gg) {
echo 'You got the first step';
if (isset($_POST['passwd'])) {
$passwd = $_POST['passwd'];
if (!is_numeric($passwd)) {
if ($passwd == 1234567) {
echo 'Good Job!';
highlight_file('flag.php');
die('By Retr_0');
} else {
echo "can you think twice??";
}
} else {
echo 'You can not get it !';
}
} else {
die('only one way to get the flag');
}
} else {
echo "You are not a real hacker!";
}
} else {
die('Please input first');
}MD5 绕过
构造 payload gg[]=1&&id[]=2 进行绕过即可
is_numeric() 函数绕过
构造 payload passwd=1234567a 进行绕过即可获得到 flag
Ezpop
0x00 POP 链
0x01 构造序列化
构造 Payload 如下
将回显进行 base64 解码后即可获得 flag 。
PYWebsite
查看源代码存在一串神秘 JS
进入到 ./flag 后回显提示 除了购买者和我自己,没有人可以看到flag ,那就试试改下 X-Forwarded-For: 127.0.0.1 ,再查看源代码就可以发现 flag 了。
Last updated