WEB开发网
开发学院软件开发VC 导入表内注入代码(二) 阅读

导入表内注入代码(二)

 2007-03-17 21:59:50 来源:WEB开发网   
核心提示: 4.防止反向(工程)使用复杂的API重定向技术来重建一个导入表是极其困难的,有时像Import REConstructor一样的工具,导入表内注入代码(二)(3),图 10,将难于重建导入表,它过滤了FindFirstFile()和FindNextFile()以在打包文件内部合并TEXT文

4.防止反向(工程)

使用复杂的API重定向技术来重建一个导入表是极其困难的。有时像Import REConstructor一样的工具,图 10,将难于重建导入表,重定向特别专长于多态代码(polymorphism code)image。在反向工程世界里Import REConstructor是一个著名的工具;它会挂起目标进程以便于捕获导入信息。如果你像一个明喻(simile)JMP一样做一个重定向,肯定会用该工具让它被重建,然而如果我们将Function名称加密并用在内存中的多态代码捆绑之,它(译注:该工具)将对获得正确的导入表产生困惑。我们通过这个技术发布我们的EXE protector,Native Security Engine [6]是一个依此方法的packer。它有一个x86代码生成器附加一个metamorphism(变态或变体)引擎,两者共同帮助建立一个复杂的重定向结构。

图 10 - Import REConstructor, MackT/uCF2000

图11展示了在EXE protectors中的导入保护的主要策略。其中一些对虚拟Win32库(virtual Win32 libraries)用到重定向。举个例子,它们有Kernel32、 User32、和 AdvApi32虚拟(virtual libraries)库。它们使用它们自己的库以防止被黑掉或安装它们的虚拟机。

图 11 - Import Table Protection

通过这种技术来切断外界访问是可以达到目标的。正如你所看到的,MoleBox行为相同,它过滤了FindFirstFile()和FindNextFile()以在打包文件内部合并TEXT文件和JPEG文件。当程序意图从硬盘找到一个文件,它将被重定向到内存。

5.运行时导入表注入

上一页  1 2 3 4 5 6 7 8  下一页

Tags:导入 注入 代码

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接