Hyper-V Shared Virtual Disk EoP (CVE-2024-43624)¶
Windows Hyper-V Shared Virtual Disk handling'indeki bir untrusted-pointer-dereference, low privilege'e sahip bir saldırganın Hyper-V Shared Virtual Disk işlevselliğinin context'inde SYSTEM'e yükselmesine izin verir (CVE-2024-43624, CWE-822, CVSS 8.8, Kasım 2024).
Mechanism¶
Bug class / invariant
Shared Virtual Disk (Shared VHDX), birden çok Hyper-V VM'inin aynı virtual disk'i attach etmesine izin verir — guest clustering için yapı taşı. Bu özelliğe servis vermek, host tarafı storage path'inin nihayetinde less-trusted (guest/low-privilege) bir kaynağa kadar izi süren descriptor'ları ve pointer'ları yorumlamasını gerektirir.
Microsoft CVE-2024-43624'ü CWE-822, untrusted pointer dereference olarak sınıflandırır. Kırılan invariant pointer provenance/validation'dır: untrusted bir taraftan kaynaklanan ya da onun etkilediği bir pointer değeri, host tarafından meşru, sahip olunan bir object'e işaret ettiği tam olarak doğrulanmadan dereference edilir. Etki bakımından bir out-of-bounds write'a yakından bağlı olan bir untrusted pointer dereference, saldırganın host tarafı bir read ya da write'ın nereye düştüğünü yönlendirmesine izin verir.
Aşılan boundary privilege'dır: vulnerable kod privileged Hyper-V Shared Virtual Disk
context'inde çalışır, bu yüzden dereference edilen pointer'ı kontrol etmek o context'te
controlled bir read/write'a — ve nihayetinde SYSTEM seviyesinde code execution'a — dönüşür.
Microsoft'un CVSS vector'ü (8.8, CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H, high C/I/A),
disk-sharing yüzeyine ulaşıp yükselen low-privilege bir saldırganı yansıtır; pratik çerçeve,
shared-disk path'i üzerinden bir guest/low-priv -> host SYSTEM elevation'dır.
CVSS AV:N üzerine not: Microsoft/NVD resmî olarak AV:N (Network) atar — bu doğrulanmış
vendor değeridir, bizim eklediğimiz bir düzeltme değil. Görünürdeki gerilim (vuln'ün low-priv /
guest-context EoP olarak tanımlanması ile AV:N), Shared Virtual Disk servicing path'inin
network-reachable bir Hyper-V/cluster yüzeyi üzerinden tetiklenebilmesinden kaynaklanır; yine de
PR:L gereği nedeniyle saldırgan unauthenticated remote değil, en azından low-privileged bir
guest/cluster context'ine sahip olmalıdır. Yani pratik tehdit modeli local/guest -> host SYSTEM
elevation olarak kalır.
Warning
Untrusted-pointer-dereference bug'ları güçlüdür: tek bir controlled pointer çoğu zaman bir arbitrary read/write primitive'ini başlatmaya yeter, bu yüzden "RCE" olarak etiketlenmese de bu EoP high-impact olarak ele alınmalıdır.
Walkthrough¶
Sadece high-level. Microsoft'un advisory'si bir trigger yayınlamadan sınıfı (Shared Virtual Disk'te untrusted pointer dereference) adlandırır; aşağıdaki adımlar generic shape'tir ve hiçbir offset ya da field layout içermez.
Conceptual flow (untrusted pointer dereference, CWE-822)
1. Reach the Hyper-V Shared Virtual Disk servicing path from a low-priv /
guest context that is permitted to interact with a shared VHDX attachment.
2. Supply a request whose structure carries a pointer-like field that the
host trusts and later dereferences (provenance not fully validated).
3. Set that field to reference attacker-chosen host memory; the host
dereferences it -> a read or write at an attacker-influenced location
(controlled-pointer primitive).
4. Use the controlled dereference (corrupt a function pointer / object field)
to redirect execution in the privileged Shared Virtual Disk context
-> SYSTEM-level code execution.
Advisory'ye göre etkilenen: Hyper-V role'üne sahip bir dizi Windows 10/11 ve Windows Server build'i; Kasım 2024 cumulative update'leriyle giderildi.
Detection¶
- Host EDR/kernel telemetry: Normal storage I/O davranışıyla eşleşmeyen, Hyper-V storage/shared-disk path'inden kaynaklanan SYSTEM-context aktivitesi.
- Başarısız denemeleri gösteren Hyper-V Shared VHDX servicing bileşenlerindeki bugcheck / Windows Error Reporting cluster'ları (bad pointer dereference, access violation'ları).
- Behavioral: Malformed ya da anormal shared-virtual-disk request'leri veren low-privileged ya da guest tarafı bir context, özellikle validation gap'i probe etmekle tutarlı yoğun/tekrarlanan sequence'lar.
- Inventory exposure: Patch'lenmemiş host'larda Shared VHDX attachment'larıyla yapılandırılmış VM'ler için alarm verin.
Mitigation¶
- Kasım 2024 cumulative update'ini uygulayın (KB'ler arasında ilgili build'ler için KB5046615, KB5046613, KB5046633, KB5046617, KB5046616 yer alır). Fix, Shared Virtual Disk path'indeki eksik pointer validation'ı ekler.
- Mümkün olduğunda attack surface'i azaltın: Shared VHDX'i yalnızca guest clustering gerektiren workload'lar için etkinleştirin ve patch'lenene kadar shared-disk interface'ine hangi low-privileged/guest context'lerin ulaşabileceğini kısıtlayın.
- Defense-in-depth: Host'larda VBS/HVCI'yi etkin tutun; bunlar controlled bir dereference'i güvenilir code execution'a çevirmenin maliyetini yükseltir ama patch'in yerini tutmaz.