最資訊丨Crackme逆向分析365例-001
來源: 嗶哩嗶哩 2023-05-15 06:01:07
【Crackme逆向分析365例-001】
(資料圖)
表哥是神,誤落凡塵
說明:本篇練習(xí)是表哥逆向分析365系列的第1例,所使用的CrackMe本體來自于網(wǎng)站:https://crackmes.one/,您可在此網(wǎng)站通過作者名或本體名查詢下載,也可從本貼中提供的網(wǎng)盤地址下載,其CrackMe本體信息如下所示:
?? 本體名稱:[EASY] CrackMe
?? 本體作者:endofmarconia
?? 上傳日期:2023-05-03
?? 適用平臺(tái):Windows
?? 難度【1-6】:1.2
?? 描述:本CrackMe專門為初學(xué)者制作,請(qǐng)破解用戶名和密碼以便訪問程序。
1、本次練習(xí)所需軟件及下載地址:
?? 十六進(jìn)制編輯器:HxD64,版本:2.5.0.0,下載地址:https://www.123pan.com/s/egPeVv-vrLQ3.html
?? PE文件信息觀察器:ExeinfoPE,版本:0.0.7.7,下載地址:https://www.123pan.com/s/egPeVv-drLQ3.html
?? 動(dòng)態(tài)調(diào)試器:x32dbg/x64dbg,版本:2023-04-30,下載地址:https://www.123pan.com/s/egPeVv-TrLQ3.html
?? CrackMe本體及附件,版本:2023-05-03,下載地址:https://www.123pan.com/s/egPeVv-S8LQ3.html
2、逆向分析之前的準(zhǔn)備工作:
2.1、將下載的CrackMe本體解壓到某個(gè)空白的逆向分析文件夾下(最好是全英文路徑),并確保能夠正常運(yùn)行(云盤下載已經(jīng)附帶了4個(gè)缺失的運(yùn)行庫,若在您的電腦上還是不能運(yùn)行,請(qǐng)根據(jù)提示的庫名在:https://cn.dll-files.com網(wǎng)站查詢下載并保存到與CrackMe本體相同文件夾內(nèi))。
2.2、復(fù)制CrackMe本體文件[EASY] CrackMe.exe并重新命名為CM001.exe,保證原始CrackMe本體文件的備份,逆向分析時(shí)僅針對(duì)CM001.exe。
2.3、啟動(dòng)ExeinfoPE.exe,加載CM001.exe,根據(jù)ExeinfoPE的分析數(shù)據(jù),手動(dòng)列出文件信息如下:
?? 文件名稱:CM001.exe
?? 殼:無殼(不需要脫殼,可直接進(jìn)行分析)
?? 位數(shù):64位程序(需要使用x64dbg調(diào)試器進(jìn)行分析)
?? 編譯器:Microsoft Visual C++ 2022
?? 子系統(tǒng):控制臺(tái)程序
?? 映像基地址:0x140000000
?? 重定位段:有(需要修改文件屬性標(biāo)志字段,使其運(yùn)行時(shí)不再重定位)
2.4、啟動(dòng)HxD64.exe,加載CM001.exe,修改文件屬性標(biāo)志字段(從PE頭偏移22個(gè)字節(jié)),將其值從0x22修改為0x23并保存文件,如圖所示:
這樣的話,映像基地址將固定在0x140000000,方便本次練習(xí)場(chǎng)景重現(xiàn)。
2.5、運(yùn)行CM001.exe文件,隨便輸入用戶名和密碼后,程序出錯(cuò)了(錯(cuò)誤信息為:Wrong username or password.),如下圖所示:
3、針對(duì)CM001.exe文件進(jìn)行爆破
3.1、思路:由于出現(xiàn)了錯(cuò)誤信息,我們有理由相信,程序?qū)斎氲臄?shù)據(jù)進(jìn)行了某種計(jì)算,并且對(duì)計(jì)算結(jié)果進(jìn)行了驗(yàn)證判斷,以此決定顯示正確或錯(cuò)誤信息。利用此思路,以當(dāng)前出錯(cuò)信息加載指令為基點(diǎn),通過向上或向下來查找到正確的條件轉(zhuǎn)移指令,然后修改這條指令,使其忽略驗(yàn)證結(jié)果,直接顯示正確信息。
3.2、啟動(dòng)x64dbg.exe,在菜單中打開【選項(xiàng)】窗口,在【事件】選項(xiàng)中僅選擇【入口斷點(diǎn)】(若已經(jīng)配置好了,可省略此步驟)。
3.3、根據(jù)經(jīng)驗(yàn),出錯(cuò)信息很可能以字符串的形式存儲(chǔ)在常量數(shù)據(jù)段中,我們需要在代碼段中定位出加載出錯(cuò)信息字符串的指令地址?,F(xiàn)在點(diǎn)擊【打開文件】按鈕,加載CM001.exe文件,此時(shí)RIP指向了程序入口點(diǎn)地址:0x1400114EC,點(diǎn)擊【搜索字符串】按鈕,在【引用】頁面底部的搜索框中輸入:wrong username or password進(jìn)行過濾后,共找到1處指令地址:0x140018795。鼠標(biāo)左鍵雙擊地址,轉(zhuǎn)到【CPU】頁面的相關(guān)位置,以此條指令為基點(diǎn)(lea rdx,[140023908]),向上查找最近的條件轉(zhuǎn)移指令,其指令地址為:0x140018793(在本例中,其與基點(diǎn)緊挨著),如圖所示:
3.4、既然基點(diǎn)地址(0x140018795)是顯示錯(cuò)誤信息的指令分支,那么可以推測(cè),紅線盡頭所指的地址(0x1400187DC)就是顯示正確信息的指令分支了,我們只要修改地址(0x140018793)處的指令,使其忽略條件判斷,直接轉(zhuǎn)移到地址(0x1400187DC)處,就可以完成本次的爆破過程。
3.5、鼠標(biāo)左鍵單擊地址(0x140018793),按空格鍵彈出匯編窗口,將je修改為jmp,其余信息保持不變,然后按【確定】按鈕使修改生效,如圖所示:
點(diǎn)擊【補(bǔ)丁】按鈕或Ctrl+P打開補(bǔ)丁窗口,點(diǎn)擊【修補(bǔ)文件】按鈕將修改另存為:CM001-已爆破.exe文件,如圖所示:
3.6、退出所有程序,運(yùn)行CM001-已爆破.exe文件,看看爆破效果如何,如圖所示:
效果很明顯,同樣的輸入數(shù)據(jù),不同的輸出結(jié)果,說明爆破成功。
4、針對(duì)CM001.exe文件進(jìn)行追碼
4.1、思路:在上面的爆破過程中,我們已經(jīng)定位出了顯示成功信息的指令分支地址:0x1400187DC,所以我們可以從此地址進(jìn)行反推,看看有哪些轉(zhuǎn)移指令與此相關(guān),從而推斷出關(guān)鍵call,然后對(duì)這些關(guān)鍵call進(jìn)行詳細(xì)分析,理解其針對(duì)輸入數(shù)據(jù)的計(jì)算邏輯以便追碼。
4.2、啟動(dòng)x64dbg.exe,點(diǎn)擊【打開文件】按鈕,加載CM001.exe文件,此時(shí)RIP指向了程序入口點(diǎn)地址:0x1400114EC,按Ctrl+G打開地址轉(zhuǎn)移窗口,輸入:0x1400187DC,如圖所示:
然后按【確定】按鈕,這時(shí)可通過左側(cè)紅線觀察到指令來源路線有2條,在源頭附件還發(fā)現(xiàn)了2個(gè)call指令(地址分別為:0x140018789和0x140018772),這2個(gè)指令就是關(guān)鍵call了,分別在這2個(gè)地址上按F2鍵下執(zhí)行斷點(diǎn),如圖所示:
4.3、按F9鍵運(yùn)行程序,然后在程序控制臺(tái)界面上輸入用戶名(SMKB)和密碼(123456789),回到調(diào)試器界面,這時(shí)已經(jīng)中斷在第1個(gè)關(guān)鍵call上,我們先看一下函數(shù)的參數(shù)是什么(64位程序規(guī)則,前4個(gè)參數(shù)通過rcx、rdx、r8、r9傳遞,多于4個(gè)的參數(shù)通過堆棧傳遞),鼠標(biāo)右鍵點(diǎn)擊寄存器(rcx和rdx),選擇【在內(nèi)存窗口中轉(zhuǎn)到】(內(nèi)存1和內(nèi)存2),通過觀察內(nèi)存窗口發(fā)現(xiàn),rcx指向我們輸入的用戶名SMKB,rdx指向字符串kanyefan,(注意:其實(shí)真實(shí)指向的是某個(gè)結(jié)構(gòu)指針,但也無所謂了,因?yàn)榻Y(jié)構(gòu)中包含了我們需要關(guān)注的字符串,能理解就行),據(jù)此推測(cè),kanyefan可能是超級(jí)用戶,不需要判斷密碼。
4.4、按F9鍵繼續(xù)運(yùn)行,中斷在第2個(gè)關(guān)鍵call上,使用同樣的操作方法觀察內(nèi)存窗口發(fā)現(xiàn),rcx指向我們輸入的密碼123456789,而rdx這次指向了堆中的一個(gè)地址:0x4376E0,再次在內(nèi)存窗口中轉(zhuǎn)到這個(gè)堆地址,發(fā)現(xiàn)字符串kanyewestlover911,我們據(jù)此大膽推測(cè),這是一個(gè)超級(jí)密碼。
4.5、到此為止,已經(jīng)不需要具體分析匯編代碼了,可以確定:如果輸入的用戶名是kanyefan,那么密碼可以隨便了,否則,輸入的密碼必須是kanyewestlover911,在這種情況下就不會(huì)出現(xiàn)錯(cuò)誤信息了,我們?cè)囈辉嚢?,如圖所示:
果然如此,看來作者是kanye west(坎耶-維斯特)的腦殘粉啊。
PS:本貼到此結(jié)束,若轉(zhuǎn)載請(qǐng)保留全部信息,期待我們?cè)谙乱毁N再見。
標(biāo)簽:
猜你喜歡

