问题标签 [x64dbg]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2938 浏览

debugging - 无法在 x64dbg 中修改程序集

当我双击 x64dbg 中的一行以打开“assemble at”窗口并将“jne”更改为“jmp”时,它会将我带到下一步而不是打开 assemble 对话框。我究竟做错了什么?

0 投票
2 回答
1215 浏览

debugging - 如何从 ghidra 的相应指令中破解 x64dbg?

我通过ret-sync 同步了 x64dbg 和 ghidra 。我在 ghidra 中发现了一个有趣的点:

在列表视图中;文件my.dll从180000000开始。所以,然后在x64dbg中我为my.dll添加了一个dll中断,当我进入时,我用ctrl+shift+g转到文件偏移量并输入328b4,但我结束了在(第一行):

在 x64dbg 中,文件开始于:00007FF8B2F81000(CPU 选项卡,模块 my.dll,主线程 X,PID Y)。

显然指令是不一样的。(我相信我正确地做了rebase)

我怎样才能使对应的 ghidra -> x64dbg 并在“相同的地方”中断 x64dbg,即相同的指令?

0 投票
1 回答
52 浏览

.net - 使用逆向工程技术改变应用程序的网络请求路径

我正在调试自己的应用程序,所以请避免法律建议,

我是逆向工程的新手。我想知道,是否可以更改应用程序网络请求路径。假设,我的应用程序正在对该服务器https://example.com进行 API 调用,有人可以通过逆向工程将其更改为https://fake.com (没有源代码)。

我的应用程序是用 C#/.Net WPF 编写的。为了防止反编译,我使用 .Net-Reactor 将其转换为本机代码

0 投票
0 回答
163 浏览

assembly - 解压后的可执行文件 [UPX 3.91+] 的运行时错误 C0000005

尝试执行解压缩的可执行文件时会出现问题。原文件采用UPX (3.91 +) [modified]打包, Detect It Easy报道。


解包过程如下所示:

  • 使用x64dbg找到了指令:
  • 有效的入口点由jmp数据定义:***.7FF71816CE3C
  • 使用Scylla模块,指示真正的入口点,进行转储和转储修复。

注意:转储时有 2 个未定义的导入,但我通过删除忽略了它们(图片)

运行固定转储后,出现错误:

我还想指出,原始应用程序不想在x64dbg调试下完全工作,就像它在附加到进程时完成工作一样。

对不起,我还是新手,最近两天才这样做。感谢您的关注!

我认为源文件受到了保护,这可能是显而易见的,但我完全不知道该怎么做,实现目标的愿望并没有消失。


执行环境:

0 投票
0 回答
53 浏览

c - 使用 UPX 解压 C 打包脚本后没有输出

我学习如何使用 UPX 和 C 语言打包然后解包脚本。这是我打包的脚本: 在此处输入图像描述

这很简单,只需在屏幕上键入字符串“hello world”。好吧,我使用下一个命令打包它:

这对我来说一切正常,这是 DIE 的输出

在此处输入图像描述

如您所见,在这里我得到 PE 包含 UPX(best选项,但没关系)。接下来我要做的是使用 x64dbg(x32 模式)打开打包文件。在那里我找到了popad规则,在一些命令之后,我到达了应用程序的实际解包入口点。这里是: 在此处输入图像描述

我确信这是实际的入口点,因为当我执行下面的所有代码直到它正常工作时,执行结果如下:

在此处输入图像描述

好吧,在它之后,当我找到程序运行的实际点时,我尝试使用内置应用程序Scylla创建一个内存转储:

在此处输入图像描述

我做的步骤:

  1. 在 OEP 中插入我的新入口点,对我来说是005E14C0
  2. 其次,我点击按钮IAT Autosearch
  3. 然后我点击获取进口
  4. 下一步是使用选定的设置转储内存,我单击转储并将文件另存为main-upx_dump.exe
  5. 毕竟,我只需单击最后一个按钮Fix Dump即可修复导入表并保存文件。

我要做的下一步是运行 .exe,当我在 .exe 中启动它时cmd,我收到的输出什么都没有,只是一个空字符串,这里是:

在此处输入图像描述

我只是不明白我做错了什么,如果您知道可能出了什么问题,请写一个答案,非常感谢!

0 投票
0 回答
114 浏览

debugging - 如何在调试时跟踪 RIP/EIP(指令指针)值

在调试时,当调试器命中时,RIP 寄存器的值是调试器附加的当前地址。但是,有没有办法知道 RIP/EIP 寄存器的先前值,以便清楚在当前操作码之前执行了什么操作码?

0 投票
0 回答
31 浏览

reverse-engineering - 如何忽略线程切换并分析单个线程

我目前正在使用 x64dbg 来分析一个多线程程序。每次线程切换时,x64dbg 都会自动中断,这种情况经常发生。

我想专注于分析一个线程。有什么方法可以禁用线程开关的中断并仅单步执行特定线程?

如附图所示,我已禁用与线程相关的中断事件。这是默认设置。

x64dbg 选项:

x64dbg 选项

0 投票
0 回答
48 浏览

reverse-engineering - 无效的PE文件!(尝试将版本 8.0.1 中的数据包跟踪实验室放入 x64dbg)

当我将数据包跟踪器实验室放入 x64lgb 时,它显示无效的 PE 文件。我在管理员模式下运行它,但它仍然没有工作。

0 投票
1 回答
62 浏览

reverse-engineering - x64dbg 中的“r8d”是什么?

我正在调试我的 x64 c++ 程序以了解它在 x64dbg 中的外观。我在右侧窗口看到一些 r8-r15 寄存器,但我没有看到r8d. 还有其他类似的r15d。那是什么?

这是我的 x64dbg 的屏幕截图。 这是我的 x64dbg 的屏幕截图。

0 投票
1 回答
75 浏览

debugging - x64dbg 插件 Scylla 错误 - “无法转储图像”

作为一个 RE 菜鸟,我正在尝试关注这篇关于逆向工程 Black Desert 的博客文章,但似乎 x64dbg 中的默认插件 Scylla 对我不起作用,因为它会引发错误(“无法转储图像”),如图所示以下。

在此处输入图像描述

我试图从中获取二进制转储的程序是黑色沙漠游戏 (BlackDesert64.exe) 的可执行文件,我正在 Windows10 上运行调试器。

Pick DLL、IAT Autosearch 或 Get Imports 的任何其他按钮也没有给我任何帮助。我错过了什么?

任何见解将不胜感激。请让我知道是否有任何其他信息可以添加以更好地理解。