2020太湖杯 | Wp及复现
文章目錄
- Web
- 0x01:checkInGame
- 0x02:easyWeb
- 0x03:ezMd5
- 0x04:CrossFire
- MISC
- 0x01:misc
- 0x02:memory
- 0x03:broken_secret
- 參考博客
Web
0x01:checkInGame
直接抓包攔截著,然后就玩游戲就可以了
0x02:easyWeb
抓包發(fā)現(xiàn)是python,而且有輸入框,第一反應(yīng)想到的便是ssti模板注入,但是過濾了{(lán) },之前遇到的都是過濾了{(lán){,這種還好繞過,但是沒有接觸過也沒查到相關(guān)資料就回歸到題目上去,發(fā)現(xiàn)了
字符規(guī)范器,是不是找一些特殊字符可以恢復(fù)成{這種形式,就找一下跟{類似的特殊符號試一下
果然可以替換成功
在測試過程中發(fā)現(xiàn)單引號也被過濾掉,單引號比較容易繞過,只需使用request.args來進(jìn)行繞過即可。
做的過程中,卡死在這一步了,賽后看了師傅的payload,自己也模仿一下:
str=%EF%B8%B7%EF%B8%B7().__class__.__bases__[0].__subclasses__()[177].__init__.__globals__.__builtins__[request.args.shy1](request.args.shy2).read()%EF%B8%B8%EF%B8%B8 ?shy1=open­2=/etc/passwd
最后讀取一下flag就可以了
除此之外,還可以使用Unicode字符繞過
參考師傅的payload:
{{url_for.__globals__['__builtins__']['eval']('__import__("os").popen("cat /flag").read()')}}看來之后還是要多準(zhǔn)備一些payload
0x03:ezMd5
0x04:CrossFire
MISC
0x01:misc
提示:MISC1 hint:希爾密碼->rabbit
給了一個(gè)壓縮包,里面有兩個(gè)文件
doc文件是加密的,fun.zip里面有一個(gè)加密的音頻,找密碼、爆破都嘗試了發(fā)現(xiàn)也沒線索,猜測是doc文件是偽加密,先把fun.zip給刪了,再破解下偽加密試試。
確實(shí)是偽加密,打開doc文件,有內(nèi)容
下面兩行是因?yàn)橹鞍褀ord文檔中顯示隱藏文字的按鈕給打開了,復(fù)制不了可以使用下ppt
根據(jù)提示是希爾密碼,直接在線解密
還有rabbit解密,得到這個(gè)應(yīng)該便是密鑰,在繼續(xù)解一下
再通過base32->Unicode解碼->新佛曰,得到最終的密碼
得到音頻文件,直接頻譜圖分析即可
0x02:memory
提示:問windows動(dòng)態(tài)鏈接庫管家吧,他會告訴你answer
感覺這個(gè)提示有點(diǎn)小坑,當(dāng)時(shí)做的時(shí)候重點(diǎn)就去看動(dòng)態(tài)鏈接庫了,結(jié)果最終flag藏在圖片中。
volatility -f dum.raw --profile=Win7SP0x86 filescan | grep -E 'jpg|png|jpeg|bmp|gif'
將幾個(gè)照片都dump下來,查看最后一個(gè)發(fā)現(xiàn)是flag
0x03:broken_secret
沒做出來,等師傅的Wp出來之后,再看看怎么做
參考博客
https://oatmeal.vip/ctf-wp/game/2020-thb/
總結(jié)
以上是生活随笔為你收集整理的2020太湖杯 | Wp及复现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 内存取证——volatility命令
- 下一篇: MISC | base64隐写