bugku web 备份是个好习惯

题解

打开网站只有一串不知道是啥的数字(后面知道了,是md5的空字符串)

看了网上的题解,大部分都是用御剑扫的…嗯好吧,真是简单粗暴,不过确实有用,找到了index.php.bak,下载下来是如下的代码,在这里做个注释

<?php
/**
 * Created by PhpStorm.
 * User: Norse
 * Date: 2017/8/6
 * Time: 20:22
*/

include_once "flag.php";
# 将display_errors值置为0
ini_set("display_errors", 0);
# 返回除了网址以外的,以'?'开头的请求部分
$str = strstr($_SERVER['REQUEST_URI'], '?');
# 去掉问号
$str = substr($str,1);
# 把str中的key都替换成空的
$str = str_replace('key','',$str);
/*
 将请求的url中的值都存到相应变量中
 如处理完的str为key1=kad&key2=yyy
 那么key1和key2的值则分别为kad和yyy
 */
parse_str($str);
echo md5($key1);

echo md5($key2);
if(md5($key1) == md5($key2) && $key1 !== $key2){
    echo $flag."取得flag";
}
?>

因此构造一下,可以用http://123.206.87.240:8002/web16/?kekeyy1=QNKCDZO&kekeyy2=s878926199a,其中QNKCDZOs878926199a的md5编码都以0e开头,这里用到了php中==的绕过 【ctf知识】php中双等号在判值上的漏洞

提交上面的payload拿到flag
在这里插入图片描述
真的学到了好多东西,路还长着嘞qwq

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值