问题标签 [ida]

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 回答
3751 浏览

reverse-engineering - Windbg + IDA:计算模块中的地址

我正在远程调试 Windows XP 机器。我的一个驱动程序加载到地址 0xb2c4c000 到 0xb2cb9680。

现在,当我在 IDA 中打开驱动程序时,我想设置断点的偏移量是 00017619。

如何有效地将我的 IDA 地址匹配到 windbg?

我已经尝试了显而易见的方法,即对 0xb2c4c000 + 00017619 = 0xB2C635F7 求和,然后使用 windbg 中的“u”命令反汇编该地址。但结果与 IDA 中的组装不匹配。

附带问题:有没有办法取消在windbg中运行的命令?有几次我运行了需要很长时间才能处理的命令,如果需要,我希望能够取消它们。所以我可以继续工作。

谢谢你的时间。

0 投票
5 回答
8821 浏览

assembly - 异或后的x86 jnz?

在使用 IDA Pro 反汇编一个 x86 dll 后,我发现了这段代码(我在 pusdo-c 代码中添加的注释。我希望它们是正确的):

让我更容易理解:

在异或指令之后条件跳转指令如何工作?

0 投票
5 回答
286 浏览

assembly - 令人困惑的功能

所以,在使用 IDA 反汇编一个 dll 时,我遇到了这个类函数:

我知道ecx手段thiseax是返回值,但我不明白它返回什么。有什么帮助吗?

0 投票
2 回答
929 浏览

ida - 在 IDA Pro 中,有没有办法标记函数?

我使用 IDA Pro 发现了一个特别重要的功能。但是,源非常大,我相信我很快就会忘记它。

有没有办法将功能“标记”为重要,对其进行颜色编码或类似的东西?

0 投票
1 回答
1232 浏览

objective-c - 反汇编简单的 ARM 指令?

我一直在玩弄 IDA Pro,并试图为此拆解我自己的产品。

我注意到一些我不明白的事情,因为我的汇编语言知识很糟糕。这是一小段调用CGContextSetRGBStrokeColor的代码。

在 IDA 中,它看起来像这样:

IDA 输出

我不明白一些事情:

  1. 0x3F800000与数字 1有什么关系?我认为这是一个参考,但是我没有得到它所指的内容。
  2. 为什么MOVS被调用三次而不是四次(因为有四个参数)?
  3. R0,R1,R2 等是 CPU 寄存器吗?
  4. 有人可以解释这些:

一些文本行 http://a.imageshack.us/img836/4018/gah.png

该文件是一个框架(因此是一个Mach-O文件)。该功能来自CoreGraphics。

0 投票
1 回答
261 浏览

iphone - 无法从反汇编中解码简单的 ARM 函数原型?

我无法弄清楚这个简单函数的原型:

在堆栈中: 堆栈截图

函数调用:

函数调用截图

这就是我到目前为止所得到的,它会导致错误。

使用了三个寄存器(R0、R1、R2),所以应该有三个参数。第三个是指堆栈变量(我仍然不明白它是如何工作的)。# 0x28 (var_28) 仅在 ADD 调用中提及,不确定它可能是什么。我在哪里做错了?

如果我错过了一些信息,请告诉我,我会添加它。顺便说一下,这是来自Camera.framework

0 投票
1 回答
2654 浏览

reverse-engineering - 符号不匹配,ida/windbg

最近我试图了解更多关于 Windows 内核的信息。我为我的系统下载了正确的符号(win7 x64 免费)。我运行 IDA 并打开 ntoskrnl.exe。IDA 询问是否附加 pdb 文件。但是大部分功能都没有解决 - sub_XXXXXX。所以我运行了 Windbg,我解开了必须在 ntoskrnl - KiSystemCall64 中的随机选择的函数。它显示输出。但是IDA中没有这样的功能(或者没有解决)。总而言之,使用相同的符号,在 WinDBg 中未汇编的函数在 IDA 中无法解析(没有符号)(反之亦然)。我将不胜感激您的任何帮助和建议。

0 投票
1 回答
749 浏览

c++ - 以十六进制修改exe后,推送指令中的地址发生变化

在 Windows 7、32 位家庭专业版上运行

我在 Visual Studio 2008 中创建了一个非常简单的几行应用程序,在发布模式下与标准库编译并链接到可执行的 test.exe 中。

c中的代码如下:

这导致在 VS2008 中查看的以下机器代码和相应的程序集(地址在下面重新设置,正常起始虚拟地址为 0x4001000)

现在,我不想调用 MessageBox,而是想在推送 0 之后立即推送另一个字符串“h”,因此使用 hexedit 我搜索包含 FF15A420... 的部分并将其覆盖为

现在,如果我在 IDA free 中打开可执行文件,我会在 .text 部分看到以下内容:

到目前为止这看起来不错,我在 0x401014 看到我的新推送声明。

现在,如果我突然在 IDA 中免费调试 exe,我看到我的代码发生了变化(见下文),push 0FEEDBACC变成了push 0FFA4BACC,我看不出为什么前 2 个字节被更改了。

谁能解释这里发生了什么以及为什么我正在推动的数字被修改?我尝试更改此地址的起始物理字节(怀疑存在某种对齐问题),但似乎没有什么不同。

谢谢,

斯基蒙

0 投票
2 回答
975 浏览

assembly - exe如何工作以及如何调用dll和exe文件寻址

  • 基于 Windows 的可执行文件如何工作?
  • 如何在可执行文件中找到起始地址?
  • 对于任何文件执行,地址存储在哪里,我们如何读取这些地址?
  • 任何 dll 或 exe 文件的 call 和 ret 是如何工作的?

给我提示使用 ida pro 反汇编程序。

0 投票
1 回答
2286 浏览

disassembly - IDA Pro 以前的功能

我在 IDA Pro 的图形视图模式下,我正在查看一个函数。这个函数调用另一个函数,当我点击那个函数名时,我会看到它的汇编代码。

我的问题是我想要一种简单的方法来返回我来自的函数,即调用者函数。我可以通过跳转到外部参照来做到这一点,但我希望有一个更简单的“返回”或其他东西(就像 Eclipse 一样)。有这样的功能吗?