最資訊丨Crackme逆向分析365例-001
2023-05-15 06:01:07

多家銀行今起正式調(diào)整兩類存款利率 有銀行下調(diào)幅度達(dá)55個(gè)基點(diǎn)
2023-05-15 06:02:14

期后事項(xiàng)聲明書_期后事項(xiàng) 天天熱文
2023-05-15 05:42:24

世界實(shí)時(shí):巴特勒自曝巨星待遇!萊利請(qǐng)他穿23號(hào):熱火曾為喬丹退役該號(hào)碼
2023-05-15 05:27:15

記者:曼城給京多安的續(xù)約合同是一年,他被巴薩的兩年合同吸引 環(huán)球百事通
2023-05-15 03:59:39

即時(shí):有含義的男孩名字帶木字_有含義的男孩名字
2023-05-15 04:04:26

一體化壓鑄板塊開盤活躍 嶸泰股份漲超8%
2023-05-15 02:56:32

八哥影視解說_八哥影視
2023-05-15 02:39:41

26個(gè)字母順序表?_26個(gè)字母順序表
2023-05-15 01:41:01

全球快看:船從海中流入河流浮力是否變化_船從河里開到海里浮力變化如何
2023-05-15 01:50:20

李秘:大陸對(duì)臺(tái)政策外剛內(nèi)柔有善意
2023-05-15 00:57:53

