本题提示备份:
首先,可以用御剑等工具进行扫描,发现存在备份泄露,然后可以进行index.php.bak。对原码进行下载分析。

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

include_once "flag.php";
ini_set("display_errors", 0);
$str = strstr($_SERVER['REQUEST_URI'], '?');//获得的$str=包括?的参数
$str = substr($str,1);//把除问号以外的字符截取出来
$str = str_replace('key','',$str);
//把$str中的key匹配用空替代
parse_str($str);
//
echo md5($key1);

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

分析可发现 md5($key1) == md5($key2) && $key1 !== $key2 这句是关键。题目对key进行啦过滤
可以考虑构造kkeyey进行绕过。然后对key1,key2的值进行md5加密,并进行比较,如果md5加密的值一样而未加密的值不同,就输出flag.
有两种绕过方法:
1.md5()函数无法处理数组,如果传入数组,会返回NULL,所以两个数组经过加密后得到的都是NULL,也就是相等的。所以可以传入数组。
payload:http://120.24.86.145:8002/web16/?kkeyey1[]=anything&kkeyey2[]=anything
2.利用漏洞
如果两个字符经MD5加密后的值为 0exxxxx形式,就会被认为是科学计数法,且表示的是0*10的xxxx次方,还是零,都是相等的。
下列的字符串的MD5值都是0e开头的:

QNKCDZO

240610708

s878926199a

s155964671a

s214587387a

s214587387a
playload:http://120.24.86.145:8002/web16/?kkeyey1=QNKCDZO&kkeyey2=240610708
本文借鉴:http://www.zjzhhb.com/archives/190

  • 2019年上海嘉韦思杯writeup

    1土肥原贤二报错注入 1’ and updatexml(1,concat(0x7e,(database()),0x7e),1)# 然后注表1’ and updatexml(1,concat(0x7e,(select group_co...

    2019年上海嘉韦思杯writeup
  • ctf中web的常见知识点

    本地访问和伪造ipX-Forwarded-For: 127.0.0.1 域名解析可以更改HTTP头部host字段为flag.bugku.com 把 flag.bugku.com 解析到120.24.86.145 直接在 c:\wind...

    ctf中web的常见知识点
  • 2018安恒杯好黑的黑名单

    emmm,这个题是个好题。本题考察sql注入。绕过方法是以前没有遇见过的。里面利用了betwee and 的特性。 尝试对其进行注入,发现明显的过滤。一旦关键字在黑名单里,就会有:这么坏?想让我下面给你吃吗?XD 的字样。...

    2018安恒杯好黑的黑名单
  • insert into 注入

    题目题目连接:http://123.206.87.240:8002/web15/题目提示: flag格式:flag{xxxxxxxxxxxx} 不如写个Python吧 error_reporting(0); function ge...

    insert into 注入
  • bugku中的前女友(SKCTF)

    知识储备strcmp()函数int strcmp ( string $str1 , string $str2 ) 说明 注意该比较区分大小写。 参数 str1 第一个字符串。 str2 第二个字符串。 返回值 strcmp二进制安全...

    bugku中的前女友(SKCTF)
  • bugku中的welcome to bugkuctf

    知识储备本地包含file_get_contents() 函数定义和用法 file_get_contents() 函数把整个文件读入一个字符串中。和 file() 一样,不同的是 file_get_contents() 把文件读入一个字...

    bugku中的welcome to bugkuctf
  • hctf2018web

    首先,来说说本次比赛吧。 没有学到百度的真谛。(什么漏洞百度几乎都有,遇到不会就百度。发现源码也可百度理解) 发现可测试的地方要通过各种手段进行尝试。 ctf题与真正的漏洞有差距。需要换种思维来考虑问题。 然后,就...

    hctf2018web
  • 护网杯签到题

    首先,护网杯对新手不友好。看题看到绝望!!!全程懵逼状态。好啦不吐槽啦。。。。 进入正题:迟来的签到题 首先从文件下载下来看着像base64.但通过base64解码工具解码出来 V_UPVSUSUQR^W_###QV'R...

    护网杯签到题
  • linux三剑客

    前言之前用一些脚本都经常用到grep,sed,awk。但是一直不太熟悉,今天来学习一下,做个备忘录。 grep格式: grep [OPTIONS] PATTERN [FILE...] grep [OPTIONS] [-e PATTER...

    linux三剑客
  • i春秋2020新春战“疫”网络安全公益赛 web Writeup

    前言这次比赛题目质量挺好的,除啦环境可能有时候有点问题。(就让我遇到了。心态炸了一天。。。)其他都挺好的。 DAY1简单的招聘系统知识点:sql注入的联合注入或盲注存在注册和登陆功能,首先进行注册后登陆进系统,发现有一个模块是管理员才...

    i春秋2020新春战“疫”网络安全公益赛 web Writeup