我想在 IDAFree 5.0 上运行一些 python 脚本。但是,http://code.google.com/p/idapython/downloads/list 上没有针对此版本的预构建 IDAPython 。所以,我想知道是否有人可以共享 Windows 或 Linux 平台的构建版本。
PS:从头开始构建过程需要工具,https://www.hex-rays.com/index.shtml没有免费提供
我想在 IDAFree 5.0 上运行一些 python 脚本。但是,http://code.google.com/p/idapython/downloads/list 上没有针对此版本的预构建 IDAPython 。所以,我想知道是否有人可以共享 Windows 或 Linux 平台的构建版本。
PS:从头开始构建过程需要工具,https://www.hex-rays.com/index.shtml没有免费提供
IDA 5.0 free 缺少过去十年 IDA SDK 中引入的大多数功能,从 5.3 或相关版本中引入的 extlang 支持开始,以及 v5.6 中引入的脚本基础结构的重要更改,如对对象、函数值、引用和属性的支持(又名“属性”)。在此过程中的某个地方发生了重大变化,例如将字符串值传递为 VT_STR2(即笨拙的 qstring 东西)而不是 VT_STR。
这意味着当前版本的 IDAPython 不能在没有重大重写和功能减少的情况下向后移植。
移植旧的 IDAPython 1.0.0 应该几乎和针对 IDA 5.0 免费的 implib 重建一样简单,但它确实需要一些小的调整来处理 IDA 5.0 中不可用的 IDA 5.1 函数。但是,由于超出导出名称可用性的更改,测试可能会出现问题。适应 IDAPython 1.1.92 甚至更新版本的机会仍然相当不错,但它必然需要大量的工作。
PS:简单地重写为 IDA 5.1 构建的 IDAPython 1.0.0 插件的导入表不是一种选择,因为它使用了 5.0 版不可用的 32 个 IDA.WLL 导出。这意味着必须修改插件源 - 要么实现缺失的功能,要么删除对它们的所有引用。
更新:我在 github 存储库(无IDAPython)中为 IDAPython-1.0.0 和 IDA 5.0 SDK 标头放置了一组补丁。该存储库还包含一个 .def 文件,用于为 IDA 5.0 免费创建一个 implib(仅插件所需的导入)和一个 .csv 文件,提供 IDA 5.0 免费 ida.wll 的所有导出的所有序号,以防有人想要向 lib 添加更多导出。最后但并非最不重要的一点是,文件idapython-1.0.0_ida5.0_py2.7_win32.zip包含构建的结果,可以提取到 IDA 5.0 免费安装中。那是 .py 文件、插件(带有 .pdb)和示例。
我用 python 2.7.9 测试了整个 shebang,示例运行良好。不过,IDAPython-1.0.0 是为 python 2.5.x 或类似版本编写的,这意味着需要进行一些严肃的测试。另一件事是,这个版本的 IDAPython 已经有七年历史了;在进步和错误修复方面有一些严重的追赶工作。我既不是耍蛇人(我更喜欢 IDC 和 C++),也不是 IDA free 的用户(已经为 IDA Pro 分叉了 $$$$),但如果有人想对某个问题提出意见,我愿意伸出援手“IDAPython 免费”项目。
您自己说构建过程需要非免费的工具。在这种情况下:
和
我认为要完全、公正地回答这个问题,你需要打开一个小的 github 项目。