【问题标题】:IDA Pro python idaapiIDA Pro python idaapi
【发布时间】:2014-02-27 19:05:20
【问题描述】:

您好,我有一个快速的问题。

我一直在尝试将 IDA Pro 中的完整内存转储保存在一个变量中以使用 python 脚本执行搜索,但我没有找到使用 idaapi 执行此操作的正确函数。

我想做这样的事情:

import idaapi

dump=get_memory_dump() # Or whatever function to do it

if "foo" in dump:
print "foo is in dump"

我怎样才能得到转储? 正如你所看到的,我想在调试应用程序时编写一个脚本来在内存中找到模式。

非常感谢

【问题讨论】:

    标签: python assembly ida


    【解决方案1】:

    使用idaapi.nextthat()搜索字节序列,然后使用dbg_read_memory()读取被调试程序的内存。由于后者似乎在制作副本,因此读取 4GB 是不明智的。

    【讨论】:

    • 谢谢 Scott,但我尝试使用 dbg_read_memory() 读取内存,但 IDA 崩溃了。对你起作用吗?谢谢!
    • @user1618465,试试dbg_read_memory(cpu.Esp, 4)。那真的不应该崩溃。如果从 ESP 读取 4 个字节有效,那么我的猜测是 IDA 只会在被调试进程中无效的地址范围崩溃,您必须限制自己读取进程内存映射中标记为可读的页面。
    • 也许向 Hex Rays 报告一个最小的复制者
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-26
    • 2012-09-28
    • 2012-01-28
    • 1970-01-01
    • 1970-01-01
    • 2011-09-13
    • 2012-11-09
    相关资源
    最近更新 更多