歡迎光臨
我們一直在努力

零基礎學破解-第七集

作業系統環境:Windows XP Pro 32bit 版本2002 SP3
使用工具:Immunity Debugger ,用OllyDbg也可以,( 這邊我自己是使用別人改良過的簡體中文化Immunity )
查殼工具:PEID (用來偵測程式有沒有被加殼)
要破解的軟體:星空网游LEG阿里云破解补丁 下載點,壓縮密碼lonelysec
(下載的練習程式不保證是安全無毒的,所以建議都下載安裝在虛擬機上。如載點失效,請私訊波波粉專)


此篇教學:尋找註冊碼

先用PEID檢查該程式是否有加殼。
查看區段可發現是vmp

file

在上一集,我們已經針對vmp的程式進行了相關破解,關於vmp的原理上一集也有提到,還不清楚的朋友可以看下第六集教學。

file

檢查完是vmp加殼後,我們將程式丟入到 Immunity Debugger ,然後點集選"否"。

file

F9執行程式,顯示告警"你的軟件沒有註冊",我們點選 "是",並嘗試進行註冊。

file

輸入完用戶名與註冊碼後,點選確認註冊,並重啟程序。

file
file

重啟程序後,如預期的,依然顯示"你的軟件沒有註冊",所以我們需要想辦法繞過驗證的機制或是找到註冊碼。

file

在資料夾內,可以看到有個配置文件,裡邊記錄著註冊碼、用戶名的資訊。也就是代表這隻程式每次啟動時,都會檢查配置的文件的資訊來進行比對校驗。

file

回到 Immunity Debugger ,我們使用API斷點,ReadFile,就是當這隻程式在讀取"配置文件"這個動作時,進行斷點。

file

重新執行程式,F9執行。
可以在右下角觀察到 Call 到ReadFile,停在我們下的斷點了。

file

接著我們進入到 401000的地址。

file

跟前面教學一樣,我們搜尋剛才註冊時,失敗的字串。

file
file

進入到註冊失敗的地址後,我們可以往上尋找是否有判斷或驗證註冊碼的行為。

file

在0040158E地址,可以找到jnz跳轉,且該線頭是一直往下的,於是我們可得知該地址就是進行驗證的。
JNZ ;不為 0 則跳轉

file

在該地址我們點選F2,進行下斷點。
然後把原本我們一開始設置的API斷點 ReadFile給取消掉。留下現在這個地址的斷點就好。

file

file

移除ReadFile斷點後,我們重新執行程式F9,然後可以在右下角視窗看到 ASCII。

這串ASCII根據經驗,很可能就是註冊碼。

file

接著我們回到 程式,把我們取得的ASCII值進行註冊。

file

果不其然,註冊成功了!

file

贊(0) 打賞
未經允許不得轉載:波波的寂寞世界 » 零基礎學破解-第七集
分享到: 更多 (0)

波波的寂寞世界

Facebook聯繫我們

覺得文章有用,請作者喝杯咖啡

咖啡掃一掃打賞