i春秋登录
打开是个普普通通的表单提交网页
查看源码,没什么东西
抓包试试再
没找到什么有用的信息
尝试注入
用户名admin’ or ‘1’=’1 密码随便输
弹出密码错误
再试试admin’ or ‘1’=’2
弹出用户不存在
说明这里存在注入点,而且是盲注
构造payload:admin' or user() regexp '^a'%23 (使用java的正则表达式来进行盲注,用#的url编码%23来注释掉后面的内容) 密码随意
然后传入intruder中进行爆破
①clear掉其他的变量,对a加上变量
②在payloads中选择add from list添加a-z,A-Z,0-9的字典
③开始爆破,发现两条回显长度不一样的字母,说明第一位字母为u(或U)
④在payloads的positions中,在变量$a$前添加刚刚爆破出的第一位字母u进行爆破第二位
⑤爆出第二位是s
⑥依次爆出user()的全称为user
就可以使用这种方法依次爆出表单中username对应class的字段
(最后爆出来是bctf3dm1n)
再是密码(爆出来是2bfb1532857ddc0033fdae5bde3facdf)
这是md5加密的,一看这么长就不对劲,md5解密出来是adminqwe123666
然后拿去登录
看到三个文件名
第一个文件很奇怪
.bctfg1t的格式
又根据提示这道题有缓存,隐藏文件
尝试githack下载试试(我用的gtihack拓展版:https://github.com/gakki429/Git_Extract)
下载下来有个flag.php打开试试
告诉我们flag不在这里,但是flag就在git中
修改另一个带有flag名字的历史文件后缀为php,将其打开
发现他告诉我们下一个文件
直接访问,得到flag