冥界3大法王 发表于 2018-9-2 20:15

为OD加个【一键机器码互访定位】功能

本帖最后由 冥界3大法王 于 2018-9-3 07:26 编辑

假设已知VA是: 0040100E

我想瞬间定位到WinHEX中的这个地方,楼下的你会怎么做?
请先思考,并说出几种方法来考考自己的基本功是否达标?














































1.VA 、 RVA 、 文件偏移 的转换是否 熟练 ?
2. 只有熟练做到的,才可能会脱壳,懂得PE知识
3. 我们可以使用 https://bbs.pediy.com/attach-download-68459.htm 这个插件,但是!Win10中运行,你会发现,点击毫无反应
(内有源码)

第二种方法是 使用上图中的 那个 转换工具 这样就省去手工计算;但是你也得打开软件,粘入地址,粘回结果,打开WinHEX,ALT+G。。。
这样,我们的OD和WinHEX ,对比参考 和 对比修改起来并不十分方便~~
VA和RVA的计算,我们只要和基址相加或相减即可马上得到
但是! (节偏移:RVk这个就得用工具查询所在区块,就这步最恶心) 或者 自己编程 或 改代码实现
第三种 我们利用机器码+ 16进制编辑器搜索 ,这种最为简单:

比如:OD中,我们选中几行后SHIFT+C得到:8B 00 E8 80 AE FF FF 8B 0D 64 81 45 00 A1 74 80 45 00 8B 00 8B 15 60 65 45 00 E8 80 AE FF FF
这样的搜索字符串,WinHEX并不能直接接收,得干掉空格

;OD中shift+C,得到机器码传入剪贴板
StringReplace, 去空格后的字符串, clipboard, %A_Space%, , All   ;这一步是去空格操作
clipboard = %去空格后的字符串%

来吧:
      IfWinExist, ahk_class WHXMDI0
      {
                WinActivate
                Sleep, 500
                PostMessage,0x111,51,0,,ahk_class WHXMDI0   ;打开【搜索16进制代码】窗口
                Sleep, 500
                Send, ^v
                ;ControlSetText , Edit1, %clipboard%, 查找16进制数值      ;修改编辑框内容以便输入
                ControlClick, Button7, 查找16进制数值
                ExitApp
      }
      else
      {
                MsgBox, 262160, 不运行WinHEX, 耍我么`n趁早滚蛋~~?
                InputBox, 变量名, 请输入WinHEX路径
                Run,%变量名%, , UseErrorLevel
                if UseErrorLevel <> 0
                {
                        Run, D:\破解相关\修改_调试_监控\修改查看类\WinHEX18.7传说最后的稳定版\WinHex自制汉化修正版.exe
                        gosub, 来吧
                        ExitApp
                }
      }

这样机器码就马上过来搜索了

我们再从WinHEX 中的文件偏移 ,转换 回来 定位VA那也只是1秒钟的事 。 就是这么简单,楼下你掌握了吗?
最后我们再把上面的AHK代码编译成EXE 并利用OllyMoreMenu_cn.dll 加进去

这样点下菜单也就完活了。{:17_1061:}
热键 :
shift +x
shift + c
shift+V
ctrl+X

看完操作动画,是不是很爽呢? 这就是编程的魅力~~

Joey_Chiu 发表于 2018-9-2 20:34

膜拜大神,并火钳刘明~

不苦小和尚 发表于 2018-9-2 20:35

膜拜法王兄{:301_1004:}

noah88 发表于 2018-9-2 20:53

一脸懵逼进来,一脸懵逼出去{:301_999:}

动物凶猛 发表于 2018-9-2 20:56

小白完全看不懂

pwbvsgf 发表于 2018-9-2 21:57

膜拜大佬

Homely 发表于 2018-9-2 22:15

法王大佬   搞点新手教程啊    这个花里胡哨的 看不懂啊

冥界3大法王 发表于 2018-9-3 07:25

@不苦小和尚
@noah88
@动物凶猛
@pwbvsgf
@梦古无疆
@ugly
又修改了了下,加了点动画演示。{:301_988:}
请欣赏
页: [1]
查看完整版本: 为OD加个【一键机器码互访定位】功能