web:[MRCTF2020]Ez_bypass

题目

点进题目

调整一下

进行代码审计,先看第一段

复制代码
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';

get参数传参,后判断md5后的值是否相等,这里为===强等于,可以将参数设置为数组进行绕过,若是双等号弱等于,可以找两个md5加密后开头都是0e的参数进行绕过(会被认为是科学计数法)

构造payload

复制代码
?gg[]=1&id[]=2
复制代码
 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');
}

用post传参password,使用了is_numeric判断是否是数字,若判断不是数字,就判断是否为1234567,这里需要绕过is_numeric

构造payload

复制代码
passwd=1234567%00

得到flag

相关推荐
默_笙4 分钟前
🏝 Docker 就是"房地产开发":从施工图纸到小区物业的容器化指南
前端·javascript
kyriewen8 分钟前
我手写了个极简版 React Router——才搞懂 v6 为什么砍了这么多 API
前端·javascript·程序员
a11177614 分钟前
Shirone 二次元博客主题 开源
前端·开源
IT_陈寒26 分钟前
Python的切片赋值把我坑惨了,这不是bug是特性
前端·人工智能·后端
掘金酱29 分钟前
【社区公告】致每一位掘友:关于这次调整, 想再说几句
前端·人工智能
CoderLiu31 分钟前
程序化工具调用(PTC)与动态工作流引擎:深入大模型工具调用的架构演进与实践
前端·人工智能·后端
码农胖大海41 分钟前
我的第一个产品,只有一段提示词
前端·ai编程·产品
邋遢道1 小时前
# 企业级 Agent 从 0 到 1(二):技术选型与最小骨架
前端·chrome
计算机魔术师1 小时前
我看了 OpenAI 首席科学家的最新长文,把原来的认知推翻了一遍
前端
乱码三千2 小时前
使用ComfyUI+MinMax-H3音视频模型生成视频
前端·后端·github