Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Submit
ToolsExploitsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

FeedsContactPrivacy© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
WhatPatchguardProtects — Reference of all kernel structures, routines, and MSRs monitored by PatchGuard (KPP) on Windows. | Kitploit
Tools/GitHubGitHub/s12cybersecurity/whatpatchguardprotects
Defensive ToolsMemory ForensicsReverse EngineeringMalware AnalysisBinary AnalysisPapers & ResearchCurated Resources
GitHubs12cybersecurity/whatpatchguardprotects

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →

WhatPatchguardProtects

Reference of all kernel structures, routines, and MSRs monitored by PatchGuard (KPP) on Windows.

View Repository
142172 days agoNot yet reviewed
Share

Inventory of what PatchGuard watches

ntoskrnl.exe 10.0.26100.9168 (Win11 24H2) · dump mem09.elf · 3 contexts (global, ExpTimeZoneDpcRoutine, ExpTimerDpcRoutine) · 1126 descriptors · 861/861 verified · 34 types instantiated out of the 49 the dispatcher recognises.


1. Modules

27 out of the 168 loaded.

Module0x00 EXPORT0x00 .xdata0x01 .pdata0x1E padding0x0D IAT0x23 LOAD_CONFIG0x2C PE header0x30 retpoline0x21 page hash
ntoskrnl.exe✓✓✓✓✓✓✓·✓
hal.dll✓·····✓·✓
win32k.sys✓✓✓✓✓✓✓✓✓
CI.dll✓✓✓✓✓✓✓✓✓
ndis.sys✓✓✓✓✓✓✓✓✓
tcpip.sys✓✓✓✓✓✓✓✓✓
Ntfs.sys·✓✓✓✓✓✓✓✓
FLTMGR.SYS✓✓✓✓✓✓✓✓✓
msrpc.sys✓✓✓✓✓✓✓✓✓
ksecdd.sys✓✓✓✓✓✓✓✓✓
cng.sys✓✓✓✓✓✓✓✓✓
clipsp.sys✓✓✓✓✓✓✓✓✓
dxgkrnl.sys✓✓✓✓✓✓✓✓✓
watchdog.sys✓✓✓✓✓✓✓✓✓
PSHED.dll✓✓✓✓✓✓✓✓✓
BOOTVID.dll✓✓✓✓✓✓✓✓✓
kdcom.dll✓✓✓✓✓✓✓✓✓
CLFS.SYS✓✓✓✓✓✓✓✓✓
tm.sys✓✓✓✓✓✓✓✓✓
WMILIB.SYS✓✓✓✓✓✓✓✓✓
werkernel.sys✓✓✓✓✓✓✓✓✓
ntosext.sys✓✓✓✓✓✓✓✓✓
cmimcext.sys✓✓✓✓✓✓✓✓✓
symcryptk.dll✓✓✓✓✓✓✓✓✓
winaccel.sys✓✓✓✓✓✓✓✓✓
globmerger.sys✓✓✓✓✓✓✓✓✓
msseccore.sys✓✓✓✓✓✓✓✓✓

Page-hash ranges (type 0x21, 20 bytes per 4 KB page, randomly sampled above 16 pages):

ModuleLengthPages
ntoskrnl.exe0x16040005636
dxgkrnl.sys0x4fc0001276
Ntfs.sys0x36e000878
tcpip.sys0x35c000860
ndis.sys0x1c2000450
CI.dll0x11e000286
clipsp.sys0x11b000283
cng.sys0xed000237
win32k.sys0xcb000203
FLTMGR.SYS0x99000153
CLFS.SYS0x90000144
msrpc.sys0x69000105
ksecdd.sys0x3a00058
tm.sys0x2e00046
watchdog.sys0x2400036
globmerger.sys0x2400036
PSHED.dll0x2100033
werkernel.sys0x1b00027
winaccel.sys0x1900025
cmimcext.sys0x1600022
msseccore.sys0x1300019
symcryptk.dll0x1100017
BOOTVID.dll0x1100017
ntosext.sys0x1100017
WMILIB.SYS0x1100017
kdcom.dll0xf00015
hal.dll0xa00010

2. Named globals

Type 0x20 in the global context, 0x00 in the conventional ones.

