每次看到需要收費(fèi)注冊的軟件就會有種沖動——扁那作者一頓(其實(shí)不能怪作者,怪只怪自己窮~)。沖動歸沖動,軟件總還是要用的吧,又不能拿把小刀去威脅作者施舍個(gè)注冊碼,還是乖乖crack吧(補(bǔ)習(xí)下英語,crack翻譯過來就是破解的意思),這樣即傷不到作者,也能有軟件用,無奈之舉啊…
破解神秘嗎?個(gè)人感覺有點(diǎn)~,因?yàn)橛行┸浖娴暮茈ycrack啊。但不能就這樣打消了大家的積極性嘛,我們今天就來神秘一下吧,(*^__^*) 嘻嘻……。
《智能排座系統(tǒng)》——她在誘惑我,誘惑我,哦~,我被誘惑了,哇哈哈哈哈哈哈哈…
不要問為什么,只管按照下面說的做,奇跡就會發(fā)生~
用WinHex打開“智能排座程序.exe”,按鍵盤上的Alt鍵加G鍵,然后在彈出的框框里面輸入“2ACD”后回車,就看到下面的圖圖了:
現(xiàn)在把那個(gè)“74”改為“75”,然后保存下,啟動軟件輸入任意注冊碼,我勒個(gè)去你看到什么了?!@#@。ぃぁ瓌e讓軟件作者看到你淫笑的嘴臉。
WinHex下載可以在網(wǎng)上找下,以前資源港也發(fā)過,只可惜現(xiàn)在網(wǎng)站改版找不到了…智能排座系統(tǒng)點(diǎn)此下載
上面我們稀里糊涂的改了一個(gè)數(shù)字就把《秘書智能排座》給破解了,肯定會有朋友問為什么改那里就能破解呢,現(xiàn)在我們就來了解了解下其中的奧秘吧~
不知道大家英文學(xué)得怎么樣,“jump”這個(gè)詞相信大家應(yīng)該都知道什么意思吧,就是“跳”的意思,哈哈,跳啊跳啊就把需要注冊的那塊代碼給跳過去了,這樣不就可以達(dá)到免注冊的效果了嘛!
不過計(jì)算機(jī)可不是用原原本本的英文,而是匯編語言,說白了就是計(jì)算機(jī)才能讀懂的語言,想學(xué)會破解的話匯編可是不能少的哦,不然就看不懂程序在哪里可以跳過注冊的部分了。匯編指令很多很多,一開始學(xué)習(xí)破解的時(shí)候不強(qiáng)制大家完全記住,當(dāng)然有興趣的朋友可以網(wǎng)上找下匯編語言專門學(xué)習(xí)下,沒耐心的朋友就跟著我來吧,一天學(xué)一點(diǎn),毛主席說得好啊:好好學(xué)習(xí),天天向上嘛。
先來幾個(gè)關(guān)鍵詞哦,“相等則跳”、“不相等則跳”、“直接跳(不管等不等)”,這三個(gè)詞什么意思呢,打個(gè)比方就是如果注冊碼相等則跳轉(zhuǎn)到注冊成功,不相等則跳轉(zhuǎn)到注冊失敗,直接跳則不考慮相等不相等。
明白了跳得原理,哈哈,我們就來看看計(jì)算機(jī)是怎么處理各種跳轉(zhuǎn)的吧:
je或jz就是相等則跳的意思,對應(yīng)的16進(jìn)制編碼分別為74或0F84; jne或jnz就是不相等則跳的意思,對應(yīng)的16進(jìn)制編碼分別為75或0F85; jmp就是直接跳轉(zhuǎn)的意思,對應(yīng)的16進(jìn)制編碼為EB。
OK,理論知識完畢,學(xué)會上面的三條語句你就是準(zhǔn)高手了,哈哈(可別太狂妄哦~只是為了鼓勵下大家
)。
既然知道了破解的原理,新的問題就又來了,如何找到哪里該跳哪里不該跳呢,我們就拿上次破解的那個(gè)《秘書智能排座》來練練手吧,哇哈哈哈哈哈哈哈(每次到這個(gè)時(shí)刻我都有種慕名的沖動…)
首先要出場的是一款名叫W32dsm的工具,這款工具可是十分的給力,可以幫助我們直達(dá)要害,斷其命根~~,先來看看軟件的界面吧:
這個(gè)工具啊,主要是幫助我們進(jìn)行靜態(tài)反匯編的,說明白點(diǎn)就是把軟件從二進(jìn)制翻譯為匯編語言,嘻嘻,這樣就可以看到一些幫助我們查找關(guān)鍵跳的東東,方便我們下手了~
現(xiàn)在點(diǎn)擊軟件菜單“反匯編”→“打開文件”,然后選擇《秘書智能排座》軟件的“智能排座程序.exe”,經(jīng)過一會的等待之后,你就會看到W32dsm為我們分析出來的匯編代碼了,如下圖:
我勒個(gè)去,怎么都是亂七八糟的代碼啊,這誰看得懂啊~別急嘛嘛嘛~~~啊嗯啊@#¥¥……哈哈,我們現(xiàn)在點(diǎn)擊菜單中的“參考”→“串式參考”,如下圖:
接著會彈出一個(gè)小窗窗,我們就來找找看吧,呦呦呦,還真被我們找到了,看到“對不起,授權(quán)碼不對,請重新輸入”這行了沒有,就是它了,如下圖:
我們雙擊這行文字,然后把這個(gè)窗口關(guān)閉掉,就會停留在匯編代碼中出現(xiàn)這行文字的地方了,如下圖:
順著這行文字向上看下,哎呀,有個(gè)“je 00402ADF”,前面我們已經(jīng)說過了,“je”的匯編意思就是相等則跳,既然相等的時(shí)候跳走,不等的時(shí)候往下執(zhí)行,那這句基本上可以肯定是拿我們輸入的假注冊碼跟真注冊碼作比較了,如果輸入的注冊碼跟真注冊碼不等則往下執(zhí)行,那肯定就會提示我們“對不起,授權(quán)碼不對,請重新輸入”了。這樣就好辦了,我們就把相等則跳改成不等則跳不就行了,這樣的話我們輸入任意注冊碼都會注冊成功了。
看到下面狀態(tài)欄有個(gè)“@Offset 00002AD3h”了沒,這個(gè)Offset就是靜態(tài)偏移地址了,不懂什么是靜態(tài)偏移也沒關(guān)系,以后操作多了就明白什么意思了。雙擊“je 00402ADF”這行就可以看到它的靜態(tài)地址為“@Offset 00002ACD”,我們記下2ACD就可以了,后面那個(gè)h不管他。然后用WinHex打開“智能排座程序.exe”,按照上一篇文章中的操作就可以了。
OK,大功告成,寫了這么多其實(shí)就簡單的那么幾步。今天這篇文章大家能掌握跳轉(zhuǎn)的那三句匯編語言還有如何使用W32dsm查找關(guān)鍵字符串就可以了。
本文作者QQ上傳個(gè)給你,阿菜的QQ:786671575