【WP】MOCTF-逆向-writeup(下)
- 2020 年 1 月 2 日
- 筆記
MOCTF 逆向題 writeup
moctf平台:
http://www.moctf.com/challenges
後兩道題的 writeup,寫完後就安心去做 160個crackme了,嗯,感覺通過前幾個進步還挺大的
moctf 逆向第四題:crackme1
打開後啥都不要求輸入,出現一串字符,說是 flag,但是每次打開都不一樣

載入 OD,通過字符串找到

但是因為不知道該怎麼分析,乾脆直接段首下斷,然後單步跟蹤

找到算法部分,算法:
- 逐個取定義好的「2410488」
- 乘以 2 後減去 60 (十六進制)
- 除以 4 之後加上 3
- 對 10 取余,得到結果

在剛開始一直不知道這裡的數是怎麼出來的,在心裏把[edx+edx-0x60]當作一個地址了,後來發現,這他媽的不是存放的剛賦值的字符嘛!!

寫出腳本,跑出 flag:4533577

flag:moctf{4533577}
moctf 逆向第五題:crackme2
通過字符串定位獲取輸入的位置

然後按步跟蹤找到加密函數

步入加密 CALL,分析算法:
- 依次取輸入的字符串
- 從6開始,與輸入的字符串進行異或
- 異或結果與定義好的字符串進行比較

紅框圈出來的是定義好的字符串
0<1<>;?8:%w!##&#q./,x(,((

下面的那個 CALL 是進行對比的

可以看到我們輸入的進行加密後是 7F,而規定的應該是31

寫出腳本跑出應該輸入的字符串

輸入正確的後在進行測試,nice !!!

然而,這並不是 flag,需要將它轉換成字符串形式

77486572655f30735f666c4167
wHere_0s_flAg
所以 falg 是:moctf{wHere_0s_flAg}
呼~結束了,老老實實再學那 160 個 crackme 吧
