
Erziele beliebige Kernel-Lese-/Schreibvorgänge und Funktionsaufrufe in Hypervisor-Protected Code Integrity (HVCI)-geschützten Umgebungen ohne Administratorrechte oder Kernel-Treiber.
ZeroHVCI ermöglicht beliebige Kernel-Lese-/Schreibzugriffe und Funktionsaufrufe in Umgebungen mit Hypervisor-Protected Code Integrity (HVCI), ohne Administratorrechte oder Kernel-Treiber.
Um mit ZeroHVCI zu beginnen, kannst du dieses Repository klonen und das Projekt erstellen.
//
// Read kernel memory example:
//
ReadKernelMemory(source_address, buffer_address, size);
//
// Write kernel memory example:
//
WriteKernelMemory(source_address, buffer_address, size);
//
// Kernel function calling example via name:
//
KF::CallKernelFunctionViaName<kernel_param_type1, kernel_param_type2, kernel_param_type3>(
"kernel_function_name",
param1,
param2,
param3);
//
// ExAllocatePool example:
//
KF::CallKernelFunctionViaName<PVOID, POOL_TYPE, SIZE_T>("ExAllocatePool", PoolType, Size);
//
// memcpy example:
//
KF::CallKernelFunctionViaName<PVOID, PVOID, PVOID, SIZE_T>("memcpy", Dst, Src, Size);
//
// PsLookupProcessByProcessId example:
//
PEPROCESS Process;
KF::CallKernelFunctionViaName<NTSTATUS, HANDLE, PEPROCESS*>("PsLookupProcessByProcessId", ProcessHandle, &Process);
Zwei Hauptprojekte sind dafür verantwortlich, dies zu ermöglichen
Demonstriert, wie veröffentlichte CVEs in HVCI-geschützten Umgebungen für Kernel-Zugriff verkettet werden können. Nützlich für Sicherheitsforscher, die die Windows-Kernel-Integrität und Maßnahmen zur HVCI-Umgehung untersuchen.
Cr4sh für KernelForge
varwara für seine POC POC2
Eric Egsgard für seinen Vortrag
Nur für Bildungszwecke und autorisierte Sicherheitsforschung. Verwende es nicht auf Systemen, die dir nicht gehören oder für die du keine ausdrückliche Erlaubnis zum Testen hast. Ich bin nicht für Missbrauch verantwortlich. Nutzung auf eigene Gefahr.
Alle erwähnten Produktnamen, Marken und eingetragenen Marken sind Eigentum ihrer jeweiligen Inhaber.