CTF-Web-[极客大挑战 2019]BuyFlag

CTF-Web-[极客大挑战 2019]BuyFlag

博客说明

文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢!本文仅用于学习与交流,不得用于非法用途!

CTP平台

网址

https://buuoj.cn/challenges

题目

Web类,[极客大挑战 2019]BuyFlag

CTF-Web-[极客大挑战 2019]BuyFlag_第1张图片

打开题目的实例

CTF-Web-[极客大挑战 2019]BuyFlag_第2张图片

思路

看到这个题目,应该是php之类的,我们使用bp查看一下

CTF-Web-[极客大挑战 2019]BuyFlag_第3张图片

发现里面有一个buy.php文件,直接打开看看,里面有一段被注释的代码

if (isset($_POST['password'])) {
    $password = $_POST['password'];
    if (is_numeric($password)) {
        echo "password can't be number
"; }elseif ($password == 404) { echo "Password Right!
"; } }

意思是说要经过post传输密码要等于404,但是404又不能被is_numeric函数检测出来,所以我们需要绕开它,使用在后面加上%20跳过,然后在cookie里面有个user=0,我们改一下,将之改为user=1,使用以下数据去访问

注意要是post请求

CTF-Web-[极客大挑战 2019]BuyFlag_第4张图片

然后它说我们的长度有问题,应该是strcmp函数检测的

那我们改一下,使用money[]可以绕开strcmp函数

CTF-Web-[极客大挑战 2019]BuyFlag_第5张图片

得到flag

感谢

BUUCTF

以及勤劳的自己

你可能感兴趣的:(CTF-Web-[极客大挑战 2019]BuyFlag)