OD破壳

OD破壳
OD破壳

但愿大家互相进修进修,大家对于破解都不是很了解,人们想学破解,可是去无从入手,所以决议为大家写1个破解初级读物的教程,但愿能大家了解破解有一些帮忙,但愿能有更多的人踏入破解的大门

1.低级,修改步伐,用ultraedit等东西修改exe文件,称暴力破解,略称爆破

中级,追出软体的注册码

高级,开具注册机

2.经常使用破解东西

(1)侦壳东西:PEiD

(2)消息联合的OllyDbg引领破解东西的新潮水

一,此刻咱们起首来进修下破解的开端,爆破~

1.侦壳

要破解1个软体起主要做的就是侦壳,要侦壳就要对壳有绝对似的了解,家喻户晓,软体作者用编程语言编著好软体后,是将它编译成扩展名为EXE的可执行文件编译为EXE的目的有两点:

(1)有一些版权信息需要掩护起来,不克不及让别人随心改动,如作者的姓名、软体名称等;

(2)需要给步伐"瘦身",从而利便存储、使用以及网上传道输送

为了编译,会用到一些软体它们能将可执行文件压缩以及对信息加密(图1),实现上面所说的两个功效,这些个软体称为加壳软体为软体加上的东东就称为"壳"加壳软体差别于一般的WinZIP、WinRAR等打包类压缩软体加壳软体是压缩可执行文件的,压缩后的文件可以直接运行

最多见的加壳软体有3个:ASPACK 、UPX、PEcompact终究它们是主流,据计数,用它们加壳的软体约占市面所有软体的90%!其它不经常使用的加壳软体有ASPROTECT、PETITE 、NEOLITE、TELOCK等软体最多见的编程语言是Delphello,Visual Basic(略称VB),Visual C++(略称VC)了解些编程的常识,会让破解更加轻车熟道

底下来讲侦壳,此刻比力经常使用侦壳软体就PeiD,他具备华美的图形界面外壳整合(新增到鼠标右键)功效令使用更加利便,撑持拖放操作配置时,务请将"扩展到鼠标右键"打上对号

其使用要领是,鼠标点住XX.exe,按鼠标右键,选"使用PEid扫描"便可;"壳"的信息就

显示在底部

2.破解东西OD

有关OD的先容我把他放到附件里了,这个是看雪论坛的先容,是比力周全的,至少我感觉比我写的要好,所以大家根据他可以大好的了解OD

3.爆破实例

爆破是破解的开端,所说的爆破,就是指路程经过过程修改可执行文件的源文件,降临达相应的目的你半大白?呵呵,举个例子好了,好比说某同享软体,它比力用户输入的注册码,要是用户输入的,跟它路程经过过程用户名(或其它)算出来的注册码相等的话(也就是说用户输入的注册码不错了),那末它就会跳到注册乐成的处所去,不然就跳到堕落的处所去

大白过来了吧,咱们只要找到这个跳转指令,把它修改成咱们需要的"造型",如许,咱们是否就可认随心所欲了?

一,破解时经常使用的汇编指令如下,汇编较弱者可先强行违住,以后就可逐步理解了

cmp a,b //比力a与b

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

ret //归回主步伐

nop //无效用,英文"no operation"的简写,意思是"do nothellong"(呆板码90) (解释:ultraedit打开编辑exe文件时瞅见90,等同于汇编语句nop)

call //挪用子步伐,子步伐以ret末端

je 或jz //若相等则跳(呆板码74 或0F84)

jne或jnz //若不相等则跳(呆板码75或0F85)

jmp //无前提跳(呆板码EB)

jb //若小于则跳

ja //若大于则跳

jg //若大于则跳

jge //若大于等于则跳

jl //若小于则跳

jle //若小于等于则跳

pop xx //xx出栈

push xx //xx压栈

更为具体的指令请查阅汇编册本

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

汇编指令修改相应的呆板码修改(路程经过过程16进制编辑器实现)

jnz/jne->nop 75->90

jnz/jne -> jmp 75-> EB

jz/je->nop 74->90

jz/je -> jmp 74-> EB

jnz -> jz 75->74 或0F 85 -> 0F 84

jz -> jnz 74->75 或0F 84 -> 0F 85

jnz -> jz 75->74 或0F 85 -> 0F 84

je-> jne 74->75 或0F 84 -> 0F 85

表1 破解常见修改

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

je(jne,jz,jnz) =>jmp相应的呆板码为EB (意思是堕落信息向上找到的熬头个跳转),jmp的效用是绝对跳,无前提跳,从而跳过底下的堕落信息例如:

xxxxxxxxxxxx 堕落信息,如注册码不对,sorry,未注册版不乐成,"Function Not Avaible in Demo","Command Not Avaible"或"Can't save in Shareware/Demo"等,咱们但愿把它跳过,不让它浮现

……

xxxxxxxxxxxx 不错线路地点,直接跳转到这搭

(图6)

(2)修改成nop(其示意向见图7)

je(jne,jz,jnz) =>nop相应的呆板码90 (不错信息向上找到的熬头个跳转),nop的效用是抹掉这个跳转,使这个跳转失效,掉去效用,从而使步伐顺利降临紧跟其后的不错信息处例如:

