Hyper-V NT Kernel Integration VSP use-after-free EoP, exploited (CVE-2025-21334 / CVE-2025-21335)¶
Local low-privileged bir process, SYSTEM privilege'leriyle kod çalıştırmak için Hyper-V NT Kernel Integration VSP'deki (
vkrnlintvsp.sysvirtualization-stack bileşeni) bir use-after-free'i suistimal eder; in the wild exploit edildi ve CISA KEV'de listelendi. Bu not aynı component'teki ikiz use-after-free'ler olan CVE-2025-21334 ve CVE-2025-21335'i birlikte ele alır; CVE-2025-21333 ise aynı bileşendeki ayrı bir buffer-overflow kardeşidir (ayrı not).
Mechanism¶
Bug class / invariant
Scope: Bu not, vkrnlintvsp.sys içindeki aynı object-lifetime sınıfına ait iki ayrı
ama ikiz use-after-free'i — CVE-2025-21334 ve CVE-2025-21335'i — birlikte ele alır;
ikisi de ayrı CVE numarasına sahip gerçek bug'lardır. Aynı bileşendeki CVE-2025-21333
ayrı bir heap-based buffer-overflow kardeşidir ve burada kapsam dışıdır (ayrı not).
Hyper-V, bir guest'in "enlightened" kernel'ını host tarafı helper'lardan ayırır.
Virtualization Service Provider (VSP) bileşenleri host/root tarafında çalışır ve
guest'teki Virtualization Service Consumer (VSC)'den gelen request'lere, tipik olarak
VMBus üzerinden servis verir. NT Kernel Integration VSP (vkrnlintvsp.sys),
Hyper-V-isolated bir workload'ı NT kernel ile entegre eden host tarafı parçadır.
Kırılan invariant object lifetime'dır: guest/VSC-controlled bir request'ten ulaşılabilen bir kernel object, başka bir code path hâlâ ona bir pointer tutarken ve sonra dereference ederken free edilir. Object'in lifetime'ı tüm reference'larına doğru şekilde bağlı olmadığı için (klasik bir use-after-free), request sequence'ını süren low-privileged local bir aktör, backing belleği serbest bırakıldıktan sonra — ve potansiyel olarak attacker-influenced içerikle reclaim edildikten sonra — stale bir pointer'ın yeniden kullanılmasına neden olabilir.
Privilege boundary aşılır çünkü free edilip yeniden kullanılan object bir kernel-mode,
SYSTEM-context bileşeninde yaşar. Reclaim edilen allocation'a düşen içeriği kontrol etmek,
saldırganın bir kernel dereference/dispatch'i yönlendirmesine ve bir memory-safety bug'ını
SYSTEM'de arbitrary code execution'a çevirmesine izin verir. Bu bir guest-to-host escape
değil, bir elevation of privilege'dir (local kullanıcı -> SYSTEM): CVSS vector local'dir
(AV:L, PR:L, UI yok), CVSS 7.8.
Warning
Microsoft, CVE-2025-21334 ve CVE-2025-21335'i (aynı use-after-free sınıfından ikiz bug'lar)
release'te in the wild exploit edildi olarak işaretledi ve CISA bunları Known Exploited
Vulnerabilities kataloğuna ekledi. Bu not bu iki ikiz UAF'i birlikte ele alır; ikisi de
vkrnlintvsp.sys içindeki aynı object-lifetime sınıfına aittir. CVE-2025-21333 ise aynı
bileşendeki ayrı bir buffer-overflow kardeşidir (ayrı not).
Walkthrough¶
Public advisory sınıfından (guest tarafı request'lere servis veren bir VSP'de use-after-free) çıkarsanan high-level, kavramsal reproduction. Burada hiçbir offset, struct field veya reclaim primitive verilmemiştir.
Conceptual flow (from public advisory description)
1. A low-privileged local process interacts with the NT Kernel Integration
VSP surface exposed by vkrnlintvsp.sys (the host-side servicing path for
an isolated/enlightened workload).
2. A request sequence drives the VSP to FREE a kernel object while another
in-flight operation still references it (lifetime/refcount invariant
violated) -> dangling kernel pointer.
3. The attacker arranges for the freed allocation to be RECLAIMED with
content they influence (heap grooming), so the stale pointer now points
at attacker-shaped data.
4. The VSP DEREFERENCES the stale pointer (e.g. a callback/handle field),
transferring control or a write under attacker influence in
kernel/SYSTEM context -> SYSTEM-level code execution.
Vulnerable, unpatched bir host'ta sonuç: local non-admin bir process SYSTEM kazanır. Etkilenen: Windows 10 (21H2/22H2), Windows 11 (22H2/23H2/24H2), Windows Server 2022 ve 2025.
Detection¶
- EDR/kernel telemetry: Hyper-V virtualization-stack bileşenleriyle etkileşime giren low-privileged bir user session'dan kaynaklanan beklenmedik SYSTEM-privileged token assignment veya process spawn'lama.
vkrnlintvsp.sysetrafında driver-load ve crash sinyalleri; virtualization stack'teki Windows Error Reporting / bugcheck cluster'ları başarısız UAF denemelerini (heap corruption, kernel'de bad pointer dereference) gösterebilir.- Behavioral: Normalde Hyper-V/VSC interface'lerini kullanmayan bir process'in aniden yoğun, tekrarlanan VSP/VMBus request'leri vermesi (grooming/race pattern'leri).
- In-the-wild kampanyaya bağlı exploitation göstergelerini avlayın; CISA KEV remediation zaman çizelgeleriyle ilişkilendirin.
Mitigation¶
- CVE-2025-21333/21334/21335'i düzelten Ocak 2025 cumulative update'ini uygulayın. Bu birincil remediation'dır; patch, NT Kernel Integration VSP'deki object-lifetime handling'i düzeltir.
- Exploitation local olduğu için least privilege uygulayın: Hyper-V host'larında interactive/low-priv local erişimi kısıtlayın ve izleyin; management plane'leri segmentleyin.
- Modern Windows kernel'lerinde halihazırda mevcut olan defense-in-depth (kernel pool hardening, KASLR, kCFG/CFG-stili control-flow check'leri, HVCI) exploitation maliyetini yükseltir ama in-the-wild bir UAF'a karşı patch'in yerini tutmaz.
References¶
- MSRC — CVE-2025-21334: Windows Hyper-V NT Kernel Integration VSP Elevation of Privilege Vulnerability
- MSRC — CVE-2025-21335: Windows Hyper-V NT Kernel Integration VSP Elevation of Privilege Vulnerability
- Help Net Security — Microsoft fixes actively exploited Windows Hyper-V zero-day flaws (CVE-2025-21333/21334/21335)
- SentinelOne — CVE-2025-21334 vulnerability database entry
- The Register — Microsoft fixes exploited Hyper-V privilege escalation flaws