reversing.kr easy crack 之write up
阿新 • • 發佈:2017-08-04
階段 clas 跳轉 開始 ack flag http sin pre
之前學逆向感覺學得一踏糊塗,這階段好多師傅帶我,一定要好好學,重新開始,認真學習。
來看打開可執行文件:
用ollydbg載入,單步執行後停到了入口點:
分析入口點,並沒有加殼,於是F9執行程序,跳出了程序執行框,隨便輸入些字符,出現了錯誤框的提示:
F12暫停程序後Alt+k查看調用棧:
補充:
MessageBox指的是顯示一個模態對話框,其中包含一個系統圖標、 一組按鈕和一個簡短的特定於應用程序消息,如狀態或錯誤的信息。消息框中返回一個整數值,該值指示用戶單擊了哪個按鈕。
在圖中高亮處點擊右鍵,選擇show call進入程序段,發現4個判斷語句與密碼有關:
在以上4個跳轉區以及004010b0地址處的比較命令處下斷點後,重新運行,此時輸入
程序運行到第一個斷點處:
得到的信息是第二位與a比較,f8繼續執行,為了不讓jnz跳轉改變z為1,如圖:
f8一直單步執行到如圖:
查看椎棧34與5y比較
繼續執行:
補充爆破方法:
遇到跳轉將z改為1,一直向下執行:
如圖是最後9位密碼,繼續向下執行,遇到跳轉z改為1,得到第一位的值:0x45=E
所以 得到密碼:
Ea5yR3versing
如圖,我們成功了:
用過了ollydbg,我們用ida來分析一下:
直接定位到main函數:
分析函數算法:
v3=a,v4=a5y,v5=aR3versing,string=E
拼接後得到flag:Ea5yR3versing
reversing.kr easy crack 之write up