xxxxxxxxxxxx 不错信息,如注册乐成,谢谢您的撑持等,咱们但愿它不被跳过,让它浮现,所以步伐绝对是要顺利降临这搭,不克不及跳转在OD中,咱们一般是把不需要设置NOP,只是把JE或JNZ改成JNZ或JE便可,也就是把相等则跳改成不相等则跳,或不相等则跳改成相等则跳,把跳转过程相反,到达更改步伐流程的目的

……

xxxxxxxxxxxx 堕落信息,咱们但愿不要跳到这搭,不让它浮现!

(图7)

二,怎样迅速确定暴破物

1,确定目标有无加壳没有最好了,有的话看是否常见壳,可不成以用现存脱壳软体迅速脱掉弄不稳定的话,权时放弃它"我吃定你了!",不要如许,老兄不就是一壳么,不要以及他一般见地记取,你今日的重点是爆破不要主次不分、舍本逐末,这也是刚开始学者最易犯的纰缪

这方面,我用PEID它可以整合到资源菜谱,很是利便

2,确定用啥子语言编著我的经验是,DELPHI的步伐布局清楚、紧凑密切,最好阐发其次是VC,BC,ASM,比力难的是VB,要有绝对似的经验才可弄定一两个

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

经典语句自不消说,好比,"恭喜","注册乐成","注册码纰缪""失效的注册码","Thank You","Sorry"...找到后,一般向上不远方就可瞅见前提转移语句JZ、JNZ、JLE啥子的

究竟上,只有少少少少的软体只修改注册判断就OK的所以咱们要把更多的注意力转到其它的可疑点如未注册标识,逾期正告,次数标识,NAG会话框...,谙练使用各类东西的搜刮功效是基本功之一找到后再向上不远方找前提转移语句

三,怎样暴破

当你找准爆破点后,你会发明有许多种爆破的要领均可以达目的

1,修改转移语句

我一般如许改:

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

需要跳,我就把JE或JNZ改成JMP

底下的附件我做了1个有关爆破的视频文件教程,但愿对大家理解爆破有帮忙4.动态追踪破解技巧-破解经典句式

以下是经典的比力组合,常常是注册码的浮现处,所以被称为破解经典句式⑴

mov eax,[ ] //这搭可所以地址,也可所以其它寄放器或mov eax [ ]

mov edx,[ ] //同上,凡是这两个地址就储存着意要信息或可所以pop edx

call XXXXXXXX //要害call

test eax,eax //eax为标记位

jz(jnz)或jne(je) //要害跳转

mov eax,[ ] //这搭可所以地址,也可所以其它寄放器

mov edx,[ ] //或是pop edx,凡是该地址就储存着意要信息

call XXXXXXXX //要害call

jne(je) //要害跳转

mov eax,[ ] //这搭可所以地址,也可所以其它寄放器

mov edx,[ ] //同上,凡是储存着意要信息

cmp eax,edx //要害比力jnz(jz) //要害跳转

软件破解入门教程

先教大家一些基础知识,学习破解其实是要和程序打交道的,汇编是破解程序的必备知识,但有可能部分朋友都没有学习过汇编语言,所以我就在这里叫大家一些简单实用的破解语句吧! ---------------------------------------------------------------------------------------------------------------- 语句:cmp a,b //cmp是比较的意思!在这里假如a=1,b=2 那么就是a与b比较大小. mov a,b //mov是赋值语句,把b的值赋给a. je/jz //就是相等就到指定位置(也叫跳转). jne/jnz //不相等就到指定位置. jmp //无条件跳转. jl/jb //若小于就跳. ja/jg //若大于就跳. jge //若大于等于就跳. 这里以一款LRC傻瓜编辑器为例,讲解一下软件的初步破解过程。大家只要认真看我的操作一定会!假如还是不明白的话提出难点帮你解决,还不行的话直接找我!有时间给你补节课!呵呵! 目标:LRC傻瓜编辑器杀杀杀~~~~~~~~~ 简介:本软件可以让你听完一首MP3歌曲,便可编辑完成一首LRC歌词。并且本软件自身还带有MP3音乐播放和LRC歌词播放功能,没注册的软件只能使用15天。 工具/原料 我们破解或给软件脱壳最常用的软件就是OD全名叫Ollydbg,界面如图: 它是一个功能很强大的工具,左上角是cpu窗口,分别是地址,机器码,汇编代码,注释;注释添加方便,而且还能即时显示函数的调用结果,返回值. 右上角是寄存器窗口,但不仅仅反映寄存器的状况,还有好多东东;双击即可改变Eflag的值,对于寄存器,指令执行后发生改变的寄存器会用红色突出显示. cpu窗口下面还有一个小窗口,显示当前操作改变的寄存器状态. 左下角是内存窗口.可以ascii或者unicode两种方式显示内存信息. 右下角的是当前堆栈情况,还有注释啊. 步骤/方法 1. 我们要想破解一个软件就是修改它的代码,我们要想在这代码的海洋里找到我们破解关键的代码确实很棘 手,所以我们必须找到一定的线索,一便我们顺藤摸瓜的找到我们想要的东东,现在的关键问题就是什么

OD破解常用方法