室內(nèi)游樂場(chǎng)英文_游樂場(chǎng)英文 全球今日訊
2023-05-15 00:41:16

環(huán)球快訊:北京地鐵20號(hào)線線路圖_北京地鐵20號(hào)線
2023-05-14 23:06:19

全球滾動(dòng):鄭州到海口機(jī)票價(jià)格表查詢_鄭州到??跈C(jī)票價(jià)格
2023-05-14 22:54:58

如何吃魷魚_送老年人禮物排行榜
2023-05-14 22:23:07

今日產(chǎn)品合格證有什么要求(產(chǎn)品合格證 必須要包含什么內(nèi)容請(qǐng)?zhí)峁┫嚓P(guān)規(guī)定的出處)
2023-05-14 22:17:48

vivo X90S預(yù)計(jì)將配備3.35 GHz CPU和Wi-Fi 7支持_今日聚焦
2023-05-14 21:32:10

電視機(jī)頂盒密碼是多少(電視機(jī)頂盒密碼是多少移動(dòng)) 環(huán)球聚焦
2023-05-14 21:38:47

明朝時(shí)候,有人自稱目睹過雷神,并記錄下雷神的長(zhǎng)相
2023-05-14 21:05:39

飛越鐵窗的母愛,因阻隔更顯珍貴
2023-05-14 20:53:26

環(huán)球今日訊!2023健康中國(guó)發(fā)展大會(huì)·貴州疾控展區(qū)圓滿閉幕
2023-05-14 20:05:17

因在非公開發(fā)行股票及持續(xù)督導(dǎo)中未勤勉盡責(zé) 東北證券遭監(jiān)管罰款566.04萬元
2023-05-14 20:09:00

天天即時(shí)看!國(guó)家統(tǒng)計(jì)局:5月上旬8種產(chǎn)品價(jià)格上漲,42種產(chǎn)品價(jià)格下降
2023-05-14 19:58:44

環(huán)球通訊!新筑股份將于5月18日解禁1.22億股
2023-05-14 19:45:52

天堂2游戲官網(wǎng)_天堂2私服發(fā)布
2023-05-14 18:52:44