日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > windows >内容正文

windows

小甲鱼 OllyDbg 教程系列 (十) : Windows 逆向常用 api 以及 XOFTSPY 逆向

發(fā)布時(shí)間:2024/7/23 windows 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 小甲鱼 OllyDbg 教程系列 (十) : Windows 逆向常用 api 以及 XOFTSPY 逆向 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

小甲魚(yú) OllyDbg 視頻教程
? ? ? 嘗試 1 :?https://www.bilibili.com/video/av6889190?p=17
? ? ? 嘗試 2 :?https://www.bilibili.com/video/av6889190?p=18

小甲魚(yú)OD學(xué)習(xí)第13-14講:https://www.bbsmax.com/A/QV5ZL1gZzy/

逆向常用 api?:https://pan.baidu.com/s/1dypI6la3Gj4i-G6exiCMkg ? ?提取碼:v6dq?


?

嘗試 1:使用 查找模塊間的調(diào)用 進(jìn)行逆向

?

方法 1:

API 函數(shù) GetWindowTextA 可以取得一個(gè)窗體的標(biāo)題(caption)文字,或者一個(gè)控件的內(nèi)容

可以通過(guò) api 函數(shù) GetWindowTextA 來(lái)進(jìn)行逆向

搜索 API 函數(shù) GetWindowTextA 函數(shù)

?按 Alt + b ,查看所有斷點(diǎn),可以看到 下了 3 個(gè)斷點(diǎn)

?

把 這個(gè) 3 個(gè)斷點(diǎn)刪除,使用另外一種方法查找。

?

方法 2:

按下? Ctrl + n ,查找 getwindowa ,然后 右鍵 -> 在每個(gè)參考上設(shè)置斷點(diǎn)。按下 Alt + b ,可以看到還是設(shè)置三個(gè)斷點(diǎn)。

查看斷點(diǎn) Alt + b:

然后重新載入程序、運(yùn)行,看程序有沒(méi)有在斷點(diǎn)處停下來(lái)。發(fā)現(xiàn)程序在斷點(diǎn)處停下來(lái),因?yàn)闆](méi)有輸入內(nèi)容,所以這個(gè)斷點(diǎn)是沒(méi)有用的,刪除這個(gè)斷點(diǎn),按 F9 繼續(xù)。發(fā)現(xiàn)程序又在一個(gè)斷點(diǎn)處停下來(lái),同樣沒(méi)有輸入內(nèi)容,所以這個(gè)斷點(diǎn)也是沒(méi)有用的,刪除這個(gè)斷點(diǎn),按 F9 繼續(xù)。發(fā)現(xiàn)程序運(yùn)行,出現(xiàn)界面。點(diǎn)擊注冊(cè):

發(fā)現(xiàn)程序果斷的在最后一個(gè)斷點(diǎn)處停下,

然后開(kāi)始 F7、F8 調(diào)試,尋找關(guān)鍵跳轉(zhuǎn):

可見(jiàn)是判斷al值,那么上一個(gè)call可能就是計(jì)算加密的函數(shù),下斷點(diǎn)進(jìn)入

神奇的發(fā)現(xiàn)有兩處call地址相同,附近代碼也相同,猜測(cè)這是程序怕被破解所以出現(xiàn)的二次驗(yàn)證程序

進(jìn)入后找到兩處retn

由經(jīng)驗(yàn)得出第一個(gè)retn為true,第二個(gè)為false

將跳轉(zhuǎn)實(shí)現(xiàn)的標(biāo)志位修改成未實(shí)現(xiàn)(修改標(biāo)志位Z)

修改后確實(shí)彈出了注冊(cè)成功了的對(duì)話框,但是發(fā)現(xiàn)界面依然顯示未注冊(cè)的信息。

這時(shí)候我們就要考慮他的雙重驗(yàn)證了,第二個(gè)驗(yàn)證call

也可以通過(guò)字符串查詢方式,尋找關(guān)鍵位置

下斷點(diǎn)進(jìn)入,找到關(guān)鍵跳轉(zhuǎn)關(guān)鍵call

進(jìn)入函數(shù)?

找到關(guān)鍵跳轉(zhuǎn),mov bl,1 ??
后面直接 mov al,bl
我們修改代碼 mov al,1

成功

總結(jié):還是要鍛煉尋找加密思路,尋找關(guān)鍵的上一個(gè)跳轉(zhuǎn)及call是最關(guān)鍵的

?

?

嘗試?2:查找關(guān)鍵字進(jìn)行爆破

?

這次我們的任務(wù)是 PJ 這個(gè)需要注冊(cè)碼的軟件,如下圖所示

我們搜索上圖相應(yīng)的提示字符串,看看能找到什么線索,我們搜索? invalid? code? 試試看,如下圖

然后下斷點(diǎn),如下圖所示

我們來(lái)到斷點(diǎn)處的代碼,如下圖

觀察代碼,發(fā)現(xiàn)0041749C? JNZ SHORT XoftSpy.004174E3? 能跳轉(zhuǎn)到相應(yīng)的成功注冊(cè)的提示信息,如下圖

我們干脆把代碼改為 jmp? SHORT XoftSpy.004174E3,看看效果,如下圖

用所有修改保存,運(yùn)行程序并且注冊(cè),發(fā)現(xiàn)提示成功,如下圖

但是我們又發(fā)現(xiàn),軟件還是沒(méi)有注冊(cè)成功,如下圖所示

我們干脆換個(gè)方式,搜索另外一個(gè)標(biāo)志字符串,下斷點(diǎn),如下圖所示

觀察 00401499 JE SHORT XoftSpy.004014AD,這行代碼能跳轉(zhuǎn)到軟件注冊(cè)成功的代碼處,如下圖

我們嘗試著用NOP來(lái)代替這行代碼看看效果,如下圖

用所有修改保存,運(yùn)行軟件,發(fā)現(xiàn)已經(jīng)破解成功!!

?

?

?

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的小甲鱼 OllyDbg 教程系列 (十) : Windows 逆向常用 api 以及 XOFTSPY 逆向的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。