[分享] OD破解常用方法[复制链接] 一、概论 壳出于程序作者想对程序资源压缩、注册保护的目的,把壳分为压缩壳和加密壳两种 顾名思义,压缩壳只是为了减小程序体积对资源进行压缩,加密壳是程序输入表等等进行加密保护。当然加密壳的保护能力要强得多! 二、常见脱壳方法 预备知识 1.PUSHAD (压栈)代表程序的入口点, 2.POPAD (出栈)代表程序的出口点,与PUSHAD想对应,一般找到这个OEP就在附近 3.OEP:程序的入口点,软件加壳就是隐藏了OEP(或者用了假的OEP/FOEP),只要我们找到程序真正的OEP,就可以立刻脱壳。 方法一:单步跟踪法 1.用OD载入,点“不分析代码!” 2.单步向下跟踪F8,实现向下的跳。也就是说向上的跳不让其实现!(通过F4) 3.遇到程序往回跳的(包括循环),我们在下一句代码处按F4(或者右健单击代码,选择断点——>运行到所选) 4.绿色线条表示跳转没实现,不用理会,红色线条表示跳转已经实现! 5.如果刚载入程序,在附近就有一个CALL的,我们就F7跟进去,不然程序很容易跑飞,这样很快就能到程序的OEP 6.在跟踪的时候,如果运行到某个CALL程序就运行的,就在这个CALL中F7进入 7.一般有很大的跳转(大跨段),比如jmp XXXXXX 或者JE XXXXXX 或者有RETN的一般很快就会到程序的OEP。 Btw:在有些壳无法向下跟踪的时候,我们可以在附近找到没有实现的大跳转,右键-->“跟随”,然后F2下断,Shift+F9运行停在“跟随”的位置,再取消断点,继续F8单步跟踪。一般情况下可以轻松到达OEP! 方法二:ESP定律法 ESP定理脱壳(ESP在OD的寄存器中,我们只要在命令行下ESP的硬件访问断点,就会一下来到程序的OEP了!) 1.开始就点F8,注意观察OD右上角的寄存器中ESP有没突现(变成红色)。(这只是一般情况下,更确切的说我们选择的ESP值是关键句之后的第一个ESP值) 2.在命令行下:dd XXXXXXXX(指在当前代码中的ESP地址,或者是hr XXXXXXXX),按回车! 3.选中下断的地址,断点--->硬件访--->WORD断点。 4.按一下F9运行程序,直接来到了跳转处,按下F8,到达程序OEP。

破解各种软件注册码

一、准备好常用破解工具, 1、查壳工具:PEiD 0.95 2、脱壳调试:OllyICE v1.10(俗称OD,可下载一些OD插件保存在程序文件目录下的plugin文件夹中,启动OD时会自动链接插件) 3、Win32反汇编:WinHex14.2(本帖暂用不着) 4、修复工具:ImportREC V1.6(本帖暂用不着) 5、注册机编写:keymake 够了,初学不宜太多。新手所有的工具在小生工具包里都有(赞下小生同鞋的无私奉献)二、壳的概念:关于壳的介绍文章很多,很多初学者还不知道壳是什么,那么你就暂且这样通俗的去理解:壳就是软件的包装外壳。 三、脱壳:顾名思义,我就不多说了。 四、调试:用OD调试程序的进程,寻找关键(算法)CALL,修改有关汇编语言达到软件注册或破解的目的。 五、有人问:我不懂汇编语言和算法怎么办?我告诉你,没关系,首先你必须从简单的、好欺负的软件入手(初学者千万别找年轻的、经常更新的或高版本的软件),否则,你只会以失败而告终。 六、如果你是第一次学破解,我告诉你一个方法,只要你按如下操作一般都能成功(有的新版本软件除外): 1、首先注册软件,查看软件弹出的有关注册失败的信息框的内容。 2、查壳:有壳脱壳,无壳用OD载入。 3、手动脱壳基本方法:从OD载入软件程序后弹出是否分析对话框,点“否”,停在程序壳的入口(含有pushad等类似字符)。接下来我们的目的是要寻找第一个popad 。 (1)首先按F8,接下来或近处便是CALL,此时的CALL或是离这里很近的CALL必须按F7,否则你就掉入陷井,后面遇到CALL一旦掉入也没关系,你先记下来,重新载入程序(按CTRL+F2),再遇到这个时就用F7进入。 (2)出现往回跳转时,即红色线显示跳转实现,必须在下一行点左鍵,然后按F4步过,灰色为跳转未实现,可不理它照样F8。 (3)其他全部F8,一路下去必定能找到第一个popad,找到后离此不远必定有一个大的跳转,一旦跳转来到有push ebp字样,说明壳己走完到主程序(OEP),在此用OD插件→ollyDump→Dump debu…→Dump脱壳→保存。 4、破解:OD载入程序、点文件→打开→点击要破解的软件程序(无壳或己脱壳的)。 5、鼠标置左上(反汇编)窗口点右鍵,弹出框选项中选择ultra string reference(过激的字符串参考)中的Find ASCII。 6、在弹出的窗口内查找第一步骤的注册信息内容或有关注册成功和注册失败的字符。如果找不到,建议你放弃,另选其他软件,最好是年纪大些的(一般在2005年及以前的)。 7、找到有关字符后,双击它,回到OD主窗口,在反汇编窗口(左上)中可以看到有关字符,然后就在字符上下附近寻找关键跳转(即跳向注册失败或注册成功处),在该跳转近处必定有一个就是关键CALL。 8、如果用爆破,就修改关键跳转(jnz改为jz,jz改为jnz等)。 9、如果是追注册码就在关键CALL这行下断点(按F2或双击鼠标),然后按F9运行后,会弹出软件注册对话框,随意输入注册信息后确定,这时注意观察右上的寄存器窗口会显示出你输入的假码和软件的真码,真码可以注册,而这个CALL可以用来做注册机。 下面,我给大家找来一个简单的软件演示一下实例: 【软件名称】现代汉语词典

