CVE-2020-2905: VirtualBox 虛擬機逃逸漏洞通告

CVE-2020-2905: VirtualBox 虛擬機逃逸漏洞通告

0x01 漏洞背景

2020年04月24日, 360CERT監測發現 業內安全廠商 發佈了 VirtualBox 虛擬機逃逸漏洞 的風險通告,該漏洞編號為 CVE-2020-2905,漏洞等級:高危。

USB 3.0 XHCI模塊 是 VirtualBox 中負責實現虛擬機連接 USB3.0 設備的通信模塊。

VirtualBox USB 3.0 XHCI模塊 存在 越界寫漏洞,本地攻擊者 通過 在虛擬機內部執行特定程序,可以造成 虛擬機逃逸。

對此,360CERT建議廣大用戶及時安裝最新補丁,做好資產自查以及預防工作,以免遭受黑客攻擊。

0x02 風險等級

360CERT對該漏洞的評定結果如下

CVE-2020-2905: VirtualBox 虛擬機逃逸漏洞通告

0x03 漏洞詳情

該漏洞由支付寶安全團隊發現。其分析報告如下

該漏洞是個數組越界讀寫,存在於 xhciR3WriteEvent函數, iIntr 參數可以被攻擊者控制。從IDA Pro的 Structures段可以得知 aInterrupters 數組只有8個元素(下圖所示),但是iIntr的值卻可以是0~1023。iIntr用來對 aInterrupters數組進行索引,但代碼未對iIntr值進行校驗,因此造成了堆溢出。

可利用性分析

  1. 攻擊者可以進行越界寫,比如在函數xhciR3WriteEvent中變量v4是被攻擊者控制的,下面代碼會將v4 的值寫入v7->errp中,v7即是從aInterrupters數組中取出的越界的地址。
  2. 攻擊者通過內存佈局,將代碼中的關鍵數據結構佈局到越界寫的數據內容之後,可覆蓋關鍵數據結構的值,從而造成虛擬機逃逸。

0x04 影響版本

  • VirtualBox:6.1.6以下版本

0x05 修復建議

通用修補建議:

升級到 6.1.6 版本,下載地址為:
「Downloads– Oracle VMVirtualBox](https://www.virtualbox.org/wiki/Downloads)。

0x06 產品側解決方案

360安全衛士

針對本次安全更新,Windows用戶可通過360安全衛士實現對應補丁安裝,其他平臺的用戶可以根據修復建議中的產品更新版本,對存在漏洞的產品進行更新。

0x07 時間線

2020-04-15 Oracle發佈更新

2020-04-23 支付寶安全團隊發佈漏洞分析

2020-04-24 360CERT發佈預警

0x08 參考鏈接

  1. Oracle Critical Patch Update Advisory - April 2020
    https://www.oracle.com/security-alerts/cpuapr2020.html
  2. 【漏洞分析】VirtualBox USB模塊堆越界讀寫,或可造成虛擬機逃逸
    https://mp.weixin.qq.com/s/ZpdPwySu0U1QVJ9GOJBNkw
  3. 【安全提醒】趕緊更新VirtualBox,這個漏洞可能導致你的計算機被遠程控制

    https://mp.weixin.qq.com/s/FkUj7LfdoZP0U0kY90K-Nw


分享到:


相關文章: