问题标签 [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 投票
4 回答
2669 浏览

c++ - 这里发生了什么:v5 = *(_Byte *)(this + 4)?

我正在查看来自 IDA pro 的代码转储。有一个功能作为这种布局:

我真正好奇的是“+ 4”到底在做什么?这是添加还是其他?

谢谢

0 投票
2 回答
5395 浏览

reverse-engineering - IDA pro:在 unknown_libname_x 函数上应用签名?

在应用签名时,IDA pro 会命名一些函数 unknown_libname_x。这些函数反映了 IDA 没有足够详细信息的库函数。然而,通常其他签名可能有关于此类函数的更多信息,因此当在第一个签名之后应用这些签名时,我希望 IDA 也适用于所有 unknown_libname_x 函数 - 可以这样做吗?因为它是 IDA 似乎只在以前应用的签名或您未触及的功能上应用签名。

坦率地说,我不明白为什么 IDA 在默认情况下不这样做 - 如果签名 y 在特定功能上比 x 具有更多信息,那么希望 y 否决/添加到 x 提供的信息似乎是微不足道的。

0 投票
2 回答
640 浏览

c++ - IDA Pro、QT诺基亚库、dll调用,它到底在做什么?

我已经使用 IDA Pro 反转了一个 dll。查看 IDA 生成的伪代码,我对 QT 库的一组调用感兴趣,它是否试图找到函数的位置以便可以调用它们?我想尝试重复正在发生的事情,但对 IDA 生成的代码有点困惑,有人可以给我一些关于什么是真正必要的指示吗?在定义函数调用时,我对“this”的使用特别感兴趣,因为我不确定它的含义。谢谢。

0 投票
1 回答
2087 浏览

c++ - IDA pro 'this' 关键字

我想知道“this”关键字在 IDA pro 伪 C++ 代码中的确切含义是什么。

假设我有一个函数调用:

调用此函数:

好的,所以在函数中我们可以看到定义“int this”,根据文档,它是指向用于调用对象的对象的指针。我想知道的是如何重写函数,以便它们运行相同但不需要传递“this”参数?

0 投票
1 回答
1040 浏览

c++ - MFC .dll、CString 问题、IDA c++ 伪代码,有多接近?

我有一些 IDA 伪 C++ 代码,我想知道它有多接近......

这些行:

由于反编译的 .dll 使用 CString,我假设它是基于 MFC 的 dll。我想,阅读 CString 将立即可用的文档。但是,我收到错误 Error 1 error C2665: 'ATL::CStringT::CStringT' : 17 个重载都不能转换所有参数类型?

MakeLower 和 Find 也有类似的错误,根据我所阅读的内容是标准 CString 函数,那么我哪里出错了?

此外,您应该能够通过使用 #include 标头在非基于 mfc 的 .dll 中使用 CString 类,但是,我得到相同的错误 1 ​​错误 C2039: 'CString' : is not a member of 'ATL:: CStringT' 那么我该如何使用它呢?

谢谢。

0 投票
4 回答
4114 浏览

python - 手动修改 C++ 名称

我正在使用该插件在 Python 中为IDA Pro反汇编程序编写脚本。idapython使用它,我能够填补 IDA 自动分析不足的空白。

让我难过的一个领域是用(为了更好的术语)“漂亮的名字”来命名位置/功能。我的意思的一个例子如下所示:

IDA 漂亮名字示例截图

idapython而 IDA Pro 本身只允许我输入基本的 C-ish 函数名称。如果我输入不允许的符号(例如范围解析运算符),它们将被下划线替换。但是,如果我手动输入一个错误的名称(例如__ZN9IOService15powerChangeDoneEm),IDA Pro为我美化它。

因此我的问题是:我怎样才能生成经过修改的名称idapython?是否有可用的名称修饰库?在 Python 中可用吗?我唯一的希望是摆脱重整功能g++并解决这个问题吗?

0 投票
1 回答
1959 浏览

ida - IDA pro 逆向工程——字符串条件

我正在使用 IDA pro 用打包程序来反转木马,我看到木马通过用 winrar 解压我的木马来解压一些文件(实际上是两个文件)。现在我想看看到底发生了什么,并试图使用 IDA pro 来反汇编它,但是当用字符串分析它时,我没有找到解压的文件名,这就是为什么我假设它们被推送到堆栈,我想知道如何在 IDA pro 中设置一个条件,如果一个寄存器包含一个字符串,例如 if %eax = string (任何字符串),则会引发该条件。

谢谢你的帮助

0 投票
2 回答
1226 浏览

powerpc - 什么是 PPC,它是什么意思?

所以每个人都在谈论PPC,我不知道它是什么。我知道 PPC 有多个术语,但我知道这个与名为 Ida 或类似的程序有关。那么,PPC代表什么?这是什么意思/做什么?我在哪里可以了解它?

0 投票
3 回答
8709 浏览

com - 在 IDA Pro 中是否可以对 .data 段中定义的 vtable 进行结构字段偏移?

这是我想要实现的目标。我确定了一个类,我将其定义为存储类数据的结构。该类的方法之一使用类字段,就好像它是指向 vtable 的指针。

如您所见,它从 vtable 调用第三个函数。在运行时,我发现 vtable_40194AE0 指向 .data 部分中的数组,如下所示

有没有办法以某种方式告诉 IDA vtable_40194AE0 总是指向 0x40194AE0 处的 vtable 所以给定的伪代码调用看起来像

?

我试图将结构的 vtable_40194AE0 设置为“用户定义的偏移量”,但它没有帮助:(

非常感谢 !

0 投票
3 回答
34375 浏览

assembly - IDA pro asm 指令变更

我只想知道如何更改 IDA-view A 中的 asm 指令:

  1. 如何编辑指令(例如:jnz 到 jmp)?
  2. 如何插入新指令(调用 func1,调用 func2 插入现有代码)?

我知道如何制作 dif 文件,我知道如何在我的 DLL 上应用更改,但我怎样才能“有所作为”?如何在 IDA 中编辑代码?

我学会了如何修改 DLL:

  1. 修改代码(如何?)
  2. 生成差异文件。
  3. 使用 diff 文件和脚本将代码修改应用于 DLL。