内核LoadImage映像回调枚举与实现.pdfVIP

  • 2
  • 0
  • 约1.46万字
  • 约 28页
  • 2026-05-20 发布于北京
  • 举报

在笔者之前的文章《驱动开发:内核特征码搜索函数封装》中我们封装实现了特征码定位功能,本章将继续

使用该功能,本次我们需要枚举内核LoadImage映像回调,在Win64环境下我们可以设置一个

LoadImage映像加载通告回调,当有新驱动或者DLL被加载时,回调函数就会被调用从而执行我们自己

的回调例程,映像回调也在数组里,枚举时从数组中值,需要进行位运算得到地址。

我们来看一款闭源ARK工具是如何实现的:

如上所述,如果我们需要获取回调数组,那么首先需要得到该数组,数组的符号名是

PspLoadImageNotifyRoutine我们可以在PsSetLoadImageNotifyRoutineEx中找到。

第一步使用WinDBG输入ufPsSetLoadImageNotifyRoutineEx首先定位到,能够找到

PsSetLoadImageNotifyRoutineEx这里的两个位置都可以被,当然了这个函数可以直接通

过PsSetLoadImageNotifyRoutineEx函数动态拿到此处不需要我们动态定位。

我们通过获取到PsSetLoadImageNotifyRoutineEx函数的内存首地址,然后向下匹配特征码搜索找到

488d0d88e8dbff

文档评论(0)

1亿VIP精品文档

相关文档