【问题标题】:Repair IAT of Sys Driver Dumped From Kernel Memory修复从内核内存中转储的系统驱动程序的 IAT
【发布时间】:2014-02-01 23:12:18
【问题描述】:

我正在对一些恶意系统驱动程序进行逆向工程。它们是打包好的,所以让它们可读的唯一方法是加载驱动程序(使用 OSR 加载器)并从内核内存中转储它们(使用 rkUnhooker)。

不幸的是,我需要重建 IAT,但我找不到一个简单的分步指南来手动完成,而且我尝试过的工具(scylla、imprec、chimprec)似乎都不起作用。它们通过附加到进程来工作,但是(也许我错了)加载的驱动程序不一定属于进程。

所以,我的问题是:我如何重建 sys 驱动程序的 IAT - 当从内核内存转储时 - 或者有哪些工具可以自动执行此操作。

【问题讨论】:

    标签: kernel dump malware


    【解决方案1】:

    我发现分析没有 IAT 的驱动程序最简单的解决方法是使用 Volatile 的 moddump 和 impscan 模块。 mod dump 从内存中提取驱动程序,并提供基地址。

    Impscan 查找从指定基地址开始的跳转表,并使用参数--output=idc,生成IDA 脚本文件。

    我用 LordPE 修改了转储的驱动程序,以更改 ImageBase 以匹配波动性提供的基地址。然后我在IDA pro中打开了驱动程序。驱动程序加载完成后,我转到文件>>脚本命令并复制并粘贴来自波动率的impscan的IDC代码。

    好多了!

    虽然它不能修复 IAT,但它确实有助于静态分析。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-16
      • 1970-01-01
      • 2015-07-05
      相关资源
      最近更新 更多