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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Ollydbg使用教程学习总结(三)

發布時間:2023/12/2 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ollydbg使用教程学习总结(三) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

解密系列之OD使用教程9

程序:MrBills.exe

點擊注冊,輸入郵箱和序列號后提示如下

突破口:該提示窗口中的字符串,查找如下

雙擊來到反匯編窗口,有個關鍵跳轉,往上查看影響跳轉的語句是test al,al,猜測al=0為未注冊,al=1為已注冊,再往上查看,call 0040714C決定al值,下斷跟進查看。

跟進“需進入1”,找到2個關鍵call

跟進“需進入2”和“需進入3”,發現函數里代碼相似

看來call 406F4B是關鍵,跟進后來到

最后一句為mov al,bl,這是改變al值的關鍵語句,修改為mov al,1后按F9運行程序,發現

保存到可執行文件后,運行程序

未注冊等信息已經不在了。

解密系列之OD使用教程10

程序:PC2AM2_PRO.exe
首先進行安裝,然后用PEID查看如下所示

可知該程序由VB編寫,所有的VB程序幾乎都是依賴于一個外部的動態鏈接庫。這個動態鏈接庫的名字是:MSVBVM60.dll(可能有多個版本,但名字都差不多~),然而正是因為VB中所有的API函數都在DLL中去實現,所以導致我們在跟蹤程序的執行代碼時頻繁地在DLL領空和程序領空跳來跳去。
VB程序破解關鍵

針對變量針對字符串
__vbaVarTstEq__vbaStrCmp
__vbaVarTstNe__vbaStrComp
__vbaVarCompEq__vbaStrCompVar
__vbaVarCompLe__vbaStrLike
__vbaVarCompLt__vbaStrTextComp
__vbaVarCompGe__vbaStrTextLike
__vbaVarCompGt
__vbaVarCompNe

用OD載入,按下Ctrl+N打開模塊窗口,查找(直接輸入)vbaVarTstEq,找到后右鍵=>在每個參考上設置斷點,提示設置了88個斷點,按F9運行程序,在第一個斷點處斷下,繼續按F8單步執行,走到下面圖中位置

注釋里有一串類似注冊碼的字符,記錄下來,刪除所有斷點,在注冊編輯框里輸入,注冊成功。(簡單VB程序的注冊碼一般都可以用類似的方法找到)

oeiu-564-oqei-97

解密系列之OD使用教程11

程序:fjprodsetup.exe
安裝程序,打開查看是未注冊版本,有功能限制。用OD載入,搜索所有字符串unregister,雙擊下面高亮一行

發現有跳轉,但修改跳轉之后只是去掉了標題欄的unregistered,并不能破解,關鍵還在于al的值

如圖,選中子程序第一行,提示窗口顯示本地調用來自4047D3、404880,在這兩個地址處下斷,去掉之前的斷點。按F9運行程序,在4047D3處斷下,去掉404880處的斷點,如下圖

在4047CD處下斷,重新運行程序,跟進發現這個call可能是程序加密驗證的過程,如下圖所示可進行修改并保存達到破解

的目的,但還可進行更深入的研究,進入驗證函數1和函數2對加密算法進行逆向,寫出注冊機,此處不再贅述,有能力者可聯系筆者進行交流。

解密系列之OD使用教程12——逆向后的Delphi特色

程序:Teksched.ex.
運行程序,有NAG窗口,需要注冊,用PEID查看是Delphi編寫的程序,用OD載入程序,留意Delphi程序與VC程序的區別。
搜索字符串registration,如下

雙擊第一行,來到

在高亮這行右鍵=>查找參考=>選定命令,有

雙擊第一行,又來到了原來的地方

在004A582C、004A5841處下斷,F9運行起來,點擊注冊窗口,輸入注冊信息,發現并不能斷下。得找其他突破口,向上瀏覽程序反匯編代碼,可以看到程序很有Delphi特色:

1、push 004A5841 retn,這兩條指令后會有jmp往前跳的指令,等價于 jmp 004A5841

2、存在很多call調用

繼續往上瀏覽,發現有輸入注冊碼提示信息,在上圖地方下斷

運行程序,輸入注冊信息,按Ctrl+F8執行,程序跑飛,斷在ntdll動態鏈接庫中,按“—”號回到程序領空,并在該call上一條指令處下斷,然后運行程序

將該call指令NOP掉,繼續執行,來到下圖

將高亮這行改為jmp 4A5608,繼續執行

將該條跳轉NOP掉,按Ctrl+F8繼續執行,最后來到最開始的位置如下

至此,程序完美破解

保存修改到文件后,重新運行程序進行驗證,完美破解。

總結

以上是生活随笔為你收集整理的Ollydbg使用教程学习总结(三)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。