最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

BUU-Web-[護(hù)網(wǎng)杯 2018]easy_tornado

2021-04-30 08:55 作者:雨落雪辰  | 我要投稿

前言

每做一次新類型的題,就是一個新的知識點,將知識點弄通,就是對自己的一次提升。

開工

對3個url都進(jìn)行訪問


可以注意請求頭

每個請求頭都帶有file_name和filehash

再看第三個文件hints.txt中明確寫出了加密方式


這里我們就可以開始構(gòu)建代碼

但是我們發(fā)現(xiàn)輸出結(jié)果于filehash中的結(jié)果不同

我這邊誤以為cookie_secret就是header中的Cookie,以至于加密結(jié)果錯誤

與此同時,我們試著直接訪問/file?filename=/fllllllllllllag

得到了以下報錯結(jié)果

這里試著對msg進(jìn)行模版注入/error?msg={{1}}

模版注入:不正確的使用flask中的render_template_string方法會引發(fā)SSTI。

  • 在Jinja2模板引擎中,{{}}是變量包裹標(biāo)識符。{{}}并不僅僅可以傳遞變量,還可以執(zhí)行一些簡單的表達(dá)式。

  • 通過{{}}變量包裹符進(jìn)行簡單的表達(dá)式測試來判斷是否存在SSTI漏洞

  • 例如{{config}}(查看flask全局變量),{{2*2}}

這里對下劃線做了過濾“_”因此無法直接通過命令獲取flag

通過查閱tornado的官方文檔


也就是說我們需要查找的cookie_secret是存放在對象self.application.settings["cookie_secret"]


從后續(xù)的文檔中獲取到self.application.settings的別名為RequestHandler.setting

官方給出了能調(diào)用的對象的別名

可以發(fā)現(xiàn)我們需要調(diào)用的RequestHandler的別名是handler

因此settings的位置為[handler.settings]


獲取到cookie_secret后就直接將其放入上面寫好的加密程序中就可以計算出flag文件的hash值

最終獲取到flag

總結(jié)

本次主要就是考察了模版注入的基本知識,做法也較為簡單,起初一直沒搞明白handler是怎么來的,通過逐步查閱官方文檔發(fā)現(xiàn)這個是官方定義的別名。

主要知識點

  • 模版注入(SSTI)

  • tornado中功能類的別名




BUU-Web-[護(hù)網(wǎng)杯 2018]easy_tornado的評論 (共 條)

分享到微博請遵守國家法律
新宾| 磐安县| 德化县| 团风县| 丰都县| 甘肃省| 鄂伦春自治旗| 孟津县| 达尔| 乌拉特前旗| 迁西县| 东港市| 大新县| 朔州市| 通渭县| 东乡族自治县| 达日县| 玛纳斯县| 台湾省| 安塞县| 邛崃市| 长岛县| 临沂市| 玛沁县| 台州市| 中超| 南溪县| 民县| 神池县| 威信县| 肥城市| 乌海市| 九寨沟县| 汕头市| 托里县| 东光县| 韶山市| 永济市| 耒阳市| 青神县| 乌拉特后旗|