od破解调试秘籍断点

拦截窗口: bp CreateWindow 创建窗口 bp CreateWindowEx(A) 创建窗口 bp ShowWindow 显示窗口 bp UpdateWindow 更新窗口 bp GetWindowText(A) 获取窗口文本 拦截消息框: bp MessageBox(A) 创建消息框 bp MessageBoxExA 创建消息框 bp MessageBoxIndirect(A) 创建定制消息框 拦截警告声: bp MessageBeep 发出系统警告声(如果没有声卡就直接驱动系统喇叭发声) 拦截对话框: bp DialogBox 创建模态对话框 bp DialogBoxParam(A) 创建模态对话框 bp DialogBoxIndirect 创建模态对话框 bp DialogBoxIndirectParam(A) 创建模态对话框 bp CreateDialog 创建非模态对话框 bp CreateDialogParam(A) 创建非模态对话框 bp CreateDialogIndirect 创建非模态对话框 bp CreateDialogIndirectParam(A) 创建非模态对话框 bp GetDlgItemText(A) 获取对话框文本 bp GetDlgItemInt 获取对话框整数值 拦截剪贴板: bp GetClipboardData 获取剪贴板数据 拦截注册表: bp RegOpenKey(A) 打开子健 bp RegOpenKeyEx 打开子健 bp RegQueryValue(A) 查找子健 bp RegQueryValueEx 查找子健 bp RegSetValue(A) 设置子健 bp RegSetValueEx(A) 设置子健 功能限制拦截断点: bp EnableMenuItem 禁止或允许菜单项 bp EnableWindow 禁止或允许窗口 拦截时间:

OD使用方法简单说明

Ollydbg中断方法浅探 Ollydbg是一个新的32位的汇编层调试软件。适应于windows98、me、2000、xp和2003操作系统。由于他具有图形窗口界面,所以操作方便、直观,是cracker的好工具。 由于Ollydbg没有了TRW2000的万能断点,所以许多的新手感觉到用Ollydbg断点不好找。现在我来的说说Ollydbg下中断的几种方法。本人是个菜鸟,水平有限,可能不能完整的写出来,也可能存在错误。请大家指正。 我所表述的是Ollydbg v1.09d中文版,其他版本和英文版下自己参考。 第一寻常断点 Ollydbg中一般下中断的方法,就是在程序的地址处用鼠标选择这一行。然后按F2键,这时被选择的那一行的地址会变成别的颜色,就表示这个地址处下了中断。然后运行程序时只有到这个地址处就会被Ollydbg 中断。 这个方法用的比较多,所以把他称作寻常断点。 如果有命令行插件,就可以在命令窗口中输入BPX xxxxxxxx 下断点。 优点:只要自己怀疑是重要的代码处都可以下这种下断点,不受条件的限制,所以方便实用。 缺点:如果不知道代码功能下断点具有盲目性。 第二 API断点 Ollydbg中一般下API中断的方法,有二种。 1. 在代码窗口中点鼠标右键,出现功能菜单。在[搜索]选择项下有〔当前模块的名称〕和〔全部模块的名称〕俩项,选择其中的一项就打开了程序调用API的窗口,在这个窗口中选择你要跟踪的API函数名。双击这个函数就能到程序的调用地址处。然后用F2下中断。也可以在API窗口中选择需要跟踪的函数点鼠标右键出现功能菜单,选择〔在每个参考设置断点〕。同样下了断点。 快捷方式:Ctrl+N 2. 在命令行窗口中输入BPX API函数名或者BP API函数名后回车。这时出现了所有调用这个函数的地址的窗口,在这个窗口中可以看到调用这个API函数的地址已改变了颜色。说明下好了断点。 说明一下:BPX一般中断在程序调用API的地址处。BP会中断在API的写入地址处。二这有所不同,根据需要选择。 优点:这种方法下的断点是针对每一个API函数的,所以具有明确的目的。 缺点:关键的API函数不容易找到。所以有时下的断点没有作用。 第三内存断点(跟踪关键数据的断点) Ollydbg中的内存断点相当于TRW中的bpm 断点。 下断点的方法是:在程序运行中断时选择界面中的转存窗口,用光标选择内存中的一段关键数据(颜色会改变),然后右击鼠标出现功能菜单。选择〔断点〕项,其中有二个选择〔内存访问〕和〔内存写入〕。〔内存访问〕断点是程序运行时要调用被选择的内存数据时就会被Ollydbg中断,根据这个特点在破解跟踪时只要在关键数据内存中下中断就可以知道程序在什么地方和什么时候用到了跟踪的数据。对于一些复杂算法和流程变态的算法跟踪有很大的帮助。从破解上讲,一个注册码的生成一定是由一些关键数据或者原始数据计算来的。所以在内存中一定要用到这些关键数据。那么〔内存访问〕断点就是最好的中断方法。〔内存写入〕断点是程序运行时向被选择的内存地址写入数据时就会被Ollydbg中断。根据这个特点在破解时可以跟踪一个关键数据是什么时候生成的,生成的代码段在那个地方。所以一个关键的数据如果不知道他的由来就可以用〔内存访问〕断点查找计算的核心。

