od破解软件教程破解教程

精心整理

希望大家互相学习学习,发现现在大家对于破解都不是很了解,很多人想学破解,但是去无从入手,所以在BCG 小组大家的商议下,决定为大家写一个破解入门的教程,希望能大家了解破解有一些帮助,希望能有更多的人踏入破解的大门。

1.初级,修改程序,用ultraedit 等工具修改exe 文件,称暴力破解,简称爆破

中级

高级

2.

(1

(2)动静结合的OllyDbg 引领破解工具的新潮流。

一,现在我们首先来学习下破解的初步,爆破~

1.侦壳

要破解一个软件首先要做的就是侦壳,要侦壳就要对壳有一定的了解,众所周知,软件作者用编程语言编写好软件后,是将它编译成扩展名为EXE的可执行文件。编译为EXE的目的有两点:

(1

(2

WinZIP、WinRAR

简称VC)。了解些编程的知识,会让破解更加轻车熟路。

下面来说侦壳,现在比较常用侦壳软件就PeiD,他具有华丽的图形界面。外壳整合(添加到鼠标右键)功能令使用更加方便,支持拖放操作。配置时,务请将“扩展到鼠标右键”打上对号。

其使用方法是,鼠标点住XX.exe,按鼠标右键,选"使用PEid扫描"即可;“壳”的信息就显示在底部。

2.破解工具OD。

关于

3.

是就可以为所欲为了?

一,破解时常用的汇编指令如下,汇编较弱者可先强行背住,以后就可慢慢理解了。

cmpa,b//比较a与b

mova,b//把b的值送给a,使a=b

ret//返回主程序

打开编辑exe

call//

je或

jne

jmp//无条件跳(机器码EB)

jb//若小于则跳

ja//若大于则跳

jg//若大于则跳

jge//若大于等于则跳

jl//

jle//

4.破解常见修改,参看表1。

汇编指令修改相应的机器码修改(通过16进制编辑器实现)

jnz/jne->nop75->90

jnz/jne->jmp75->EB

jz/je->nop74->90

je->jne74->75或0F84->0F85

表1破解常见修改

(1)修改为jmp(其示意图见图6)

je(jne,jz,jnz)=>jmp相应的机器码为EB(意思是出错信息向上找到的第一个跳转),jmp 的作用是绝对跳,无条件跳,从而跳过下面的出错信息。例如:

xxxxxxxxxxxx出错信息,如注册码不对,sorry,未注册版不成功,

等,我们

……

(图

(2

je(jne,jz,jnz)=>nop相应的机器码90(正确信息向上找到的第一个跳转),nop的作用是抹掉这个跳转,使这个跳转无效,失去作用,从而使程序顺利来到紧跟其后的正确信息处。例如:

xxxxxxxxxxxx正确信息,如注册成功,谢谢您的支持等,我们希望它不被跳过,让它出现,所以程序一定要顺利来到这里,不能跳转。在OD中,我们一般是把不需要设置NOP,只是把JE 或者JNZ改为JNZ或者JE即可,也就是把相等则跳改为不相等则跳,或者不相等则跳改为相等则跳,把跳转过程相反,达到更改程序流程的目的。

……

(图

1

这方面,我用PEID。它可以整合到资源菜单,非常方便。

2,确定用什么语言编写。我的经验是,DELPHI的程序结构清晰、紧凑,最好分析。其次是VC,BC,ASM,比较难的是VB,要有一定的经验才可搞定一两个。

2,在反汇编文件中找到可疑点。

经典语句自不用说,比如,“恭喜”,“注册成功”,“注册码错误”“无效的注册码”,“ThankYou","Sorry"...找到后,一般向上不远处就可看到条件转移语句JZ、JNZ、JLE什么的。

1

我一般这样改:

不需要跳,我就把JNE改为JE或者把JE改为JNZ

需要跳,我就把JE或者JNZ改为JMP。

这可避免万一你有正确的注册码反而会出错的事情发生。

下面的附件我做了一个关于爆破的视频教程,希望对大家理解爆破有帮助。

4.

(1)

movedx,[]//同上,通常这两个地址就储存着重要信息或者可以是popedx。callXXXXXXXX//关键call。

testeax,eax//eax为标志位。

jz(jnz)或jne(je)//关键跳转。

(2)

(3)

moveax,[]//这里可以是地址,也可以是其他寄存器movedx,[]//同上,通常储存着重要信息

cmpeax,edx//关键比较。jnz(jz)//关键跳转。

相关文档
最新文档