5
本文作者: 史中 | 2016-11-11 15:28 |
開始了嗎?
已經(jīng)結束了。
全場掌聲如潮水一般奔涌不息。盤古團隊成員徐昊站在臺上,把手中的 MacBook 屏幕緩緩轉向人潮。
就在剛才,僅僅用了秒針跳動五次的時間,他就完成了從遠程服務器突破,攻擊 Safari,越過沙箱直擊 MacOS 內(nèi)核的全過程。
這樣的進攻,只能用震撼來形容。
【徐昊 盤古團隊核心成員】
這就是在 PwnFest 黑客大賽上剛剛發(fā)生的一幕。在這五秒之內(nèi),究竟發(fā)生了什么?盤古團隊究竟使用了什么漏洞,瞬間遠程黑掉一臺 Macbook?
雷鋒網(wǎng)宅科頻道(微信 ID:letshome)在第一時間采訪到了盤古團隊核心成員徐昊,他為我們揭秘了這五秒之內(nèi)賽博世界發(fā)生的洪荒巨變。
整個攻擊過程中,黑客不用,也不允許接觸目標電腦。當裁判用一臺 MacBook 連接黑客的特定網(wǎng)址時,攻擊就已經(jīng)被觸發(fā)。
徐昊為雷鋒網(wǎng)詳解了攻擊的全過程。
這次攻擊,我們用到了四個漏洞。其中兩個 Safari 漏洞,兩個內(nèi)核漏洞。
利用 Safari 的一個漏洞,我們迫使它泄露了核心模塊的地址;而根據(jù)暴露的核心模塊,我們可以構建 ROP 代碼,再通過另一個 UAF 漏洞,可以獲得代碼執(zhí)行。
而以上所有的操作,僅僅是取得遠程訪問的權限,我們還需要突破沙盒和取得系統(tǒng)權限。我們掌握的漏洞,可以在 Safari 里面直接觸發(fā),因為它處在沙盒的攻擊面以內(nèi)。這樣的漏洞比較稀少。
原理方面,我們同樣先是利用一個漏洞計算出內(nèi)核的加載地址,進而構建了內(nèi)核的 ROP 代碼。通過另一個未初始化變量的漏洞獲得了內(nèi)核的執(zhí)行權限。
以上復雜的攻擊過程,需要進行一下簡單的解釋。徐昊在進攻內(nèi)核的路上,要翻過如下幾座大山:
1、由于 Safari 的安全機制限制,并不能隨意執(zhí)行遠程的代碼,要想破壞這個機制,必須要找到構建這個機制的引擎——Safari 核心模塊。而蘋果經(jīng)過長期進化的安全機制,會把關鍵模塊地址隨機隱藏。迫使模塊地址泄露,就是第一個漏洞的作用所在。
2、有了核心模塊地址,就可以構建攻擊代碼了,但是此時,攻擊代碼仍然需要一個漏洞才能進入核心模塊,這就是徐昊說的第二個漏洞作用所在。
3、經(jīng)過前兩個漏洞的攻擊,Safari 終于被“催眠”,可以執(zhí)行遠方傳來的任意代碼。但是,此刻 MacOS 還有另一重機制來保障安全,那就是“沙盒”。簡單來說,沙盒的作用就是通過隔離來限制各個應用的權限。理論上來說,即使 Safari 被黑客“策反”,仍舊沒有能力接觸到內(nèi)核層面的代碼。此時,一般攻擊者會開始尋找繞過沙盒的漏洞。但根據(jù)盤古的研究,雖然身處沙盒,仍舊有一個非常小的攻擊面,可以直接攻擊內(nèi)核。但是,“狡猾”的蘋果,把內(nèi)核地址也做了隨機化處理。于是第三個漏洞此刻產(chǎn)生作用,迫使內(nèi)核加載地址泄露在了黑客面前。
4、最后一個漏洞,當然是為了直擊內(nèi)核。此刻內(nèi)核已經(jīng)變得非常脆弱,只需要最后一擊就會投降。于是,我們看到了文章開頭的那一幕,MacOS 根據(jù)遠程黑客的指令,彈出了 Terminal 命令行程序。這意味著,系統(tǒng)已經(jīng)順從地臣服于新主人。
實際上,在這四個用到的漏洞中,前兩個 Safari 遠程代碼執(zhí)行漏洞并不來自盤古團隊的研究,而是來自韓國黑客神童 Lokihardt。
提到 Loki,在韓國可謂無人不知無人不曉。他經(jīng)常單槍匹馬和全世界黑客捉對廝殺,憑借著極高的顏值和頂尖的技術成為很多人心中的戰(zhàn)神。在這次 PwnFest 上,他剛剛以一己之力攻破了 微軟的 Edge 瀏覽器拿下 Windows 最高權限,攻破了 VMware 的虛擬機程序 Workstation。
他最擅長的部分,恰恰是遠程進攻。
【韓國神童 Lokihardt】
徐昊告訴雷鋒網(wǎng):
實際上我們在比賽前一周才臨時決定嘗試攻擊 Safari+MacOS 的,因為我們和 Loki 有一些交流,他告訴我們他手上有一套 Safari 遠程代碼執(zhí)行的漏洞,而我們的強項恰恰在內(nèi)核漏洞方面。我們決定合作,各自編寫攻擊代碼,然后由我們整合攻擊,于是我們在報名截止前最后一天報了名。
就這樣,全世界兩組最強大的 MacOS 黑客,組合成了無敵戰(zhàn)隊。這次攻擊,也是一次完美的“中韓合作”。
說到這里,你也許還有一個疑問。盤古團隊是著名的 iOS 越獄大神,為什么會去破解 MacOS呢?
MacOS 的安全性一直為人稱道。但是,一個系統(tǒng)是否無懈可擊,要看從誰的角度來觀察。對于 iOS 越獄大神盤古來說。尋找 MacOS 漏洞,是進階 iOS 研究的途徑之一。實際上,這個可以越獄目前世界上最新的 iOS 10.1.1 的大神團隊,正在用尋找 MacOS 漏洞的方法來培養(yǎng)后備力量。
iOS 和 MacOS 有很多相通的代碼,所以相互切換研究很容易上手。相比 iOS,MacOS 的符號多一些,也可以進行內(nèi)核調(diào)制,尋找 MacOS 漏洞,是很好的鍛煉新人的方法。在這個過程中,有一些成果,我們就來參加比賽了。
徐昊對雷鋒網(wǎng)宅客頻道(微信ID:letshome)說。
實際上,這次攻擊用到的內(nèi)核漏洞,正是盤古團隊核心成員帶領盤古新人搞出來的。
盤古團隊從來以“碾壓”的方式出現(xiàn)在世人面前,從歷次發(fā)布的越獄產(chǎn)品可以看出,他們想做的事情,無一失敗。實際上,在盤古團隊手里,仍然保有著超過兩套越獄最新 iOS 的方法。而對于 MacOS,他們?nèi)匀弧鞍詺鈧嚷薄?/p>
徐昊低調(diào)地告訴雷鋒網(wǎng),
這樣級別的 MacOS 漏洞,團隊手里還有一些。
文/史中(微信:Fungungun 歡迎講述你的黑客故事)
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權禁止轉載。詳情見轉載須知。