PEB(Process Environment Block)

//
// Process Environment Block (TEB)
//

typedef struct _PEB
{
    UCHAR InheritedAddressSpace;                         // 00h
    UCHAR ReadImageFileExecOptions;                     // 01h
    UCHAR BeingDebugged;                                 // 02h
    UCHAR Spare;                                         // 03h
    PVOID Mutant;                                         // 04h
    PVOID ImageBaseAddress;                             // 08h
    PPEB_LDR_DATA Ldr;                                     // 0Ch
    PRTL_USER_PROCESS_PARAMETERS ProcessParameters;     // 10h
    PVOID SubSystemData;                                // 14h
    PVOID ProcessHeap;                                     // 18h
    PVOID FastPebLock;                                     // 1Ch
    PPEBLOCKROUTINE FastPebLockRoutine;                 // 20h
    PPEBLOCKROUTINE FastPebUnlockRoutine;                 // 24h
    ULONG EnvironmentUpdateCount;                         // 28h
    PVOID* KernelCallbackTable;                         // 2Ch
    PVOID EventLogSection;                                 // 30h
    PVOID EventLog;                                     // 34h
    PPEB_FREE_BLOCK FreeList;                             // 38h
    ULONG TlsExpansionCounter;                             // 3Ch
    PVOID TlsBitmap;                                     // 40h
    ULONG TlsBitmapBits[0x2];                             // 44h
    PVOID ReadOnlySharedMemoryBase;                     // 4Ch
    PVOID ReadOnlySharedMemoryHeap;                     // 50h
    PVOID* ReadOnlyStaticServerData;                     // 54h
    PVOID AnsiCodePageData;                             // 58h
    PVOID OemCodePageData;                                 // 5Ch
    PVOID UnicodeCaseTableData;                         // 60h
    ULONG NumberOfProcessors;                             // 64h
    ULONG NtGlobalFlag;                                 // 68h
    UCHAR Spare2[0x4];                                     // 6Ch
    LARGE_INTEGER CriticalSectionTimeout;                 // 70h
    ULONG HeapSegmentReserve;                             // 78h
    ULONG HeapSegmentCommit;                             // 7Ch
    ULONG HeapDeCommitTotalFreeThreshold;                 // 80h
    ULONG HeapDeCommitFreeBlockThreshold;                 // 84h
    ULONG NumberOfHeaps;                                 // 88h
    ULONG MaximumNumberOfHeaps;                         // 8Ch
    PVOID** ProcessHeaps;                                 // 90h
    PVOID GdiSharedHandleTable;                         // 94h
    PVOID ProcessStarterHelper;                         // 98h
    PVOID GdiDCAttributeList;                             // 9Ch
    PVOID LoaderLock;                                     // A0h
    ULONG OSMajorVersion;                                 // A4h
    ULONG OSMinorVersion;                                 // A8h
    ULONG OSBuildNumber;                                 // ACh
    ULONG OSPlatformId;                                 // B0h
    ULONG ImageSubSystem;                                 // B4h
    ULONG ImageSubSystemMajorVersion;                     // B8h
    ULONG ImageSubSystemMinorVersion;                     // C0h
    ULONG GdiHandleBuffer[0x22];                         // C4h
    PVOID ProcessWindowStation;                         // ???
} PEB, *PPEB;

 

posted @ 2017-05-15 09:37  DeeLMind  阅读(1026)  评论(0编辑  收藏  举报