好友
阅读权限30
听众
最后登录1970-1-1
|
本帖最后由 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换成了我们自己的机器码开头地址而已
就这么简单、、真心的
|
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|