Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2025-21333 | Kitploit
Tools/GitHubGitHub/uname1able/cve-2025-21333
Privilege EscalationSpeicherforensikSchwachstellenanalyseExploitationLernen & BildungBinary-ExploitationLabs & Praxis
GitHubuname1able/cve-2025-21333

CVE-2025-21333

Repository anzeigen
vor 1 MonatNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2025-21333

Hyper-V NT Kernel Integration VSP (vkrnlintvsp.sys) Paged-Pool-Heapüberlauf → lokale Rechteausweitung (LPE).
Dieses Verzeichnis enthält den PoC-Quellcode für das Labor (basiert auf MrAle98/CVE-2025-21333-POC, inklusive lokalem Patch).


1. Schwachstellenübersicht

EigenschaftInhalt
CVECVE-2025-21333
TypHeap-based Buffer Overflow
AuswirkungLokale Rechteausweitung (EoP); als in freier Wildbahn ausgenutzt markiert
Komponentevkrnlintvsp.sys
Verwundbare FunktionVkiRootAdjustSecurityDescriptorForVmwp
Pool TagViRo
Patch2025-01-14; für Win11 23H2 ist ≥ 22631.4751 erforderlich (KB5050021)

Grundursache

In VkiRootAdjustSecurityDescriptorForVmwp:

  1. Die Allokationslänge wird mit WORD berechnet: AclSize + sid1 + sid2 + 16
  2. Bei AclSize = 0xfff0 ergibt die Summe 0x10040 → abgeschnitten auf 0x40
  3. ExAllocatePool2(..., 0x40, 'ViRo')
  4. memmove(pool, dacl, AclSize) kopiert weiterhin mit voller 0xfff0-Länge

Kernungleichung: allocatedBytes(0x40) < accessEnd(0xfff0).

Dynamische Bestätigung per KD:

  • ExAllocatePool2 → @rdx = 0x40
  • memmove → @r8 = 0xfff0

Trigger-Pfad

Windows Sandbox (sowie verschachtelte Virtualisierung) muss aktiviert sein, damit die betreffenden Syscalls in vkrnlintvsp.sys gelangen:

root@kitploit:~
PoC → NtCreateCrossVmEvent
    → VkiRootCalloutCreateEvent
    → VkiRootAdjustSecurityDescriptorForVmwp

2. Systemversion für die Reproduktion

EigenschaftWert
Guest OSWindows 11 23H2

Gepatchtes 23H2 (≥ 22631.4751) ist nicht reproduzierbar. Nested Virtualization + Windows Sandbox müssen aktiviert sein.


3. Exploit-Kette (kurz)

  1. WNF_STATE_DATA sprayen
  2. Dual-ACE konstruiert AclSize=0xfff0, löst den Überlauf aus und vergrößert das DataSize des benachbarten WNF
  3. Free der beiden Lücken, dann Allokation: IrRB (I/O Ring RegBuffers) + NpAt (PipeAttribute)
  4. Einen Eintrag in RegBuffers überschreiben → im Userland gefälschter IOP_MC_BUFFER_ENTRY
  5. IoRing Read/Write → beliebiges Lesen und Schreiben im Kernel
  6. Token ersetzen → PRIV_ESC_OK → sitzungsgebundene sichtbare SYSTEM-Shell

Erwartetes Layout: 0x30 IrRB + 0x80 NpAt (found1=1 && found2=1 erforderlich).


4. Lokale Stabilisierungspunkte (22631.3447)

Unverzichtbare Bedingungen gegenüber dem Upstream:

Das Heap-Spray-Layout ist nicht deterministisch; die Rechteausweitung ist nicht 100%. Bei Fehlschlag kann erneut versucht werden.


5. Referenzlinks

  • MSRC: https://msrc.microsoft.com/update-guide/vulnerability/CVE-2025-21333
  • Upstream-Analyse: https://medium.com/@ale18109800/cve-2025-21333-windows-heap-based-buffer-overflow-analysis-d1b597ae4bae
  • Upstream-PoC: https://github.com/MrAle98/CVE-2025-21333-POC
  • I/O-Ring-Primitive: https://windows-internals.com/one-i-o-ring-to-rule-them-all-a-full-read-write-exploit-primitive-on-windows-11/
Tool herunterladen
Guest build10.0.22631.3447 (< 4751, reproduzierbar)
vkrnlintvsp.sys10.0.22621.2506; SHA256 015DD1211569B6F85CC0041269F249BA5935A3DA89B615B502DF59EAD5354BB8
ThemaKernpunkt
Dual-ACEEin einzelner ACE mit AceSize=0xf000 wird von SeCapture auf etwa 0xf008 geändert → kein Überlauf; daher müssen Dual-ACEs verwendet werden, um die Kernel-AclSize=0xfff0 zu erhalten
RückgabecodeCrossVm kann STATUS_INVALID_ACL (0xC0000077) zurückgeben; der WNF-Scan muss trotzdem fortgesetzt werden
Timingfree CCC → Submit IoRing → Sleep(5000) → free DDD → pipe spray
SandboxErst nach der Bestätigung von IrRB/NpAt WindowsSandboxClient beenden
ntos RVAExAllocatePool2=0xaac7a0, PsInitialSystemProcess=0xd1da60 (die Upstream-Offsets liefern auf 3447 system EPROCESS: 0)
Sichtbare ShellCreateProcessAsUser + TokenSessionId + winsta0\Default → VISIBLE_SYSTEM_CMD_OK