[MRCTF2020]Ez_bypass
Posted H3h3QAQ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[MRCTF2020]Ez_bypass相关的知识,希望对你有一定的参考价值。
[MRCTF2020]Ez_bypass
打开后是一串php代码
I put something in F12 for you
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');
}
}Please input first
打开靶机是一串php代码
审计过后发现是md5绕过
if (md5($id) === md5($gg) && $id !== $gg)
在这说一下原理:
md5()函数无法操作数组,返回NULL,两个NULL相等
即可绕过这一关
构造payload:
http://5c026421-c5fb-49bb-ae03-a80c3bf2bd3b.node3.buuoj.cn/?id[]=1&gg[]=1
is_numeric()
直接用1234567a 绕过即可
让后再用hackbar POST传值即可
以上是关于[MRCTF2020]Ez_bypass的主要内容,如果未能解决你的问题,请参考以下文章