第二節(jié) 補(bǔ)丁制作
1、文件補(bǔ)丁制作
今天我們接觸補(bǔ)丁制作工具是CodeFusion,界面制作也不錯(cuò),它有以下功能:
1、可以自動(dòng)比較補(bǔ)丁前后的差別
2、可以對(duì)字節(jié)逐個(gè)補(bǔ)丁,也可以使用普通和模板兩種查找、替換;
3、補(bǔ)丁前后的文件尺寸可以不同;
4、可以對(duì)單個(gè)文件補(bǔ)丁,也可以處理多個(gè)不同盤、不同目錄、甚至名字并不匹配的多個(gè)文件;
5、界面文字和鏈接等完全定制;
6、可以使用內(nèi)置和外部的壓縮器;也可以不壓縮自行修改窗體;
為了使初學(xué)者能更快掌握這一工具使用,我就把一補(bǔ)丁最常用的制作過作寫下來。
首先建立一個(gè)臨時(shí)目錄C:/TEMP(只是為了下面講述的方便罷了).并在其下建立兩個(gè)子目錄分別為C:/TEMP/1/以及 C:/TEMP/2/. 以網(wǎng)絡(luò)吸血鬼NET VAMPIRE 3.2為例: 將沒有CRACK的主程序VAMPIRE.EXE拷到C:/TEMP/1/目錄下. 將已經(jīng)CRACK的主程序VAMPIRE.EXE拷到C:/TEMP/2/目錄下.
(圖一)是用CodeFusion制成的補(bǔ)丁程序運(yùn)行的界面。
(圖一)
界面還是不錯(cuò)的,只要你用用CodeFusion,你就發(fā)現(xiàn)它很容易上手。
第一步、運(yùn)行CodeFusion,界面如圖二:
(圖二)
圖一和圖二中的數(shù)字1、2、3、4、5是彼此對(duì)應(yīng)的,要得到(圖一)結(jié)果只需在(圖二)中鍵入你自己的說明即可。你自己定制好界面可以存盤,存盤名是*.cfp,以后你只要打開該文件,就可出現(xiàn)所要的界面。很簡(jiǎn)單,自己摸索一下就能掌握。
第二步、定制好界面后,可以按預(yù)覽按鈕(就是上面的眼睛圖標(biāo))看看界面自己是否滿意,滿意后按下一步。
(圖三)
在圖三中,按(1)處的綠色的十字,以添加原文件(在這里是吸血鬼的原主文件),按1后出現(xiàn)左邊的一窗口,按2選擇吸血鬼的原主文,選好按Ok即可。
第三步、這一步按圖四的1處的綠色十字,出現(xiàn)如下結(jié)果:
(圖四)
按上圖中的2處是文件比較。第3處是Byte-path offset在原文件中指定的地址處打字節(jié)補(bǔ)丁。第4處是Find &Replace,在原文件查找替換字節(jié)。第五處是Truncate offset,從指定地址處切斷原文件。345的用處我在這里就不寫了,大家可自己試試。
第四步、用鼠標(biāo)按圖四中的2處(File Compare)出現(xiàn)圖五,選擇己被crack的文件,進(jìn)行比較,在這里是C:/TEMP/2/目錄下, 已經(jīng)CRACK的主程序VAMPIRE.EXE。
(圖五)
在1 處選擇C:/TEMP/2/目錄下, 已經(jīng)CRACK的主程序VAMPIRE.EXE。下一步按第2處的compare進(jìn)行兩文件的比較,比較結(jié)束后按Ok再按下一步。
第五步,這是最后一步,出現(xiàn)圖六。
(圖六)
在這界面上的各項(xiàng)選項(xiàng)就以默認(rèn)值為主,它們都是些壓縮選項(xiàng),壓縮補(bǔ)丁以保護(hù)你的版權(quán)。最后一步按1處(Make win32 Executable)選擇路徑、文件名,生成你的補(bǔ)丁。好了你可以把這補(bǔ)丁散發(fā)給大家,真可謂,辛苦你一人,方便千萬人??!
該軟件的其它功能,大家自己再摸索一下,是不是很直觀好用。
2、內(nèi)存補(bǔ)丁制作
R!SC'sPatcher 使用
簡(jiǎn)介
RPP.EXE 是內(nèi)存動(dòng)態(tài)補(bǔ)丁制作軟件。它通過腳本命令創(chuàng)建 win32 文件,以此文件裝載程序,裝載過程中等待軟件解壓或解除其自身保護(hù)后,然后按腳本要求修補(bǔ)內(nèi)存中的指令,以使軟件能夠按我們要求運(yùn)行。
如 ACDSEE3.0 是用 ASPACK 壓縮軟件,你 crack 時(shí)發(fā)現(xiàn)在內(nèi)存地址 433FEA 處把 6A00 改成 EB17 就可成功,但你不可能直接修改壓縮過的 ACDSEE.EXE 文件;這里就可用 RPP.EXE 按我們要求生成一 LOAD.EXE 文件,首先運(yùn)行 LOAD.EXE ,它自動(dòng)裝載 ACDSEE.EXE 等其自解壓完成后,然后修改內(nèi)存 433FEA 地址為 EB17 這樣 ACDSEE.EXE 就可按我們要求運(yùn)行了,不過我不贊成用此法對(duì)付 ACDSEE.EXE ,因?yàn)?ACDSEE.EXE 運(yùn)行有兩種界面,其中 VIEW 界面用此法不太靈。
RPP.EXE 還可很方便對(duì)付 NAG (一些提示、警告窗口的軟件),如用 NEOLITE 2.0 Y 壓縮過的軟件運(yùn)行之前彈出來的那種窗口,當(dāng)然也有專門除掉 NAG 的工具。
用法
在資源管理器中雙擊 rpp.exe 文件,它彈出一菜單,你選擇事先編好的腳本文件,然后按 OK 。
或在 WINDOWS 下的 DOS 窗口下用命令方式“ rpp.exe <script.rpp> ”,其中 script.rpp 為腳本命令文件。
如你的輸出文件己存在,它將覆蓋。在命令方式下,腳本文件可是任何文件名和擴(kuò)展名;但在對(duì)話窗口操作方式下,文件名必須為 *.rpp
腳 本 命 令
-------------------
';' 注釋符號(hào) 跟著的只是些說明 不會(huì)執(zhí)行的 直到下一行 .
'T=' 表示對(duì)內(nèi)存的檢測(cè)次數(shù), T=1000: 意味著對(duì)內(nèi)存檢測(cè) 1000 次,在放棄之前,告訴你的應(yīng)用程序是
不正確的版本。
注意:在腳本文件里,默認(rèn)值 T=8000 。
'F=' 需要補(bǔ)丁的文件名
'O=' 生成的補(bǔ)丁文件名 如你沒指定文件名,默認(rèn)為 LOAD.EXE
'P=' 如何在內(nèi)存補(bǔ)丁 格式:內(nèi)存地址 / 原碼 / 補(bǔ)碼
具體看看腳本的例子
'R:' 把前面需要補(bǔ)的全部補(bǔ)好后 再繼續(xù) 可以看看 azpr243.rpp 這個(gè)例子
':' 每一行都要以冒號(hào)結(jié)尾 相當(dāng)于回車
'$' 腳本結(jié)束標(biāo)志
所有數(shù)字采用 16 進(jìn)制
內(nèi)存地址和原碼都符合才會(huì)進(jìn)行補(bǔ)丁 字節(jié)間請(qǐng)用逗號(hào)分開。腳本文件不能大于 40K 被補(bǔ)的字節(jié)有限為 1f0h 字節(jié),被處理的原文件不小于 30h 字節(jié)。
腳本例子
;script.rpp
T=1000: ; 對(duì)內(nèi)存嘗試 1000 次補(bǔ)丁 不行則放棄 如果不設(shè)默認(rèn)為 8000
F=test.exe: ; 要補(bǔ)丁的程序
P=40101D/7460/7400: ; 將命令 jz xx 改為 jz next instruction
P=4024A6/4652454520/5221534300: ; 將字符 'FREE ' 替換成 'R!SC'
$ ; 結(jié)束
具體的腳本范例大家可參考其自帶的 Scripts.zip 。
一些問題
下面是一有趣的試驗(yàn),寫一腳本文件,輸入輸出名一樣,產(chǎn)生一執(zhí)行文件,該文件將不斷裝載其自身
最后導(dǎo)致 windows 崩潰,你只好重新啟動(dòng)了。
'P=401000/68/B8:'
'F=fun.exe:'
'O=fun.exe:' 然后運(yùn)行 fun.exe 不一會(huì)你只好重新啟動(dòng)微機(jī)了 :)
(編輯:天命孤獨(dú))
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注