OD入门系列图文详细教程-破解做辅助起步(一)

OllyDBG的安装与配置 OllyDBG1.10版的发布版本是个ZIP压缩包,只要解压到一个目录下,运行OllyDBG.exe就可以了。汉化版的发布版本是个RAR压缩包,同样只需解压到一个目录下运行OllyDBG.exe即可: 学习各种外挂制作技术,马上去百度搜索"魔鬼作坊"点击第一个站进入、快速成为做挂达人。 OllyDBG中各个窗口的功能如上图。简单解释一下各个窗口的功能,更详细的内容可以参考TT小组翻译的中文帮助:

反汇编窗口:显示被调试程序的反汇编代码,标题栏上的地址、HEX数据、反汇编、注释可以通过在窗口中右击出现的菜单界面选项->隐藏标题或显示标题来进行切换是否显示。用鼠标左键点击注释标签可以切换注释显示的方式。 寄存器窗口:显示当前所选线程的CPU寄存器内容。同样点击标签寄存器(FPU)可以切换显示寄存器的方式。 信息窗口:显示反汇编窗口中选中的第一个命令的参数及一些跳转目标地址、字串等。 数据窗口:显示内存或文件的内容。右键菜单可用于切换显示方式。 堆栈窗口:显示当前线程的堆栈。 要调整上面各个窗口的大小的话,只需左键按住边框拖动,等调整好了,重新启动一下OllyDBG就可以生效了。 启动后我们要把插件及UDD的目录配置为绝对路径,点击菜单上的选项->界面,将会出来一个界面选项的对话框,我们 点击其中的目录标签: 因为我这里是把OllyDBG解压在F:\OllyDBG目录下,所以相应的UDD目录及插件目录按图上配置。还有一个常用到的标签就是上图后面那个字体,在这里你可以更改OllyDBG中显示的字体。上图中其它的选项可以保留为默认,若有需要也可以自己修改。修改完以后点击确定,弹出一个对话框,说我们更改了插件路径,要重新启动OllyDBG。在这个对话框上点确定,重新启动一下OllyDBG,我们再到界面选项中看一下,会发现我们原先设置好的路径都已保存了。有人可能知道插件的作用,但对那个UDD目录不清楚。我这简单解释一下:这个UDD目录的作用是保存你调试的工作。比如你调试一个软件,设置了断点,添加了注释,一次没做完,这时OllyDBG就会把你所做的工作保存到这个UDD目录,以便你下次调试时可以继续以前的工作。如果不设置这个UDD目录,OllyDBG默认是在其安装目录下保存这些后缀名为udd的文件,时间长了就会显的很乱,所以还是建议专门设置一个目录来保存这些文件。

OD使用完全教程

教你如何破解软件,OD破解软件,OD使用教程 教你如何破解软件,OD破解软件,OD使用教程 大家好,这几天我上网大概看了一下,ITyouth论坛的内容真的应有尽有,不知道应该写什么了,所以我想了一晚上终于想到了还是教你们些破解知识吧!我想对大家来说都很有用吧!我将会一直坚持下去保证课堂质量, 有不会的可以提出来问我,尽量解答(呵呵!我也是鸟嘛!)废话不多说!支持我的就往下看吧! 先教大家一些基础知识,学习破解其实是要和程序打交道的,汇编是破解程序的必 备知识,但有可能部分朋友都没有学习过汇编语言,所以我就在这里叫大家一些简 单实用的破解语句吧! ---------------------------------------------------------------------------------------------------------------- 语句:cmp a,b//cmp是比较的意思!在这里假如a=1,b=2 那么就是a 与b比较大小. mov a,b//mov是赋值语句,把b的值赋给a. je/jz//就是相等就到指定位置(也叫跳转). jne/jnz//不相等就到指定位置. jmp//无条件跳转. jl/jb//若小于就跳. ja/jg//若大于就跳. jge//若大于等于就跳. ---------------------------------------------------------------------------------------------------------------------- 这些都是我们在以后的课程中会经常遇到的语句,应该记住它们,接下来我们在讲 讲破解工具的使用: 我们破解或给软件脱壳最常用的软件就是OD全名叫ODbyDYK界面如图1 它是一个功能很强大的工具,左上角是cpu窗口,分别是地址,机器码,汇编代码,注 释;注释添加方便,而且还能即时显示函数的调用结果,返回值. 右上角是寄存器窗口,但不仅仅反映寄存器的状况,还有好多东东;双击即可改变Eflag的值,对于寄存器,指令执行后发生改变的寄存器会用红色突出显示. cpu窗口下面还有一个小窗口,显示当前操作改变的寄存器状态. 左下角是内存窗口.可以ascii或者unicode两种方式显示内存信息. 右下角的是当前堆栈情况,还有注释啊. 恩,今天的课程就上到这了,大家可以在自己的电脑下试试OD,了解了解OD,下堂 课我将破解一款软件给大家看,我们就用今天讲的语句和OD来破解,在以后的课 程里我还会教大家脱壳,因为现在的软件为了维护版权多数都加了壳的,所以要破