SymbolSize
nt!KiServiceTable0x7a4
nt!KeServiceDescriptorTable0x20
nt!KeServiceDescriptorTable+0x200x20
nt!KeServiceDescriptorTableShadow0x20
nt!KeServiceDescriptorTableShadow+0x200x20
nt!KeServiceDescriptorTableFilter0x20
nt!KeServiceDescriptorTableFilter+0x200x20
nt!PsAltSystemCallHandlers0x10
win32k.sys!TABLERO+0x00x1764
win32k.sys!TABLERO+0x23300x1764
nt!HalDispatchTable+0x80x8
nt!HalPrivateDispatchTable+0x4500x8
nt!HalPerformEndOfInterruptAtController0x8
nt!HalpProfileInterface0x8
nt!HalpProfileFeatures0x4
nt!SeCiCallbacks0x110
nt!SeCiDebugOptions0x4
nt!SeILSigningPolicy0x1
nt!SeProtectedMapping0x12
nt!SeMsMinTCBList0x198
nt!g_SecureBootPolicyBlobHeader0x18
CI.dll!CiPolicy+0x00x4
CI.dll!CiPolicy+0x40x4
CI.dll!CiPolicy+0x80x1
CI.dll!CiPolicy+0xc0x4
CI.dll!CiPolicy+0x100x4
CI.dll!.data+0x15880x8
CI.dll!.data+0x15a00x70
CI.dll!.data+0x16400x40
nt!HvcallCodeVa0x8
nt!HvlpHypercallCodeVa0x8
nt!HvlpVsmVtlCallVa0x8
nt!HvlpInterruptCallback0x28
nt!MiState+0xca00x8
nt!MiState+0xca80x8
nt!MmBadPointer0x8
nt!MmHighestUserAddress0x8
nt!MmUserProbeAddress0x8
nt!MmSystemRangeStart0x8
nt!KiKvaShadow0x1
nt!KiIsrThunkShadow0x800
nt!KiDebugTraps0x40
nt!KiDynamicTraceEnabled0x4
nt!KiDynamicTraceCallouts0x58
nt!ObpObjectTypes0x1d0
nt!ExpInitializeCallback0x80
nt!PsWin32NullCallBack0x8
nt!PspPicoProviderRoutines0x58
nt!PspSystemMitigationOptions0x18
nt!PsInvertedFunctionTable+0x100x18
nt!RtlpUnwindHistoryTable0xd8
nt!RtlProtectedAccess0x6c
nt!InitSafeBootMode0x4
nt!KdpBootedNodebug0x1
nt!__ti_a0x158
KUSER_SHARED_DATA+0x2740x40
KUSER_SHARED_DATA+0x3080x4
KUSER_SHARED_DATA+0xa800x580
msseccore.sys!.rdata+0x00x10
msseccore.sys!SecKdpSe+0x80x8

3. Object types

Type 0x08 (duplicated as 0x20): the 0x40 bytes of _OBJECT_TYPE_INITIALIZER of all 58 object types in the system, without exception.

ALPC Port            ActivationObject     ActivityReference    Adapter
Callback             Composition          Controller           CoreMessaging
CoverageSampler      CpuPartition         DebugObject          Desktop
Device               Directory            DmaAdapter           Driver
EnergyTracker        EtwConsumer          EtwRegistration      EtwSessionDemuxEntry
Event                File                 IRTimer              IoCompletion
IoCompletionReserve  IoRing               Job                  Key
KeyedEvent           Mutant               Partition            PowerRequest
Process              ProcessStateChange   Profile              PsSiloContextNonPaged
PsSiloContextPaged   RawInputManager      RegistryTransaction  SchedulerSharedData
Section              Semaphore            Session              SymbolicLink
Thread               ThreadStateChange    Timer                TmEn
TmRm                 TmTm                 TmTx                 Token
TpWorkerFactory      Type                 UserApcReserve       WaitCompletionPacket
WindowStation        WmiGuid

4. Per processor

13 regions plus IDT and GDT per CPU (2 CPUs in this boot).

TypeRegionSize
0x02IDT — the first 53 vectors0x350
0x03GDT0x50
0x03segment registers LDTR, SS, TR (KiGetLdtr/KiGetSs/KiGetTr)—
0x20/0x00KPCR+0x00 — GdtBase0x8
0x20/0x00KPCR+0x08 — TssBase0x8
0x20/0x00KPCR+0x38 — IdtBase0x8
0x20/0x00KPCR+0x1080x8
0x20/0x00the whole _KTSS64 up to IoMapBase0x68
0x20/0x00TSS.Ist[1] … TSS.Ist[4] (stride 0x200)0x10 ×4
0x20/0x00back-pointer word at the end of 4 blocks of 32 KB (stride 0x8000)0x8 ×4

Shared by all processors:

TypeRegionSize
0x20/0x00table of 32 {ntoskrnl RVA, address} records, two contiguous blocks0x200 ×2

5. MSRs

Type 0x07, one descriptor per processor, 11 MSRs each.

Download Tool