使用 IDA 跨平台:VM、Wine、其他选项?

逆向工程 艾达
2021-07-01 09:49:07

我想为自己的家庭使用购买 IDA Pro 许可证。但是,我使用了所有三个受支持的平台:台式机上的 Windows 和 Linux,以及笔记本电脑上的 OS X。我买不起不止一个许可证,所以我很想看看其他人是否遇到过类似的情况以及他们是如何解决的。

我对每个版本的初步想法:

  • Mac OS X:我最常使用笔记本电脑,但在 13" 屏幕上倒车并不总是很有趣,我无法在 Windows 或 Linux 上使用 Mac 版本。
  • Windows:我听说过在 Mac 和 Linux 上的 Wine 中甚至在 VM 中运行 Windows 版本的好消息。
  • Linux:即使我在 Mac 或 Windows 上,我几乎总是有一个 Linux VM,所以我总是可以在 VM 中安装 IDA。

我倾向于 Windows 或 Linux 版本以便能够在任何地方使用,但我从未在非本地环境中使用过 IDA,所以我有点担心键盘快捷键和集成。

有什么好的建议吗?

3个回答

您的 IDA Pro 许可证允许您在两台台式机和一台笔记本电脑上安装 IDA。如果您在“便携式/虚拟机”环境中安装 IDA,您可能需要检查许可证情况,但这里只有 Hex-Rays 可以为您提供明确的信息。所以我从我的答案中省略了那部分。(一些 Hex-Rays 员工也经常光顾此站点)。

这在很大程度上取决于您的用例。当您拥有笔记本电脑但无法访问您的(Windows/Linux)桌面时,您多久想做一些反向工作?

当我使用 IDA 时,我希望有很多屏幕空间,并且通常不需要为调试者提供太多屏幕。这通常意味着您需要在主机操作系统上使用 IDA,在来宾操作系统中使用调试器,因为您始终可以访问主机上的整个屏幕,但可能无法在来宾中访问,尤其是在多显示器配置中。

就我个人而言,我有 Linux 版本,虽然 Linux 是我的主要桌面环境,但我曾经需要在客户那里使用 IDA,在他们的网络中只允许 Windows。我被允许安装 VirtualBox 并在那个 VirtualBox 中运行 Linux(仅主机网络,无法从 Linux 访问他们的网络),我的 IDA 工作得很好,使用“远程调试器”来调试主机上运行的东西。因此,虽然我确实错过了我的大屏幕,但我能够在没有任何键盘快捷键、无法执行所需操作或崩溃的问题的情况下工作。

因此,如果您 95% 的时间都在旅行和使用 Mac 笔记本电脑工作,如果我是您,我会购买 Mac 版本,并在 VM 中调试 Linux/Windows 程序。如果您大部分时间都可以访问桌面,并且认为 Mac 上的 IDA 是一种“紧急模式”,请获取您在桌面上使用最多的操作系统的版本,然后在其中安装一个带有 IDA 的虚拟机苹果电脑。在这种情况下,该操作系统是 Windows 还是 Linux 应该无关紧要。

我有带 Hexrays 的 Windows 版本,根据我的经验,我在 Ubuntu(14.04 和 16.04)和 macOS(自制软件)的最新 IDA 版本 (6.9) 中遇到了 wine 包的问题。

如果您使用 wine 开发版本 (1.9.12+),那么 IDA 工作正常。

多年来,我一直通过 VMware Fusion 在 OSX 上使用 Windows 版本的 IDA Pro。虽然不是每天 - 但没有任何问题。

使用 VM 甚至更好,因为您可以在开始使用恶意软件之前拍摄 VM 的快照,并在完成后恢复它们。

重新屏幕资产 - 无需担心,VMware VM 可以全屏运行,使用每个可用像素

请记住,与 Windows 版本相比,OSX 版本的 IDA Pro 可能会有不同(和更多 :))的错误,这些错误在更长的时间内仍未修复(至少这是我的印象)。加上一堆插件仅适用于 Windows,或者至少在 OSX 上几乎没有测试过,如果可以编译的话。同样的情况,如果不是更糟,用 Linux 代替 OSX。