Skip to content

VMware VMCI integer underflow out-of-bounds write (VMX escape)

VMware'in Virtual Machine Communication Interface'indeki guest tarafından tetiklenebilir bir integer underflow (CVE-2025-41237): wrap olmuş bir size değeri host VMX process'inde bir out-of-bounds write'ı sürükleyerek VMX olarak (ve Workstation/Fusion'da host üzerinde) code execution verir. Pwn2Own Berlin 2025'te raporlandı.

Mechanism

Note

VMCI, VMware'in guest ile host arasındaki (ve VM'ler arasındaki) datagram/queue-pair kanalıdır. Host backend'i VMX process'inde yaşar ve guest tarafından sağlanan descriptor'ları ve size'ları parse eder. Invariant: guest input'undan türetilen herhangi bir length, index'lediği buffer içinde kalmalıdır. CVE-2025-41237 bir integer underflow (CWE-191) sonucu bir out-of-bounds write (CWE-787) üretir: guest-controlled bir length üzerindeki bir çıkarma işlemi sıfırın altına underflow yaparak devasa bir unsigned değere wrap olur; bu değer de sonra bir copy/offset bound olarak kullanılır. Sonuç, host memory'de amaçlanan allocation dışına bir write'tır. Aşılan boundary guest → host VMX'tir: ESXi'de etki VM başına VMX sandbox'ına sınırlıdır; Workstation/Fusion'da host OS üzerinde code execution'a ulaşabilir.

vmxnet3 integer overflow ile kardeş bir integer-arithmetic device bug'ı; her ikisi de VMSA-2025-0013 ile gönderildi.

Walkthrough

Public, patch'lenmiş issue (VMSA-2025-0013). Atıf verilen advisory'den kavramsal yol:

  1. Local admin'e sahip bir guest'ten bir VMCI endpoint açın ve length field'ı bir host-side çıkarma işlemini underflow yapacak şekilde seçilmiş operasyonlar gönderin.
  2. Host backend wrap olmuş (çok büyük) bir size hesaplar ve onu bir bound olarak kullanır.
  3. Guest-controlled data hedef host buffer'ın ötesine yazılır (OOB write).
  4. VMX process'inde heap shaping, OOB write'ı kontrollü bir corruption'a ve host/VMX code execution'a dönüştürür.

Gözlemlenebilir: başarısız bir denemede etkilenen VM için VMX crash.

Warning

Patch'lenmiş/tarihsel, yalnızca kavramsal. CVSS 9.3 (Workstation/Fusion), 8.4 (ESXi). Exploit primitive'i verilmemiştir.

Detection

  • Host: bir guest'in VMCI trafiğiyle korele vmware-vmx fault'ları.
  • Telemetry: VM başına anormal VMCI datagram size'ları / endpoint kullanımı.

Mitigation

  • VMSA-2025-0013 düzeltmelerini uygulayın (ESXi 8.0 ESXi80U3f-24784735, ESXi 7.0 ESXi70U3w-24784741, Workstation 17.6.4, Fusion 13.6.4). Workaround yok.
  • ESXi'de VMX sandbox blast radius'u sınırlar; VM'leri least-privileged tutun ve device emulation'ı sandbox'lı çalıştırın.

References