typedef struct _PEB_LDR_DATA
{
ULONG Length; // +0x00
BOOLEAN Initialized; // +0x04
PVOID SsHandle; // +0x08
LIST_ENTRY InLoadOrderModuleList; // +0x0c
LIST_ENTRY InMemoryOrderModuleList; // +0x14
LIST_ENTRY InInitializationOrderModuleList;// +0x1c
} PEB_LDR_DATA,*PPEB_LDR_DATA; // +0x24
typedef struct _LDR_MODULE{
LIST_ENTRY InLoadOrderModuleList; +0x00
LIST_ENTRY InMemoryOrderModuleList; +0x08
LIST_ENTRY InInitializationOrderModuleList; +0x10
void* BaseAddress; +0x18
void* EntryPoint; +0x1c
ULONG SizeOfImage;
UNICODE_STRING FullDllName;
UNICODE_STRING BaseDllName;
ULONG Flags;
SHORT LoadCount;
SHORT TlsIndex;
HANDLE SectionHandle;
ULONG CheckSum;
ULONG TimeDateStamp;
} LDR_MODULE, *PLDR_MODULE;
그림이 너무 좋아서. 출처 http://www.rohitab.com/discuss/topic/35251-3-ways-to-get-address-base-kernel32-from-peb/
'Research > Windows' 카테고리의 다른 글
| DEBUG_EVENT code (0) | 2015.12.01 |
|---|---|
| x86 Assembly/Control Flow (0) | 2015.07.21 |
| windbg 심볼 / 치트 시트 (0) | 2014.12.17 |
| C++ constructor 생성자 호출 방식 (0) | 2014.10.10 |
| calling convention, name mangling, C/C++ DLL Export 에 대해. (0) | 2014.09.19 |