OD入门系列图文详细教程、破解做辅助起步

一、OllyDBG 的安装与配置 OllyDBG 1.10 版的发布版本是个ZIP 压缩包,只要解压到一个目录下,运行OllyDBG.exe 就可以了。汉化版的发布版本是个RAR 压缩包,同样只需解压到一个目录下运行OllyDBG.exe 即可: OllyDBG 中各个窗口的功能如上图。简单解释一下各个窗口的功能,更详细的内容可以参考TT 小组翻译的中文帮助: 反汇编窗口:显示被调试程序的反汇编代码,标题栏上的地址、HEX 数据、反汇编、注释可以通过在窗口中右击出现的菜单界面选项->隐藏标题或显示标题来进行切换是否显示。用鼠标左键点击注释标签可以切换注释显示的方式。 寄存器窗口:显示当前所选线程的CPU 寄存器内容。同样点击标签寄存器(FPU) 可以切换显示寄存器的方式。 信息窗口:显示反汇编窗口中选中的第一个命令的参数及一些跳转目标地址、字串等。 数据窗口:显示内存或文件的内容。右键菜单可用于切换显示方式。

堆栈窗口:显示当前线程的堆栈。 要调整上面各个窗口的大小的话,只需左键按住边框拖动,等调整好了,重新启动一下OllyDBG 就可以生效了。 启动后我们要把插件及UDD 的目录配置为绝对路径,点击菜单上的选项->界面,将会出来一个界面选项的对话框,我们点击其中的目录标签: 因为我这里是把OllyDBG 解压在F:\OllyDBG 目录下,所以相应的UDD 目录及插件目录按图上配置。还有一个常用到的标签就是上图后面那个字体,在这里你可以更改OllyDBG 中显示的字体。上图中其它的选项可以保留为默认,若有需要也可以自己修改。修改完以后点击确定,弹出一个对话框,说我们更改了插件路径,要重新启动OllyDBG。在这个对话框上点确定,重新启动一下OllyDBG,我们再到界面选项中看一下,会发现我们原先设置好的路径都已保存了。有人可能知道插件的作用,但对那个UDD 目录不清楚。我这简单解释一下:这个UDD 目录的作用是保存你调试的工作。比如你调试一个软件,设置了断点,添加了注释,一次没做完,这时OllyDBG 就会把你所做的工作保存到这个UDD 目录,以便你下次调试时可以继续以前的工作。如果不设置这个UDD 目录,OllyDBG 默认是在其安装目录下保存这些后缀名为udd 的文件,时间长了就会显的很乱,所以还是建议专门设置一个目录来保存这些文件。 另外一个重要的选项就是调试选项,可通过菜单选项->调试设置来配置:

OD零基础入门级教程

首先,我要声明一下,本教程只局限于不懂破解的朋友,让你们了解并有机会深入破解!其次,诸位大神请高抬贵手,不要骂我。虽然简易,但我的初衷是让不懂的人更有信心加入破解行列! 最后,我们只需5步,让你了解一个程序被破解。 介绍一下这个软件吧,我写的一个简单的软件,方便初学者容易理解。 程序需要输入正确的帐号和密码才可以登录成功,否则登录失败。 可是我们不知道正确的帐号密码。(也可以理解成是其他软件注册码) 既然他能提示登录成功与登录失败(或某些软件提示注册码错误),就说明他有一个判断,我们来打开OD载入程序,让他判断所有字符都是成功。 (由于是初级零基础入门级教程,所以不涉及“各种壳”、“暗桩”等等系列干扰新手的元素)在左上角窗口右键,选择“中文搜索引擎”-“搜索ASCII” 之后搜索(Ctrl+F)输入“登录失败”(也就是你不想看到的东西),找到结果后,我们双击那一行代码。

我们向上找找,这个判断跳转的来源在哪儿。 下图可以看到,在图片最上方的je命令左边有一条线,跳过了成功,指向了失败前面的代码。

我们在这行代码上右键,选择“二进制”-“NOP填充” 就是让这个跳转失效。那么现在,你所填写的注册码或密码,输入所有字符或不输入任何字 符,都是正确的了!

但是还没完,不用我说大家也知道,还需要保存一下~ 我们右键,选择“复制到可执行文件”-“所有” 跳转后继续右键“保存文件”,生成一个新的文件,也就是破解补丁,覆盖源文件。 最后,我们来打开刚才保存出来的新程序(也就是我们破解后的程序),是不是真的被破解

了? 我们还同样输入“abc”,恭喜,成功破解! 有了第一课的基础,大家是不是想试试身手,那么我们就拿个真实的软件试试身手吧! 这一课,我们要利用第一课假软件的知识,来获得一个真实软件的注册码! 这个软件其他视频教程也借用过,所以我也来借用一下。 ******************************************************************* 软件是一个IP搜索工具,有注册项,我们就来拿这个软件获得注册码,只需5步!注:(同样是初级软件,不涉及干扰新手学习的各种元素) 下面是注册界面的截图 注册后,截图就有提示出来了,暂且不管他提示的是什么,我们也知道要干什么了,对吗?

