520Kelly 发表于 2014-4-1 20:01

【致新手】重启验证Patch机器码

本帖最后由 520Kelly 于 2014-4-1 20:03 编辑

@a1014 http://www.52pojie.cn/thread-248828-1-1.html

一看上面这孩纸就没认真看我教程、、也不认真点、、都有提到过重启验证的方法

千万别像他一样 去搞那个提示框 真心没意思、、浪费表情也浪费时间、、

重启验证 简单的话无非就两种 找关键比较点 patch机器码

今天简单讲讲如何去改机器码以上做个例子

0041CEA0    6A FF         push -0x1                              ; 机器码的开始段


段首 这一段的话 是完整的调用到了机器码

简单进行分析一下F8单步跟踪

0041C548    56            push esi 到这里 信息栏出现了网卡、、

0041C549    E8 626B0100   call AbotGrou.004330B0                   ; 机器码成型

下面那个call 机器码就成型 我们完全可以在里面做手脚嘛、、、有机器码出现还不好搞?

机器码 无非用在两种地方 第一个 就是注册框那里 会调用 也就是说 假如 你像这个程序 启动的时候就显示机器码 而且是一个窗口

完全可以想办法断下来、、还有 进入程序功能窗口 他里面有个子选项 里面有注册 像这种也会调用

所以可以尝试拦截这种信息框或者叫做窗口、、思路是很清晰的 不会很难理解的

然后锁定到机器码的计算段、、是计算机器码的那个关键段 是一段代码 不是单行、、

记住一定要锁定那一段

例子:
00401000 retn
00402000 push ebp (段首)
00403000 这里算做机器码的计算过程 当然不止这一行代码 有很多行
00405000 pop ebp
00406000 retn
像这里 就是一段机器码的计算 然后调用这个段首的call 就是机器码call

在call里面做手脚 也就是 这样

把push ebp 改成mov eax,00403000(一般是eax 主要看段尾的机器码出现在哪 如果段尾机器码出现在ecx 就是mov ecx)

00403000这个地址可以改成push ebp下面的代码 也就是说完全不需要补码 直接把这一段计算机器码的段里面的代码进行00填充 然后你想怎么改就怎么改

简简单单的一个小Patch小手法 然后mov eax,00403000以后 下面补上retn结束这一段 整理成命令就是

00401000 retn
00402000 mov eax,00403000
00403000 刚说了是机器码的计算过程 很多行代码 但是我们进行右键--编辑二进制 然后填上你想改的机器码 就Ok 不管他有多少行 只需要填上你的机器码 其他的不作改变 反正我们也不执行这些代码 让他在那待着
00406000 retn

相当于mov eax,1
         retn

大家肯定见过这种破解的代码 我就不解释了 我就是把1换成了我们自己的机器码开头地址而已

就这么简单、、真心的




bisoso 发表于 2014-4-1 20:45

247605832 发表于 2014-4-1 20:39

本帖最后由 247605832 于 2014-4-1 20:40 编辑

让我想到个思路,可以把别人买的(机器码+各种算法)=注册码 用到自己电脑里,让程序本身取的机器码不是取本机的,而是取买注册码的那个人电脑上的机器码。

小菜看K大这篇教程想出的 不知道对不对。

a1014 发表于 2014-4-1 20:22

Falcon_2015 发表于 2014-4-1 20:16

真心不错继续学中哈

时光。 发表于 2014-4-1 20:16

真心看不懂

Rex、 发表于 2014-4-1 20:03

学习了,我的沙发!~

yutao531315 发表于 2014-4-2 10:47

学习了 终于升到前途无量了 尼玛2年了啊 才进步一级

胖子阿桂 发表于 2014-4-2 17:24

看不懂啊 留着备用

494525777 发表于 2014-4-13 20:48

看懂了就是过程不好搞    有段视频就更透侧了
页: [1] 2
查看完整版本: 【致新手】重启验证Patch机器码