




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、用SOFTICE破解WINZIP的過(guò)程日期:2004年3月10日 作者:清風(fēng)網(wǎng)絡(luò)學(xué)院 查看:大字體 中字體 小字體同時(shí)按下鍵盤(pán)Ctrl+D會(huì)有驚喜發(fā)生 破解步驟:1. 用softice載入windows(通過(guò)CTRL+D來(lái)檢查softice是否已經(jīng)準(zhǔn)備好,按F5退出softice);2. 運(yùn)行winzip,選擇“help”下的“Enter Registration Code.”;3. 在“Name:”中輸入:KraneXH(隨意),“Registration #:”中輸入:12345678(隨意);4. 用CTRL+D呼出s
2、oftice,下萬(wàn)能斷點(diǎn):bpx hmemcpy,按F5返回到winzip;5. 在winzip中選擇“OK”,很快程序就被softice攔截下來(lái)(因?yàn)槲覀冊(cè)O(shè)置了斷點(diǎn)bpx hmemcpy,當(dāng)在winzip中選擇“OK”時(shí),winzip會(huì)通過(guò)hmemcpy這個(gè)功能去取我們輸入的名字“KraneXH”和注冊(cè)碼“12345678”,softice檢測(cè)到hmemcpy被調(diào)用,于是就中斷winzip的運(yùn)行,停留在winzip中調(diào)用hmemcpy的地方);6. 用 bd * 暫停剛才設(shè)置的斷點(diǎn) bpx hmemcp
3、y (為什么要暫停斷點(diǎn)bpx hmemcpy呢?因?yàn)槲覀兊哪康氖且趙inzip取名字和注冊(cè)碼的時(shí)候中斷它的運(yùn)行,但是 bpx hmemcpy 這個(gè)斷點(diǎn)并不是針對(duì)winzip才有效的,計(jì)算機(jī)里運(yùn)行的程序都可能會(huì)隨時(shí)調(diào)用它。由于我們?cè)趙inzip中剛輸入名字和注冊(cè)碼后設(shè)置斷點(diǎn) bpx hmemcpy ,此時(shí)winzip會(huì)馬上去取我們輸入的名字和注冊(cè)碼,所以我們能確保是中斷在winzip程序中,通過(guò) bd * 這個(gè)命令暫停斷點(diǎn) bpx hmemcpy ,能夠防
4、止解密時(shí)被其它不相干的程序中斷,影響解密的正常進(jìn)行);7. 按F12鍵9次,返回到winzip的領(lǐng)空(因?yàn)閯偛舠oftice中斷在hmemcpy中,這是windows系統(tǒng)區(qū)域,不能更改的,winzip僅僅是調(diào)用這個(gè)功能而已,所以我們必須要返回到winzip程序中才有用),來(lái)到下面的地方:.0167:00407F6DCALLUSER32!GetDlgItemTextA0167:00407F73PUSHEDI- 程序停留在這里,EDI指向“KraneXH”0167:00407F74CALL0043F89A0167:00407F79PUSHEDI0167:00407F7ACALL
5、0043F8C30167:00407F7FPOPECX0167:00407F80MOVESI, 0048CDA40167:00407F85POPECX0167:00407F86PUSH0B0167:00407F88PUSHESI0167:00407F89PUSH00000C810167:00407F8EPUSHEBX0167:00407F8FCALLUSER32!GetDlgItemTextA0167:00407F95PUSHESI- ESI指向“12345678”0167:00407F96CALL0043F89A0167:00407F9BPUSHESI0167:00407
6、F9CCALL0043F8C30167:00407FA1CMPBYTE PTR 0048CD78,00- 0048CD78指向“KraneXH”0167:00407FA8POPECX0167:00407FA9POPECX0167:00407FAAJZ004080050167:00407FACCMPBYTE PTR 0048CDA4,00- 0048CDA4指向“12345678”0167:00407FB3JZ004080050167:00407FB5CALL004079050167:00407FBATESTEAX,EAX0167:00
7、407FC3JZ00408005.8. 我們從調(diào)用hmemcpy的系統(tǒng)區(qū)域中返回到winzip領(lǐng)空時(shí),程序停留在0167:00407F73PUSHEDI上,看看它上面的那條指令0167:00407F6DCALLUSER32!GetDlgItemTextA,這個(gè)CALL就是取我們輸入數(shù)據(jù)的程序,也就是這個(gè)CALL讓我們用 bpx hmemcpy 將winzip攔截了下來(lái)。既然winzip用這個(gè)CALL去取輸入的東西,那么調(diào)用之后肯定會(huì)返回結(jié)果的,讓我們來(lái)看看:用 D EDI ,觀察softice的數(shù)據(jù)區(qū),你會(huì)看到EDI指向的內(nèi)
8、存區(qū)域的內(nèi)容是我們輸入的名字“KraneXH”;9. 從程序中可看出,下面不遠(yuǎn)的地方還有一個(gè)同樣的地方調(diào)用USER32!GetDlgItemTextA,既0167:00407F8FCALLUSER32!GetDlgItemTextA這一行。按F10鍵多次,走到這個(gè)CALL的下一句停下,既程序停在0167:00407F95PUSHESI這條指令上,用 D ESI ,同樣的我們可以看到ESI指向的內(nèi)存區(qū)域的內(nèi)容是我們輸入的注冊(cè)碼“12345678”?,F(xiàn)在winzip已經(jīng)將我們輸入的名字和注冊(cè)碼都取到,讓我們來(lái)看看它下一步要做什么?10. 繼續(xù)按F1
9、0多次,當(dāng)程序走到0167:00407FA1CMPBYTE PTR 0048CD78,00時(shí)停下來(lái),這條指令將內(nèi)存0048CD78中的數(shù)據(jù)和00比較,然后根據(jù)比較結(jié)果判斷程序走向。用 D 0048CD78,觀察softice的數(shù)據(jù)區(qū),我們可以看到0048CD78中的數(shù)據(jù)是“KraneXH”,現(xiàn)在我們知道這條指令的作用是判斷我們輸入的名字是否為空,如果沒(méi)有輸入任何東西,程序?qū)?huì)跳到00408005去;同樣的,按F10走到0407FACCMPBYTE PTR 0048CDA4,00這行停下,然后用 D 0048CDA4
10、,可以看到0048CDA4中的數(shù)據(jù)是“12345678”。因?yàn)槲覀冚斎肓嗣趾妥?cè)碼,所以程序不會(huì)跳到 00408005去,程序檢查輸入的名字和注冊(cè)碼,如果任何一個(gè)沒(méi)有輸入(既其值為00),程序都會(huì)跳到00408005去,由此我們應(yīng)該想到00408005很可能就是顯示出錯(cuò)的地方,即當(dāng)程序走到00408005 的時(shí)候,表示輸入的名字和注冊(cè)碼是錯(cuò)誤的;11. 按F10兩次來(lái)到下面的那個(gè)CALL00407905(因?yàn)槌绦騽偛磐T?167:00407FACCMPBYTE PTR 0048CDA4,00上):.0167:00407FB5CALL00407
11、905- 程序停留在這里0167:00407FBATESTEAX,EAX0167:00407FC3JZ00408005.程序判斷輸入的名字和注冊(cè)碼是否為空后調(diào)用CALL00407905,這個(gè)CALL將結(jié)果返回到EAX中,程序根據(jù)EAX值判斷走向。從程序可以知道,如果EAX的返回值是0,則程序會(huì)跳到00408005,就是剛才我們判斷是有問(wèn)題的地方。那么這個(gè)CALL倒底藏著什么貓膩呀?現(xiàn)在還不是很清楚,接著按F10兩次來(lái)到JZ00408005停下?,F(xiàn)在看看softice中的零(即Z)標(biāo)志位,其值是零,所以程序?qū)?huì)跳到00408005去,我們姑且按F10跳到00408005去看個(gè)究竟:.0
12、167:00408005CALL004082A6- 程序停留在這里0167:0040800APUSH0000028E0167:0040800FCALL0043F5ED0167:00408014PUSHEAX0167:00408015PUSHEBX0167:00408016PUSH3D0167:00408018CALL00430025- 出現(xiàn)錯(cuò)誤框0167:0040801DADDESP,100167:00408020INCDWORD PTR 00487AF80167:00408026CMPDWORD PTR 00487AF8,03
13、60;- 判斷錯(cuò)誤次數(shù)是否到了3次?0167:0040802DJNZ0040812C0167:00408033PUSH000167:00408035PUSHEBX0167:00408036CALLUSER32!EndDialog0167:0040803CJMP0040812C.12. 一直按F10走過(guò)0167:00408018CALL00430025,這是程序蹦出一個(gè)窗口,警告:Incomplete or incorrect information(不完整或不正確的信息),程序走到這里就已經(jīng)很明朗了:如果程序在前面的時(shí)候跳到00408005來(lái),
14、就表示輸入的名字和注冊(cè)碼是錯(cuò)誤的,所以剛才的那個(gè)0167:00407FB5CALL00407905一定是比較輸入的注冊(cè)碼是否正確的地方,也就是里面肯定有將我們輸入的注冊(cè)碼和正確的注冊(cè)碼相比較的地方,所以我們要進(jìn)入CALL00430025里去看看。如果繼續(xù)往CALL00430025下面的語(yǔ)句看的話,你會(huì)看到下面的幾句:0167:00408020INCDWORD PTR 00487AF80167:00408026CMPDWORD PTR 00487AF8,030167:0040802DJNZ0040812C程序先將內(nèi)存00487AF8處的值加1(其初始值為0
15、,可以在這條語(yǔ)句前用 D 00487AF8 查看),然后比較是否是3,如果不是就跳到0040812C,如果是則執(zhí)行后面的0167:00408036CALLUSER32!EndDialog,其作用就是關(guān)閉對(duì)話框,也就是我們輸入名字和注冊(cè)碼的窗口。由此我們可以看出此處程序的作用是檢查錯(cuò)誤輸入名字、注冊(cè)碼的錯(cuò)誤次數(shù)是否已經(jīng)到了3次,如果到了3次,則關(guān)閉對(duì)話框,不允許再輸入;如果少于3次,可有機(jī)會(huì)再次輸入名字和注冊(cè)碼。13. 重復(fù)前面的步驟1到11,讓程序停在0167:00407FB5CALL00407905上,然后按F8進(jìn)入這個(gè)CALL里面去:.0167:00
16、4079D5PUSHEBP0167:004079D6PUSHEBP,ESP0167:004079D8SUBESP,000002080167:004079DEPUSHEBX0167:004079DFPUSHESI0167:004079E0XORESI,ESI0167:004079E2CMPBYTE PTR 0048CD78,000167:004079E9PUSHEDI0167:004079EAJZ00407A8A.14. 按F10鍵N次(我也不知道幾次,你自己數(shù)一數(shù)吧_),一直來(lái)到下面的地方停下:.0167:00407A91LEAEAX,EBP-0140-
17、;程序停留在這里0167:00407A97PUSHEAX0167:00407A98PUSHEDI- EDI指向輸入的名字“KraneXH”0167:00407A99CALL00407B47 - 計(jì)算注冊(cè)碼0167:00407A9EMOVESI,0048CDA40167:00407AA3LEAEAX,EBP-01400167:00407AA9PUSHESI- ESI指向輸入的注冊(cè)碼“12345678”0167:00407AAAPUSHEAX- EAX指向正確的注冊(cè)碼“5CFC0875”0167:00407AABCALL004692D00167:0
18、0407AB0ADDESP,100167:00407AB3NEGEAX0167:00407AB5SBBEAX,EAX0167:00407AB7INCEAX0167:00407AB8MOV00489FDC,EAX0167:00407ABDJNZ00407B270167:00407ABFLEAEAX,EBP-01400167:00407AC5PUSHEAX0167:00407AC6PUSHEDI- EDI指向輸入的名字“KraneXH”0167:00407AC7CALL00407BE4 - 計(jì)算注冊(cè)碼0167:00407ACCLEAEAX,EBP-01400167:0
19、0407AD2PUSHESI- ESI指向輸入的注冊(cè)碼“12345678”0167:00407AD3PUSHEAX- EAX指向正確的注冊(cè)碼“23804216”0167:00407AD4CALL004692D00167:00407AD9ADDESP,100167:00407ADCNEGEAX0167:00407ADESBBEAX,EAX0167:00407AE0INCEAX0167:00407AE1MOV00489FDC,EAX0167:00407AE6JNZ00407B27.15. 大家一定會(huì)問(wèn):為什么會(huì)在這里停下,而不是其它地方呢?因?yàn)槲以谇懊娴某绦蛑幸呀?jīng)用 D * 看過(guò)了,沒(méi)有發(fā)現(xiàn)什么可疑的呀_!按F10走到0167:00407A99CALL00407B47處,用 D
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- obe教改課題申報(bào)書(shū)
- 申報(bào)課題的書(shū)籍有哪些書(shū)
- 小學(xué)語(yǔ)文縣級(jí)課題申報(bào)書(shū)
- 新苗課題申報(bào)書(shū)模板
- 個(gè)人租房合同范本微云
- 初中數(shù)學(xué)課題申報(bào)書(shū)模板
- 合同范本紙張
- 合資協(xié)議合同范本模板
- 企業(yè)用工陰陽(yáng)合同范本
- 合伙競(jìng)拍合同范本
- 地理教學(xué)論地理課堂教學(xué)設(shè)計(jì)
- 家庭教育學(xué)整套課件
- 智慧樹(shù)知到《醫(yī)學(xué)統(tǒng)計(jì)學(xué)》章節(jié)測(cè)試答案
- 《應(yīng)收應(yīng)付模塊》課件
- 2024年新年新氣象
- 2024年度天津市高校大學(xué)《輔導(dǎo)員》招聘試題(含答案)
- 工廠布局和物料路徑(英文版)
- 低壓電器基礎(chǔ)-固態(tài)繼電器(電氣控制課件)
- 高三二輪復(fù)習(xí)備考指導(dǎo)意見(jiàn)
- 港口散裝液體危險(xiǎn)化學(xué)品港口經(jīng)營(yíng)人的裝卸管理人員從業(yè)資格考試
- 2023年四川省公務(wù)員考試行測(cè)真題及答案解析
評(píng)論
0/150
提交評(píng)論