关于一款保护软件的破解过程详解

关于一款保护软件的破解过程详解 前段时间,有网友委托我破解一款保护软件,但本人对于破解是个菜鸟,略懂皮毛,硬着头皮上吧,但只破解了部分就搁浅了。知耻而后勇,我潜水学习去,本次略有所得,愿与各位网友共享,也请各位大牛多加指点。 一、所保护的软件如图所示: 二、保护的效果如下: 1)、系统的右键菜单失效。 2)、复制和粘贴功能失效。 3)、快捷键失效 4)、在c:盘建了一个临时文件夹c:\drmsoft,不能打开,打开即关闭。 三、分析: 1)可能是下了鼠标钩子 2)改写了剪贴板内存 3)屏蔽了快捷键 4)在OnTimer函数中枚举打开的窗口,如有c:\drmsoft,则发送WM_CLOSE消息。 四、使用的软件如下: 1)、od,相信这个软件不用介绍了。 2)、ida,静态汇编,也是一个比较牛X的软件 3)、peid 检测有无加壳 4)、dede(dephi)或peexplorer(VC),专用的反汇编软件,会汇编资源和事件,比较好用,推荐大家使用。 5)、xuetr检测底层和应用层的钩子等,牛X的国产软件。

五、过程 1、检测 (1)首先检测有无加壳,使用peid,经检测无壳(也可使用fi软件,或人工判断,需要有相当经验)。 (2)使用xuetr检测有无钩子,经检测,此保护软件无底层驱动钩子,但是加了一个应用层的WH_MOUSE_LL钩子。另外强烈鄙视360和腾讯,加了n个保护在系统中。 2、动手干吧 (1)跳过钩子,或取消钩子 屏蔽钩子的方法有很多,我也写了一个程序(本文就不加阐述了),我这次用的是在od调试中跳过钩子的方法。用ida反汇编软件,在import(导入表)中找到SetWindowHookExA,(如图) 双击SetWindowHookExA函数,如图: 再双击SetWindowHookExA,如图 单击工具栏中Open Functions Call Windows按钮(如图),以上过程是找到调用这个SetWindowHookExA函数的上级函数(下面有重复内容就不上图了)。如下图所示找到2处: 结果:

OD入门系列图文详细教程-破解做辅助起步(二)

字串参考(2) 学习各种外挂制作技术,马上去百度搜索"魔鬼作坊"点击第一个站进入、快速成为做挂达人。 OllyDbg是一种具有可视化界面的32位汇编—分析调试器。它的特别之处在于可以在没有源代码时解决问题,并且可以处理其它编译器无法解决的难题。 Version1.10是最终的发布版本。这个工程已经停止,我不再继续支持这个软件了。但不用担心:全新打造的OllyDbg2.00不久就会面世! 运行环境:OllyDbg可以以在任何采用奔腾处理器的Windows95、98、ME、NT或是XP(未经完全测试)操作系统中工作,但我们强烈建议你采用300—MHz以上的奔腾处理器以达到最佳效果。还有,OllyDbg是极占内存的,因此如果你需要使用诸如追踪调试[Trace]之类的扩展功能话,建议你最好使用128MB以上的内存。 支持的处理器:OllyDbg支持所有80x86、奔腾、MMX、3DNOW!、Athlon扩展指令集、SSE指令集以及相关的数据格式,但是不支持SSE2指令集。 配置:有多达百余个选项用来设置OllyDbg的外观和运行。

我们在上图中地址00440F2C处按F2键设个断点,现在我们按F9键,程序已运行起来了。我在上面那个编辑框中随便输入一下,如CCDebuger,下面那个编辑框我还保留为原来的“754-GFX-IER-954”,我们点一下那个“Register now!”按钮,呵,OllyDBG跳了出来,暂停在我们下的断点处。我们看一下信息窗口,你应该发现了你刚才输入的内容了吧?我这里显示是这样: 学习各种外挂制作技术,马上去百度搜索"魔鬼作坊"点击第一个站进入、快速成为做挂达人。 堆栈SS:[0012F9AC]=00D44DB4,(ASCII"CCDebuger") EAX=00000009

软件破解初级实例教程(附工具附图)

软件破解初级实例教程(附工具附图) 最近在群里总是看到很多新朋友在问: 1、“新手怎么学破解啊?”(这是标准的伸手党,baidu google 其实很好用) 2、“哎呀XX大牛,我什么基础都没有啊我不会汇编,不会C更不会C 还不会…………总之高手会的我都不会,我能学么?”(明确的告诉你,你能!你不和唐僧一样罗嗦的话你一定能。) 3、某白发帖问曰:“XX大牛,这软件你能帮我看看吗?我尝试了N天还是没有搞定,这是软件地址 https://www.360docs.net/doc/d19172651.html,/XXX/XXX.rar 搞定了发到我邮箱里吧,我邮箱是XXXXX@https://www.360docs.net/doc/d19172651.html,。” 其实嘛,所有的技术都是从基础开始的,不要去妄想那空中的楼阁,也不要想速成。 在这明确的告诉大家,其实大牛们最讨厌的就是问这些本不该问的问题的人。 因为这些人根本就没有认清现实,没有看到成功背后的一些东西。他们只看到了10% 40%,认为自己也可以凭借这些做到。 偷偷暴下料。其实在去年的时候,小生同鞋,逆流师傅等现在的大牛还都是些小菜哦,现在呢?嘿嘿~~

