加密解密教程,解密教程(四)

解密教程(四) - 网络安全 - 电脑教程网

解密教程(四)

日期:2007-08-24   荐:
  补丁制作

1、文件补丁制作

今天我们接触补丁制作工具是CodeFusion,界面制作也不错,它有以下功能:

1、可以自动比较补丁前后的差别2、可以对字节逐个补丁,也可以使用普通和模板两种查找、替换;3、补丁前后的文件尺寸可以不同;4、可以对单个文件补丁,也可以处理多个不同盘、不同目录、甚至名字并不匹配的多个文件;5、界面文字和链接等完全定制;6、可以使用内置和外部的压缩器;也可以不压缩自行修改窗体;

为了使初学者能更快掌握这一工具使用,我就把一补丁最常用的制作过作写下来。

  首先建立一个临时目录C:\TEMP(只是为了下面讲述的方便罢了).并在其下建立两个子目录,分别为C:\TEMP\1\以及 C:\TEMP\2\. 以网络吸血鬼NET VAMPIRE 3.2为例: 将没有CRACK的主程序VAMPIRE.EXE拷到C:\TEMP\1\目录下. 将已经CRACK的主程序VAMPIRE.EXE拷到C:\TEMP\2\目录下.

(图一)是用CodeFusion制成的补丁程序运行的界面。

界面还是不错的,只要你用用CodeFusion,你就发现它很容易上手。

第一步、运行CodeFusion,界面如图二:

图一和图二中的数字1、2、3、4、5是彼此对应的,要得到(图一)结果只需在(图二)中键入你自己的说明即可。你自己定制好界面可以存盘,存盘名是*.cfp,以后你只要打开该文件,就可出现所要的界面。很简单,自己摸索一下就能掌握。

第二步、定制好界面后,可以按预览按钮(就是上面的眼睛图标)看看界面自己是否满意,满意后按下一步。

在图三中,按(1)处的绿色的十字,以添加原文件(在这里是吸血鬼的原主文件),按1后出现左边的一窗口,按2选择吸血鬼的原主文,选好按Ok即可。

第三步、这一步按图四的1处的绿色十字,出现如下结果:

按上图中的2处是文件比较。第3处是Byte-path offset,在原文件中指定的地址处打字节补丁。第4处是Find &Replace,在原文件查找替换字节。第五处是Truncate offset,从指定地址处切断原文件。3,4,5的用处我在这里就不写了,大家可自己试试。

第四步、用鼠标按图四中的2处(File Compare)出现图五,选择己被crack的文件,进行比较,在这里是C:\TEMP\2\目录下, 已经CRACK的主程序VAMPIRE.EXE。

在1 处选择C:\TEMP\2\目录下, 已经CRACK的主程序VAMPIRE.EXE。下一步按第2处的compare,进行两文件的比较,比较结束后按Ok,再按下一步。

第五步,这是最后一步,出现图六。

在这界面上的各项选项就以默认值为主,它们都是些压缩选项,压缩补丁以保护你的版权。最后一步按1处(Make win32 Executable),选择路径、文件名,生成你的补丁。好了你可以把这补丁散发给大家,真可谓,辛苦你一人,方便千万人啊!

该软件的其它功能,大家自己再摸索一下,是不是很直观好用。

2、内存补丁制作

2.1 R!SC'sPatcher 工具使用

简介

 RPP.EXE 是内存动态补丁制作软件。它通过脚本命令创建 win32 文件,以此文件装载程序,装载过程中等待软件解压或解除其自身保护后,然后按脚本要求修补内存中的指令,以使软件能够按我们要求运行。

  如 ACDSEE3.0 是用 ASPACK 压缩软件,你 crack 时发现在内存地址 433FEA 处把 6A00 改成 EB17 就可成功,但你不可能直接修改压缩过的 ACDSEE.EXE 文件;这里就可用 RPP.EXE 按我们要求生成一 LOAD.EXE 文件,首先运行 LOAD.EXE ,它自动装载 ACDSEE.EXE, 等其自解压完成后,然后修改内存 433FEA 地址为 EB17, 这样 ACDSEE.EXE 就可按我们要求运行了,不过我不赞成用此法对付 ACDSEE.EXE ,因为 ACDSEE.EXE 运行有两种界面,其中 VIEW 界面用此法不太灵。


[1] [2]  

RPP.EXE 还可很方便对付 NAG (一些提示、警告窗口的软件),如用 NEOLITE 2.0 Y 压缩过的软件运行之前弹出来的那种窗口,当然也有专门除掉 NAG 的工具。

用法

在资源管理器中双击 rpp.exe 文件,它弹出一菜单,你选择事先编好的脚本文件,然后按 OK 。或在 WINDOWS 下的 DOS 窗口下用命令方式“ rpp.exe ”,其中 script.rpp 为脚本命令文件。

如你的输出文件己存在,它将覆盖。在命令方式下,脚本文件可是任何文件名和扩展名;但在对话窗口操作方式下,文件名必须为 *.rpp

脚 本 命 令

-------------------

';'   注释符号 ,  跟着的只是些说明 ,  不会执行的 ,  直到下一行 .

 'T='  表示对内存的检测次数, T=1000: 意味着对内存检测 1000 次,在放弃之前,告诉你的应用程序是

        不正确的版本。

注意:在脚本文件里,默认值 T=8000 。

 'F='  需要补丁的文件名

 'O='  生成的补丁文件名 , 如你没指定文件名,默认为 LOAD.EXE

 'P='  如何在内存补丁 ,  格式:内存地址 / 原码 / 补码

       具体看看脚本的例子

 'R:'  把前面需要补的全部补好后 ,  再继续 ,  可以看看 azpr243.rpp 这个例子

 ':'  每一行都要以冒号结尾 ,  相当于回车

(出处:http://www.sheup.com)


 [1] [2] 

right">(出处:http://www.sheup.com/)


 [1] [2] [3] 

标签: