自從VMware推出虛擬機產品以來,17年的時間,從來沒有人突破它的安全防護。難道 VMware 的安全體系已經強大到全世界的黑客只能望之興嘆了嗎?
中國黑客唐青昊用20秒的時間,給出了他的答案。
在韓國首爾舉行的 PwnFest 2016 黑客破解大賽上,他身處 Workstation 虛擬機中,只運行了一個程序,就讓宿主機彈出了計算器程序。這說明,虛擬機中的居民,已經意識到自己虛擬的身份,逃逸到了「上帝空間」——宿主機上了。
虛擬化技術和雲計算息息相關。實際上,虛擬化漏洞已經可以影響雲上用戶的根本安全。而在全球範圍內,研究虛擬化漏洞的安全研究員屈指可數。
作為其中的一員,唐青昊覺得有必要用這種破解的方式,向世界警示虛擬化漏洞的風險。那麼,從他點擊執行,到最後奪取系統權限的短短20秒間,究竟發生了什麼呢?
這位黑客為雷鋒網講述了攻擊背後的故事。
【唐青昊】
Plan A:三個漏洞聯合進攻
唐青昊告訴雷鋒網,他的 Marvel 團隊一直在做虛擬化漏洞的研究。早在兩個月以前剛剛聽到比賽消息的時候,他就決定用已經掌握的這套漏洞進行比賽。
這套攻擊程序包括三個漏洞,分別是:1、UAF漏洞,控制RIP(大意為每條指令的位置);2、out-of-bound read 漏洞。3、out-of-bound write 漏洞。和第二個漏洞合力起到洩露關鍵信息的作用。
他說。
利用這三個漏洞,唐青昊可以突破虛擬機的限制,拿到系統權限和同一宿主「治下」所有其他虛擬機的數據。
很多商業銀行、政府,包括美國的一些大型公司,都在使用 VMware 的產品。而這些產品和我攻擊的 Workstation 內部原理基本一致。也就是說,利用這種攻擊手法,同樣可以攻擊這些重要的機構。
目前為止,雖然沒有大型商業銀行或政府虛擬化軟體被攻破的案例。但是唐青昊用行動證明了,黑客並非沒有能力做這件事。所有的安全也許都是脆弱的假象。
【唐青昊(左)和團隊成員應鑫磊(右)在比賽中】
驚險一幕:首次攻擊失敗
唐青昊告訴雷鋒網,在比賽之前,他並不知道比賽將使用怎樣的硬體設備。所以在之前的所有調試中,他的進攻程序都是在 PC 上進行調試的。而最終他得知比賽中將會使用 Surface 設備,在賽前他對雷鋒網說,這樣的硬體變化,可能會給程序的穩定性帶來一定的影響。
果然,在第一次嘗試的過程中,正當攻擊程序在後臺東奔西突的瞬間,虛擬機程序突然崩潰。
在這種情況下,根本沒有可能在短時間內調整代碼,只能相信自己第二次的運氣。
唐青昊說。
第二次嘗試馬上開始了。讓人欣喜的是,只用了二十秒左右,這臺 Surface 的屏幕上就彈出了標誌性的計算器程序,這意味著唐青昊已經突破了虛擬機,拿到了宿主機權限。
【通過Workstation 攻擊,在 Surface 設備的 Windows 系統中彈出計算器】
15萬美金獎金,為比賽之最
其實,在今年三月舉行的 Pwn2Own 黑客大賽上,唐青昊就曾經想要帶領團隊衝擊對 VMware 的破解,但是最終由於技術的成熟度欠缺,而在最後關頭被迫放棄挑戰。八個月之後,他的心願終於得以實現。
唐青昊告訴雷鋒網,之前他放棄的 Pwn2Own 比賽獎金是 7.5萬美元,而在 PwnFest 上,獎金直接翻倍,達到了15萬美元。即使是在本屆 PwnFest的所有項目中比較,VMware Workstation 的獎金數額都是最高的。
唐青昊解釋了虛擬化漏洞如此值錢的原因:
VMware 軟體的漏洞總體數量比較少,而且要求技戰術水平高,比較考驗黑客的功力和研究積累。相比 Windows 動輒幾個G的體量,VMware 旗下大多軟體的體量都在500M左右,因為代碼少,功能簡單,所以整體安全性會好一些。這就是 VMware 漏洞值錢的原因。
經過了一個小時左右和VMware技術人員的「閉門交流」,最終 VMware 確認這次攻擊確實有效,表示會儘快修復這個漏洞。而唐青昊也成功為自己的身價增加了十五萬美元。
由於虛擬機營建的賽博世界極其複雜,雷鋒網沒有辦法在此文進一步展開介紹在0和1的世界精妙絕倫的進攻過程。如果你對這二十秒中,在賽博世界究竟發生了什麼依然好奇,那麼你一定要閱讀雷鋒網對唐青昊的專訪:《》