用到的軟件
- OD
- PEID
- IPSearch
IPSearch下載地址
提取碼:mf8l
查殼
拿到一個軟件先去查殼,做好信息收集是重中之重!
這裏提示這個軟件沒有加殼,這會節省我們逆向的時間。
查找關鍵字或斷點
首先我們打開軟件——File——Register,來到它的註冊界面
然後隨便輸入幾個字符,看看它返回的關鍵字是什麼。
這就是它返回的關鍵字,這對我們後續的您破解很重要。
把軟件拖到OD裏面,Ctrl+g 輸入:00401000,這是所有程序起始的地方,從這裏查找關鍵字會更全。
接着查找一下ASCll碼。
Ctrl+f搜一下報錯返回的關鍵字,然後雙擊點開關鍵點。
尋找關鍵跳或關鍵Call
從關鍵點往上看,發現有一個很長的jnz跳轉。
在jnz處按 F2 下個斷點,運行下看看什麼情況。
發現當輸入Name和Code後,點擊註冊時程序就不運行了。
其實到這裏我們就一已經拿到註冊碼了,這段jnz程序的意思是,如果輸入的Code與程序中的一致,它就不跳,否則相反。
然後從這個jnz跳點往下單步,發現有一個je跳轉,這個跳轉的意思與上一個jnz相似,同樣也是覈對一下Code,相同則不跳,不相同則跳,如果我們讓他不跳,那麼就會輸出“註冊成功”,那麼毫無疑問,這裏就是我們要找的關鍵跳。
我們在je處下一個斷點,與運行註冊一下。
完成註冊
程序在運行到識別Name與Code的環節停住了,也就是說,這裏的這個je,就是一個if else語句(其實我感覺它與上邊的jnz是兩個if嵌套在了一塊…)我們只需要把這個語句NOP掉,就可以繞過判斷完成註冊了!
完成註冊。