摘要:作者逆向驛站微信公眾號逆向驛站知乎逆向驛站依然是的,而且沒殼子,條線比較清晰,算法也不難,非常適合新入門的來練習(xí)快過年了,系列年前就停更在吧,祝大家新年年后繼續(xù)準備環(huán)境和工具虛擬機環(huán)境學(xué)習(xí)層次逆向分析程序驗證流程邏輯解密算法,寫注冊機積累程
作者:逆向驛站
微信公眾號:逆向驛站
知乎:逆向驛站
crackme006,依然是delphi的,而且沒殼子,條線比較清晰,算法也不難,非常適合新入門的來練習(xí).準備
快過年了,Crackme系列年前就停更在006吧,祝大家新年666 ,年后繼續(xù)
【環(huán)境和工具】
win7/xp虛擬機環(huán)境
CrackMe006(aLoNg3x.1.exe)
ollydbg
Dededark
【學(xué)習(xí)層次】
逆向分析程序驗證流程邏輯
解密算法,寫注冊機
積累Delphi程序逆向特點經(jīng)驗
實戰(zhàn)圖文最終效果展示
程序驗證流程邏輯圖
動態(tài)分析
1.程序觀察
旁邊既然有個help,我們當然要看了,四個彈框,有實際信息價值的是頭兩個,如圖
大體意思是,這個crackme的最終目標是隱藏ok和cancella按鈕來觀看完整的Ringzero logo。
2.控件ID,事件函數(shù)信息
依然老規(guī)矩,既然是delphi的程序,我們就先用dededark給控件信息和事件函數(shù)信息搜集出來
3.控件ID常量搜索法,打開入手點
程序開始是ok按鈕是禁用狀態(tài),cancella按鈕是可以點擊的,那么我們就從cancella入手,兩個方向,你可以去找cancellaclick事件的函數(shù)入手,也可以從cancella控件ID入手,我這里選擇后者,因為最終目的是cancella要被隱藏起來,無論如何一定會用到控件ID
查找→所有常量→2D0(cancella按鈕控件ID),結(jié)果如下
一共有四個地方用到了這個控件ID,我們分別跟入查看哪個是我們想找的隱藏這個控件的反匯編代碼,從上至下依次如下
找到了入手點,我們開始上下閱讀函數(shù)塊,發(fā)現(xiàn)這正是cancellaclick事件函數(shù)
4.分析Cancellaclick中算法
在Cancellaclick函數(shù)入口處下斷點,然后用戶名輸入123456,注冊碼輸入654321,然后開始動態(tài)調(diào)試分析,F(xiàn)8步過分析如下圖
F7跟如算法call仔細分析,如下圖
這種不是摘要hash的,是直接可以逆推計算出注冊碼,根據(jù)以上算法的反匯編分析,寫出逆推注冊碼的源碼,如下
例如我們輸入的用戶名是123456,逆推注冊碼計算如下
"123456"的第五個字符是"5",asc碼是53,即十六進制0x35
除以7余數(shù)是4,再加2是6
6的階乘是6 5 4 3 2 *1,等于720 ,即十六進制的0x2D0
123456每個字符的asc碼相加是0x31+0x32+0x33+0x34+0x35+0x36,結(jié)果是0x135
0x135 乘以0x2D0是0x36510
0x36510比注冊碼的十六進制形態(tài)大0x7A69
即注冊碼是0x36510-0x7A69 = 0x2EAA7 ,即十進制是191143
算出了注冊碼,我們來測試一下,如下動圖
Cancella按鈕消失
5.分析OK按鈕中算法
有了如上的過程作為經(jīng)驗,我們"依葫蘆畫瓢",來進行ok按鈕中的算法分析,依然是okClick事件入口下斷,F(xiàn)8動態(tài)分析,結(jié)果如下
F7跟如算法call仔細分析,如下圖
分析后發(fā)現(xiàn),這個算法是根據(jù)已經(jīng)算出的注冊碼,再次要求用戶名合規(guī),算法并不難,而且很敏感的看到0x41,0x41對應(yīng)的asc字符是大寫字母A,而0x41加上的數(shù)字的取值范圍是0-0x19,即十進制0-25,那一看就知道,就是26個大寫字母范圍內(nèi)了,這時候你可以{{BANNED}}的暴力枚舉也行,當然這個也是可以逆推出來,我們還是選擇逆推吧。源碼如下
我們剛輸入的注冊碼是191143,逆推出用戶名應(yīng)該是"BXDEUG",驗證如下動圖
OK按鈕消失,至此全部搞定, 是不是感覺不難,去網(wǎng)盤中下載,試試吧
補充知識點
再CancellaClick事件算法中,有個階乘計算,函數(shù)內(nèi)部反匯編代碼如下,可以作為知識點積累,下次看到這個第一時間就能反應(yīng)過來,提高效率,逆向的老手往往是這種知識碎片很多,而且腦部搜索算法很精準
最后,喜歡這里的請推薦給你身邊的朋友吧(滲透測試、逆向破解、病毒分析、信息安全等)
文章中涉及軟件、課件、源碼等均在網(wǎng)盤,為避免網(wǎng)盤鏈接失效,公眾號中回復(fù):網(wǎng)盤
歡迎關(guān)注微信公眾號:逆向驛站
相關(guān)文章
● CrackMe-005精解(下)
● CrackMe-005精解(上)
● CrackMe-004精解
● CrackMe-003精解
● CrackMe-002精解
● CrackMe-001精解
本期標簽:dededark|delphi反匯編|crackme|crackme6|crackme06
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/11458.html
摘要:所以按鈕消失的方法是跟一模一樣的,只是他消失后,不再顯示其他按鈕而已,至此注冊成功,的標題也溫順的變成了了。 作者:逆向驛站微信公眾號:逆向驛站知乎:逆向驛站showImg(https://segmentfault.com/img/bVbokBO?w=1100&h=627); crackme007,是006的升級版,程序開發(fā)者給出的難度是3星,可能是迷惑有點多?個人覺得條線還是比較清晰...
摘要:作者逆向驛站微信公眾號逆向驛站知乎逆向驛站上篇說了具體方法,下篇來發(fā)逆向分析過程,看看老夫是如何得到上篇的具體方法的準備環(huán)境和工具虛擬機環(huán)境專用脫殼器學(xué)習(xí)層次爆破,但是這個作者聲明了,爆破他是不認可的解密流程,寫注冊機積累程序逆向特點經(jīng)驗詳 作者:逆向驛站微信公眾號:逆向驛站知乎:逆向驛站showImg(https://segmentfault.com/img/bVbnHJT?w=11...
摘要:作者逆向驛站微信公眾號逆向驛站知乎逆向驛站若不是老鳥,是不是經(jīng)常為各種匯編跳轉(zhuǎn)指令查資料影響效率,更影響潛意識整體分析的靈光一現(xiàn)。 作者:逆向驛站微信公眾號:逆向驛站知乎:逆向驛站showImg(https://segmentfault.com/img/bVbnMTu?w=1100&h=762); 若不是老鳥,是不是經(jīng)常為各種JXX匯編跳轉(zhuǎn)指令查資料?影響效率,更影響潛意識整體分析的靈...
閱讀 1324·2021-11-15 11:37
閱讀 2581·2021-09-22 10:56
閱讀 3405·2021-09-06 15:11
閱讀 816·2021-08-31 09:45
閱讀 2914·2021-07-28 11:16
閱讀 1819·2019-08-30 15:44
閱讀 488·2019-08-30 13:22
閱讀 3358·2019-08-30 13:18