吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2482|回复: 15
收起左侧

[新手问题] 0F 84 87 1B 01 00看着机器码,直接转换成JMP 到xx地址的机器码

[复制链接]
冥界3大法王 发表于 2021-2-8 23:37
本帖最后由 冥界3大法王 于 2021-2-8 23:38 编辑

0F 84 87 1B 01 00看着机器码,直接转换成JMP 到xx地址的机器码?
怎么才能手动的计算出来? 编了一个自动化汇编爆破的程序
0F 84 ?? ?? ?? ==> JMP xx
0F 85 ?? ?? ?? ==> JMP xx
不会了。
近跳,远跳,这个查表就行了。偏移量就不会算了。

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| 冥界3大法王 发表于 2021-2-9 20:54
无闻无问 发表于 2021-2-9 13:08
要跳的地址 - 当前指令的下一行地址,然后反向取,即为机器码…

@无闻无问
求教x32dbg/x64dbg里的计算器取反,怎么输入?
Delphi的实现代码又长成啥样?

[Asm] 纯文本查看 复制代码
00427B7C | E8 3C6B0000          | call keygen.42E6BD                      | 假如当前,这是当前行!
00427B81 | E9 78FEFFFF          | jmp keygen.4279FE                       | 这里算下一行?
00427B86 | 8BFF                 | mov edi,edi                             |
00427B88 | 55                   | push ebp                                |
00427B89 | 8BEC                 | mov ebp,esp                             |
00427B8B | 51                   | push ecx                                | ecx:EntryPoint
00427B8C | 53                   | push ebx                                |
00427B8D | 8B45 0C              | mov eax,dword ptr ss:[ebp+C]            | 这里要跳的地址


00427B8D -  00427B81 然后结果 再取反? 这理解的对吧?
 楼主| 冥界3大法王 发表于 2021-2-9 23:47
无闻无问 发表于 2021-2-9 21:58
过年了还在研究,令人敬佩…厉害,你把x64弄精了,我也学到了很多…

image.png
@无闻无问   用了三四天时间编了个自动化的工具
我现在已经很少用OD了,还是x36dbg用起来香各种组合技,各种自定义按键,
自创心法《36路爆破经典定式》+Ollydbg/x36dbg贴心伴侣
还有最近半年多新领悟的技能。
瞬间就定位到关键代码处。
全在总结和运用了。
没解决的问题就画思维导图和2分法化难为易的拆解掉。
lcwxxf 发表于 2021-2-9 06:03
目标地址-当前指令地址-5

免费评分

参与人数 2吾爱币 +6 热心值 +2 收起 理由
冥界3大法王 + 2 + 1 谢谢@Thanks!
涛之雨 + 4 + 1 用心讨论,共获提升!

查看全部评分

沧恋 发表于 2021-2-9 06:09
用的是E9 目标地址-当前地址-5  我想公式应该是一样的
64的地址好像是 目标地址-当前地址-7

免费评分

参与人数 2吾爱币 +8 热心值 +2 收起 理由
涛之雨 + 4 + 1 用心讨论,共获提升!
冥界3大法王 + 4 + 1 又帮我解决了头痛问题,谢谢

查看全部评分

westcafe 发表于 2021-2-9 09:11
本帖最后由 westcafe 于 2021-2-9 09:19 编辑

e9 88 1B 01 00 90
 楼主| 冥界3大法王 发表于 2021-2-9 09:14
本帖最后由 冥界3大法王 于 2021-2-9 09:23 编辑

005EFE47  E9 881B0100  jmp gsp5.6019D4
@westcafe
然而与实际不符,看正确答案。
楼上两位的,至少能对上。
westcafe 发表于 2021-2-9 09:15
本帖最后由 westcafe 于 2021-2-9 09:19 编辑

长跳转就是地址+1  最后补90    0f 84   或者   0f 85是操作码   后面的是地址 ,  比如 原来是  0f 84  12 01 00 00   就改为  e9 13 01 00 00 90 , 同理  如果是  0f 85  22 05 00 00   就改为  e9 23 05 00 00 90 很好记得!
无闻无问 发表于 2021-2-9 13:08
要跳的地址 - 当前指令的下一行地址,然后反向取,即为机器码…

免费评分

参与人数 1热心值 +1 收起 理由
冥界3大法王 + 1 明白了,谢谢

查看全部评分

 楼主| 冥界3大法王 发表于 2021-2-9 21:01
@无闻无问
明白了,谢谢。
 楼主| 冥界3大法王 发表于 2021-2-9 21:13
@无闻无问

计算公式为:
要跳的地址 - 当前指令的下一行地址,然后反向取,即为机器码
当前行为:005EFE47 0F84871B0100  je gsp5.6019D4
下一行为:005EFE4D 83EC08        sub esp,8
要跳的地址为6019D4
006019D4-005EFE4D= 得这个00011B87(这个如何取反成87 1B 01 00) 用x32dbg/x64dbg命令行实现?有取反的现成命令吗?
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 07:02

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表