好了,上面叽咕了这么多。也算是考验下大家的耐心吧。嘿嘿。 其实学习的首要条件是兴趣!!兴趣越大你的投入就更多。 本文旨在分享,非本人原创,虽然我会简单的破解但没有这篇文章写的详细,我只是添枝加叶而已。大家可以忽略图片上的logo水印,不然又有人质疑说什么软广告,本人有点懒,懒得用软件去掉,望大家谅解。 本文就是解决新手的疑问,让你走出迷茫,让你知道如何学破解。0基础一样能学的很好。 大牛=10%天分40%耐心(这是帖子写完成后加的一句,其实你能认真看完这帖子你就够有耐心了)50%的长期努力。我相信下面这个教程足够调起你的兴趣了,看完后你会发现,原来破解软件其实并没有那么难。 一、准备好常用破解工具: 1、查壳工具:PEiD 0.95汉化版 2、脱壳调试:OllyICE (俗称OD,可下载一些OD插件保存在程序文件目录下的plugin文件夹中,启动OD时会自动链接插件) 3、Win32反汇编:WinHex (本文暂用不着) 4、修复工具:ImportREC (本文暂用不着) 5、注册机编写:keymake够了,初学不宜太多。新手所有的工具在小生工具包里都有(赞下小生同鞋的无私奉献) 二、壳的概念:关于壳的介绍文章很多,很多初学者还不

0水平破解入门,手脱爆破追码注册机(图文)

9月底,经部下的推荐才知道龙族,最近在空闲的时候浏览了许多帖子,收获不小。但也有许多破解爱好者目前仍处于0水平,为此,抽空编写此帖,希望对0水平的爱好者有所帮助。 如果你爱好破解并真心想学,你必须有所准备,破解之路是学无止境的,随着破解水平的提高势必影响着反破解的发展,我们都知道的软件更新,它除了改进功能外,另有很大一部份就是提高了反汇编和破解的功能。 长话短说,我们现在开始进入正题。 一、准备好常用破解工具, 1、查壳工具:PEiD 0.95 2、脱壳调试:OllyICE v1.10(俗称OD,可下载一些OD插件保存在程序文件目录下的plugin 文件夹中,启动OD时会自动链接插件) 3、 Win32反汇编:WinHex 14.2 (本帖暂用不着) 4、修复工具:ImportREC V1.6 (本帖暂用不着) 5、注册机编写:keymake 够了,初学不宜太多。 二、壳的概念:关于壳的介绍文章很多,很多初学者还不知道壳是什么,那么你就暂且这样通俗的去理解:壳就是软件的包装外壳。 三、脱壳:顾名思义,我就不多说了。 四、调试:用OD调试程序的进程,寻找关键(算法)CALL,修改有关汇编语言达到软件注册或破解的目的。 五、有人问:我不懂汇编语言和算法怎么办?我告诉你,没关系,首先你必须从简单的、好欺负的软件入手(初学者千万别找年轻的、经常更新的或高版本的软件),否则,你只会以失败而告终。 六、如果你是第一次学破解,我告诉你一个方法,只要你按如下操作一般都能成功(有的新版本软件除外): 1、首先注册软件,查看软件弹出的有关注册失败的信息框的内容。 2、查壳:有壳脱壳,无壳用OD载入。 3、手动脱壳基本方法:从OD载入软件程序后弹出是否分析对话框,点“否”,停在程序壳的入口(含有pushad等类似字符)。接下来我们的目的是要寻找第一个popad 。 (1)首先按F8,接下来或近处便是CALL,此时的CALL或是离这里很近的CALL必须按F7,否则你就掉入陷井,后面遇到CALL一旦掉入也没关系,你先记下来,重新载入程序(按CTRL+F2),再遇到这个时就用F7进入。 (2)出现往回跳转时,即红色线显示跳转实现,必须在下一行点左鍵,然后按F4步过,灰色为跳转未实现,可不理它照样F8。 (3)其他全部F8,一路下去必定能找到第一个popad,找到后离此不远必定有一个大的跳转,一旦跳转来到有push ebp字样,说明壳己走完到主程序(OEP),在此用OD插件→ollyDump→Dump debu…→Dump脱壳→保存。 4、破解:OD载入程序、点文件→打开→点击要破解的软件程序(无壳或己脱壳的)。 5、鼠标置左上(反汇编)窗口点右鍵,弹出框选项中选择ultra string reference(过激的字符串参考)中的Find ASCII。 6、在弹出的窗口内查找第一步骤的注册信息内容或有关注册成功和注册失败的字符。如果找不到,建议你放弃,另选其他软件,最好是年纪大些的(一般在2005年及以前的)。 7、找到有关字符后,双击它,回到OD主窗口,在反汇编窗口(左上)中可以看到有关字符,然后就在字符上下附近寻找关键跳转(即跳向注册失败或注册成功处),在该跳转近处必定有一个就是关键CALL。

相关主题
相关文档
最新文档