Skip to content

VMware UHCI USB UAF guest-to-host RCE (CVE-2024-22253)

UHCI USB controller'ındaki bir use-after-free, ayrıcalıklı bir guest'in host VMX process'i olarak kod çalıştırmasına izin verir (guest-to-host escape).

Mechanism

İhlal edilen invariant

Emüle edilen UHCI USB controller, uçuştaki USB transfer'lar için host taraflı object'leri takip eder. Korunan sınır guest → host (VMX) code execution'dır. CVE-2024-22253 bir use-after-free'dir: bir UHCI transfer/endpoint object'i, emulator hâlâ ona bir reference tutarken ve daha sonra onu dereference ederken free edilir. Host heap'i öyle groom ederek free edilen slot saldırganın etkilediği veriyle yeniden alınınca, dangling reference VMX process'inde kontrollü bir corruption primitive'ine dönüşür ve code execution'a escalate edilir. ESXi'de sonuç VMX sandbox'ı içinde tutulur; Workstation/Fusion'da host makinesinde code execution'dır. İhlal edilen invariant, host taraflı USB object'leri üzerindeki temporal memory safety'dir.

Critical (CVSS 9.3). Guest'te local administrative ayrıcalıklar gerektirir. VMSA-2024-0006'da düzeltildi.

Walkthrough

VMSA-2024-0006'dan, yüksek seviyeden:

  1. Admin-ayrıcalıklı bir guest'ten, UHCI operation'larını öyle sür ki bir transfer/endpoint object'i bir reference canlı kalırken free edilsin.
  2. Free edilen allocation'ı kontrollü içerikle yeniden almak için host heap'i groom et.
  3. Stale dereference'ı tetikle; dangling reference VMX process'inde bir corruption primitive'i verir.
  4. Control flow / code execution'a escalate et (ESXi'de sandbox-confined; Workstation/Fusion'da tam host code execution).

../primitive/use-after-free.md'e bak; exploit ayrıntıları atlanmıştır.

Detection

  • Bir guest için vmware.log USB/UHCI hataları ve vmware-vmx crash'leri/ backtrace'leri.
  • UHCI object yaşam süreleri etrafında host heap-hardening telemetry (poison/ quarantine).
  • vmware-vmx'ten gelen anormal child process'leri / memory operation'larını işaretleyen EDR; leak aşaması olarak kullanılan önceki bir UHCI info leak'iyle (CVE-2024-22255) korele et.

Mitigation

  • VMSA-2024-0006'yı uygula (ESXi 7.0/8.0, Workstation 17.x, Fusion 13.x).
  • Surface'i düşürmek için untrusted VM'lerden virtual USB controller'ları kaldır.
  • Host allocator hardening'i ve exploit mitigation'larını enabled tut.

References