相关疑难解决方法(0)

反汇编包含大数据或压缩的文件

这是我试图弄清楚如何分解 exe 的第四天。

仍然没有运气,文件在运行后立即给出调试器错误。我正在使用 OllyDBG,看起来文件要么被压缩,要么包含大量数据。我认为这只是为了调试保护,但我无法让它工作。

我正在尝试学习汇编,这是我在测试应用程序方面取得更好的“新水平”成就。我想要更改的只是将 exe 文件内的一种文本更改为另一种文本。所以这是一个变量的变化。即使只是简单地改变里面的数字我也会感到满意。只是想知道如何。

该文件在打开后最初运行其他exe,但这不是我想要触摸或编辑的任何内容。

这是文件的打开方式:

00401000 >/$ 68 01504400    PUSH tryme.00445001
00401005  |. E8 01000000    CALL tryme.0040100B
0040100A  \. C3             RETN
0040100B   $ C3             RETN
0040100C     A9             DB A9
0040100D     FE             DB FE
0040100E     39             DB 39                                    ;  CHAR '9'
0040100F     B1             DB B1
00401010     30             DB 30                                    ;  CHAR '0'
00401011     D8             DB D8
00401012     BB             DB BB
00401013     A6             DB A6
00401014     45             DB 45                                    ;  CHAR 'E'
00401015     23             DB 23                                    ; …
Run Code Online (Sandbox Code Playgroud)

x86 assembly exe disassembly ollydbg

1
推荐指数
1
解决办法
1323
查看次数

将跳转命令写入x86-64二进制文件

我正在使用GDB调试Mac OS X 64位应用程序。我看到跳过一大堆代码可以解决我所有的问题。

但:

如何修补可执行文件以实现跳转?我希望应用程序在没有调试器的情况下自动跳转到代码中的定义点。

这就是我想做的:

在地址0x1000027a9(由调试器提供)处跳转到address 0x100003b6e。我正在努力通过HexEdit进行操作,但是没有成功。我在任何地方都读到了关于jmp到绝对地址操作码的信息(FF似乎是正确的操作码,但这是一个调用,而不是跳转...),但是没有任何效果。错误的访问,segfault。

我怎样才能做到这一点?

macos assembly patch x86-64

1
推荐指数
1
解决办法
2279
查看次数

标签 统计

assembly ×2

disassembly ×1

exe ×1

macos ×1

ollydbg ×1

patch ×1

x86 ×1

x86-64 ×1