攻防世界 web高手进阶区 7分题 wtf.sh-150
前言
繼續(xù)ctf的旅程
開始攻防世界web高手進階區(qū)的7分題
本文是wtf.sh-150的writeup
解題過程
進來是個論壇
有注冊登錄發(fā)布的文章
嘗試點擊下各個連接
查看源碼和掃描后臺
都沒有發(fā)現(xiàn)
那就注冊試試
并嘗試在注冊登錄發(fā)布里sql注入
無果
不斷嘗試
在展示文章的頁面 post.wtf 下發(fā)現(xiàn)路徑穿越漏洞
- 如果應(yīng)用程序使用用戶可控制的數(shù)據(jù),以危險的方式訪問位于應(yīng)用服務(wù)器或其它后端文件系統(tǒng)的文件或目錄,就會出現(xiàn)路徑遍歷
- 攻擊者可以將路徑遍歷序列放入文件名內(nèi),向上回溯,從而訪問服務(wù)器上的任何文件
出現(xiàn)源碼
(看的眼睛生疼。。。)
那第一反應(yīng)搜索flag關(guān)鍵詞
幸運的發(fā)現(xiàn)了
整理下如下
可以發(fā)現(xiàn)admin登錄就能獲取flag
搜索admin和user
發(fā)現(xiàn)有user文件夾
那就繼續(xù)
可以發(fā)現(xiàn)admin賬號和我們注冊的123賬號
然后下面這一串跟自己注冊賬號抓包對比
發(fā)現(xiàn)是cookie里的token
個么嘗試欺騙
得到flag。。。的一半Flag: xctf{cb49256d1ab48803
啊,果然沒那么簡單
回去繼續(xù)代碼審計
(看得眼睛生疼。。。)
突然想到這個網(wǎng)頁是wtf文件
這個是真沒接觸過
印象里似乎是魔獸世界看到過?
跑遠了。。。
反正盲猜下跟這個有關(guān)
找wtf關(guān)鍵詞
找到一段
整理下
發(fā)現(xiàn)服務(wù)器能夠解析并執(zhí)行 wtf 文件
如果還能夠上傳 wtf 文件并執(zhí)行的話,就可以達到控制服務(wù)器的目的
。。。。。。
還得尋找上傳辦法
。。。
哽住了
不會做了
感覺應(yīng)該是尋找注入或上傳后門的代碼
查了查wp
尋找到一個reply功能的代碼如下
function reply {local post_id=$1;local username=$2;local text=$3;local hashed=$(hash_username "${username}");curr_id=$(for d in posts/${post_id}/*; do basename $d; done | sort -n | tail -n 1);next_reply_id=$(awk '{print $1+1}' <<< "${curr_id}");next_file=(posts/${post_id}/${next_reply_id});echo "${username}" > "${next_file}";echo "RE: $(nth_line 2 < "posts/${post_id}/1")" >> "${next_file}";echo "${text}" >> "${next_file}";# add post this is in reply to to posts cacheecho "${post_id}/${next_reply_id}" >> "users_lookup/${hashed}/posts"; }存在路徑穿越
把用戶名寫在了評論文件的內(nèi)容中
如果用戶名是一段可執(zhí)行代碼,而且寫入的文件是 wtf 格式的
那么這個文件就能夠執(zhí)行我們想要的代碼
那就創(chuàng)建個用戶
在用戶名里寫入后門
然后評論并抓包
上傳個sh.wtf
即修改下post內(nèi)容
這里注意:
%09是水平制表符,必須添加,不然后臺會把后門當(dāng)做目錄去解析
(學(xué)到了!)
然后訪問sh.wtf
獲得了flag2的路徑
那就創(chuàng)建用戶名$/usr/bin/get_flag2
重復(fù)上述步驟
獲得flag2
最終flag:xctf{cb49256d1ab48803149e5ec49d3c29ca}
結(jié)語
前一半flag還行,路徑穿越說實話蠻快就試出來了
后一半就難頂了,代碼審計眼疼,wtf也不了解,后門上傳還是查wp的
知識點
- 路徑穿越
- cookie欺騙
- 代碼審計
- wtf文件
- 上傳后門
幾個wp
- 一個國外大神的wp
- 神仙系列
- 神仙題
繼續(xù)努力
總結(jié)
以上是生活随笔為你收集整理的攻防世界 web高手进阶区 7分题 wtf.sh-150的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里的面试官都喜欢问哪些问题?
- 下一篇: AutodeskCAD卸载后无法再次安装