PEB_LDR_DATA 中 dwLength 和 SsHandle 成员的未知用法

逆向工程 视窗
2021-07-02 13:43:25

我一直在实现一些 Windows 内部代码,当我试图记录这个结构时,由于这两个成员,我无法这样做。我找不到关于他们的任何信息。

这是我正在谈论的结构的定义:

typedef struct _PEB_LDR_DATA {
    DWORD      dwLength;
    DWORD      dwInitialized;
    LPVOID     lpSsHandle;
    LIST_ENTRY InLoadOrderModuleList;
    LIST_ENTRY InMemoryOrderModuleList;
    LIST_ENTRY InInitializationOrderModuleList;
    LPVOID     lpEntryInProgress;
} PEB_LDR_DATA, *PPEB_LDR_DATA;

有谁知道它的实际用途或内容?

1个回答

我知道长度是 sizeof(struct)

0:000> ?? sizeof(ntdll!_PEB_LDR_DATA)
unsigned int64 0x58
0:000> dt -r nt!_peb Ldr->Length @$peb
ntdll!_PEB
   +0x018 Ldr         :
      +0x000 Length      : 0x58
0:000> 

编辑

根据 Geoff Chappel 的说法
没有已知的 SSHandle 用法,因此将其保留为 PVOID