解密所需软件(点击下载) :
检测语言. exe
脱壳AspackDie.exe
反编译W32Dasm黄金中文版
十六进制编辑器UltraEdit.rar
请在解读之前复习一下基础知识:
一.破解的等级
初级,修改程序,用ultraedit修改exe文件,称为暴力破解、爆破
中级,追踪软件注册码
高级,写注册机
二.用w32dasm破解的一般步骤:
1 .看软件说明书,软件注册和没有注册,功能有什么不同? 怎么注册
2 .运行该软件,尝试输入您的姓名和任意注册码进行注册,如果有任何错误信息,记录错误信息
3 .检查有无装壳(第一课) .装壳后脱壳) (第二课) )。
4.pw32dasmgold反汇编
5 .双击在串行参考中发现错误消息或可能正确的消息
6 .在6.pw32dasmgold主窗口中分析该程序集,找到关键跳和关键呼叫
7 .绿色条停留在键跳,在pw32dasmgold主窗口底部找到键跳偏移地址((实际修改地址) ) )。
在ultraedit中找到偏移地址(实际修改地址),修改并保存机器码
壳牌概念:版权信息需要保护,不想他人随意更改。 exe可执行文件压缩、最常见的shell软件ASPACK、UPX、PEcompact
脱壳:拿到一个软件,检测出那个外壳。 然后,我们脱下那个壳,恢复它的真面目。 如果那个没有外壳的话,就没有必要脱壳。 脱壳软件unaspack、caspr、upx、unpecompact、procdump
实际修改地址(偏移地址)和行地址(虚拟地址) pw32dasmgold的反汇编代码由三列组成
第一列的行地址(虚拟地址)
第二列机器码(上次修改时用ultraedit修改) ) )。
第三列汇编指令
第一列第二列第三列
:0041BE38 2B45F0 sub eax,dword ptr [ebp-10]
:0041BE3B 6A42 push 00000042
:0041BE3D 50 push eax
:0041 be3eff 75 F4 push [ ebp-0c ]
:0041 be 41 ff 75 f0push [ ebp-10 ]
:0041 be 44 f f35 A8 ab 4400 pushdwordptr [ 0044 ab A8 ]
两种不同情况的不同修正方法
1 .修改为jmp
在上面找到与je(jne,jz,jnz )=jmp对应的机器码EB )错误消息的第一个跳转) jmp的作用是绝对跳转、无条件跳转,跳过以下错误消息
2 .修改为Nop
与je(jne,jz,jnz )=nop相对应的机器码90 (在上面找到正确信息的第一跳) nop的作用是,消除该跳,禁用该跳,消除功能,转到接下来的正确信息处
好了,开始我们的解读之旅吧。 。
1、侦察壳:首先打开侦察壳language.exe,选择打开---找到要解密的网络填表终结器: FormGhost.exe,如图1所示确定。 language.exe显示软件外壳是Aspack,如图2所示。
2、脱壳:双击脱壳AspackDie.exe弹出对话框,选择网络填写终结器: FormGhost.exe打开。 如图3所示。 出现图4的框,重点确定脱壳完成。 在网上终结器:在与FormGhost.exe相同的目录中生成unpacked.exe文件。 这就是脱壳后的FormGhost.exe。
3、脱壳后运行unpacked.exe,点击帮助----注册,图9。 注册名称、注册码可以自由添加。 图10。 注册,提示:“注册码错误”请记住图11,这五个字。 关了。
p>4,开始反汇编:打开 反编译 W32Dasm黄金中文版,选择反汇编----打开脱壳后的unpacked.exe,变开始加载。如图5。图6。
返汇编之后如图7。点击上面的参考----串式参考如图8,
出现这个对话框图12。找到 “注册码错误”,双击它,汇编主程序便来到这里:图13。
(注意:正确注册信息在错误信息之上)关闭串式参考框。看主程序:图14。从注册码错误向上找到第一个跳转(关键跳,除了jmp的其它跳:je,jne,jz,jnz),来到这里图15。
(它上面的call叫关键call。),双击关键跳,看软件最下面有一行字:Line:379267 Pg 7586 of 7626 Code Data@004ACB4B@Offset 00ACB4BH in File:unpacked.exe.其中@Offset 00ACB4BH就是偏移地址,记住00ACB4B(后面的h代表16进制,不用管他),图16。
5,开始修改软件:打开16进制编辑器 UltraEdit.rar,(有点慢)图17。打开脱壳后的unpacked.exe,直接按ctrl+g,出现对话框,输入0xacb4b(即偏移地址,不要前面的000)图18。点确定,来到图19
前面说过正确注册信息在错误信息之上,所以这里将of85改为of84。图20。(如果正确注册信息在错误信息之下,这里改为eb)。将光标移到5上直接输入数字4即可,其他地方不要动。好了,改好只后左上角的文件---另存为unpacked222.exe
6,关闭所以软件,运行另存的unpacked222.exe,点帮助---注册,注册名称,注册码随便添,点确定,提示注册完成。图21。回到软件界面看看,帮助,注册一项已经变为灰色了,图22
7,破解全部完成