1. 程式人生 > >CTF writeup -who are you?

CTF writeup -who are you?


題目為:who are you?
描述為:我是誰,我在哪,我要做什麼?


首頁內容為:Sorry. You have no permissions.此時推斷本題與cookie有關(50%的可能性)。檢視cookie,發現cookie中有一個名為role的資料(此時可以推斷此題有90%的可能性與此有關)。
檢視cookie
此時看role的值一定是明文加密後生成的。這時就Google或百度線上解碼,首先試試看是不是比較主流的base64加密方法(通常web常用的加密方法為base64 MD5 rot13)。發現經base64解碼後值為 f:5:”thrfg”;
base64解碼
發現這個字串非常像rot13加密的值,經rot13解碼後值為 s:5:”guest”;
rot13解碼


這時就很明瞭了,role的值是經base64加密後又經rot1加密處理。發現“guest”!!此時將guest改為admin,並經rot13加密base64加密後得到的值填入cookie的role中重新整理頁面。網頁跳轉並提示:Hello admin, now you can upload something you are easy to forget.
修改cookie
upload很重要,雖然提示要upload但並不知道要上傳什麼東西。檢視網頁原始碼發現有一句很重要的提示:filename = _POST[‘filename’]; data = _POST[‘data’]; 提示要構造post方式上傳filename和data。(有很多工具可以使用,如Firefox的hackbar外掛和burpsuit)利用burpsuit抓包並修改為POST上傳,新增 filename項和data項。
改包

發現回顯為no no no,想到data可能是用一個數組存取的內容,抱著試試的想法將data改為data[]其他內容不變(filename和data的值不重要)。回顯一個檔案地址,將地址打開出現答案:flag{}
修改data為陣列型別
succeed