内核层32位应用进程模块基址技术.pdfVIP

  • 2
  • 0
  • 约6.3千字
  • 约 6页
  • 2026-11-04 发布于山西
  • 举报

在上一篇文章《驱动开发:内核取ntoskrnl模块址》中我们通过调用内核API函数获取到了内核进程

ntoskrnl.exe的基址,当在某些场景中,我们不仅需要得到内核的址,也需要得到特定进程内某

个模块的址,显然上篇文章中的方法是做不到的,本篇文章将实现内核层32位应用层中特定进

程模块基址功能。

上一篇文章中的

PPEB32,PLIST_ENTRY32等结构体定义依然需要保留,此处只保留代码,定义部分

请看前一篇文章,自定义模块基址代码如下,调用

GetModuleBaseWow64()用户需传入进程的

PROCESS结构该结构可通过内核函数

PsLookupProcessByProce获取到。

对于函数执行过程如下:

1.根据传入的

EProcess结构调用

KeStackAttachProcess附加到该进程内。

2.调用内核函数

PsGetProcessWow64Process此函数可得到该进程空间内PEB结构数据。

3.通过for循环遍历整个

pPeb-Ldr链表,并在遍历过程

文档评论(0)

1亿VIP精品文档

相关文档