高校戰“疫”網絡安全分享賽

2020疫情期間高校戰“疫”網絡安全分享賽,做了下RE沒做出來,然後去做了點MISC,結果只做出點MISC來。

MISC

2019-nCoV

簽到題flag如下:

flag{shijiejiayou}

簡單MISC

提示爲簡單隱寫術。附件中一張jpg圖片和一個名爲flag.zip的加密壓縮包,很明顯是讓我們利用jpg獲得密碼解壓壓縮包。
我們猜測這個圖片中可能存在.txt文件保存密碼,16進制查看器中查看下驗證猜想。
在這裏插入圖片描述
在kali中利用binwalk分離出來,並查看
在這裏插入圖片描述
在這裏插入圖片描述
得到莫爾斯碼,解碼得到密碼,解碼壓縮包,得到flag.txt,裏面是一串base64碼解碼得到flag

Th1s_is_FlaG_you_aRE_rigHT

Reverse

cyclegraph

這道題,吃了不習慣看彙編的虧,老是死磕IDA的僞代碼,太過依賴僞代碼了,如果早點彙編和僞代碼結合看的話就不會耗時這麼久了。

在這裏插入圖片描述
我們注意第二個do-while循環的中兩個if的判斷條件,只要仔細一看就會發現這個很明顯特點,第一次循環時表達式左邊的值是確定的,所以我們可以得到第一個正確的輸入(當然是flag{}花括號中的輸入的第一個),然後基於第一次循環的條件,我們可以獲得第二次循環時第二個正確的輸入字符,如此循環,直至循環結束。這裏我卡了很久,容我說下我曲折的經歷。起初我一直想辦法算左邊表達式的值,算算算算,根據那個初始化的數據算,可是一直有問題,一直弄不出,明明知道這循環幹什麼可是就是拿不到flag,很是煩躁,也怪人太傻,如果看下彙編,IDA早就幫你算好了。就像下面:兩處if的判斷條件的表達式中,彙編形式左邊分別對於爲EAX和ESI,讓程序跑到這就行了。
在這裏插入圖片描述
下斷點,觀察2個CMP語句中EAX,ESI的值變化,記錄下來。就可以得到flag了,如下:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章