互聯(lián)網(wǎng)沒有絕對的安全,除非你不上網(wǎng)。所以對保密要求高的場合,如軍事系統(tǒng)、支付網(wǎng)絡(luò)、工控系統(tǒng)等往往會采用所謂的氣隙系統(tǒng)—即本身與互聯(lián)網(wǎng)隔絕,而且也不與上網(wǎng)的其他計算機(jī)連接。要想攻破這樣的系統(tǒng)通常需要能物理訪問到機(jī)器,利用USB等可移動介質(zhì)或者通過火線接口直接與另一臺計算機(jī)連接才有機(jī)會。
但這樣就安全了嗎?
未必。
以色列本古里安大學(xué)的研究人員就發(fā)明了一種名為BitWhisper的新的攻擊方式。攻擊者可透過這種方式偷偷從氣隙系統(tǒng)竊走密碼或密鑰,然后傳輸至附近的受攻擊者控制的聯(lián)網(wǎng)系統(tǒng),同時還可以通過聯(lián)網(wǎng)系統(tǒng)發(fā)送惡意指令給氣隙系統(tǒng),整個過程只需要機(jī)器發(fā)熱以及計算機(jī)內(nèi)置的熱傳感器。
下面的這段視頻演示的就是通過受控計算機(jī)發(fā)送指令給附近的氣隙系統(tǒng),然后成功地讓后者控制的一套導(dǎo)彈發(fā)射裝置玩具重新調(diào)整了發(fā)射方向。
這種處于概念驗證階段的攻擊手法要求兩臺機(jī)器都要預(yù)先植入惡意軟件,目前其數(shù)據(jù)傳輸率尚低得可憐:1小時僅能傳輸8位數(shù)據(jù),不過用來傳送簡單指令或者竊取密碼已經(jīng)足夠了。還有一點就是要求兩臺機(jī)器的距離不能太遠(yuǎn)(40厘米以內(nèi)),但這個也不是很罕見的情形,因為現(xiàn)實中氣隙系統(tǒng)往往就放在聯(lián)網(wǎng)機(jī)器旁邊。
目前的成果僅是研究的第一階段,研究人員下一步打算增加氣隙系統(tǒng)與控制機(jī)的距離,并提高數(shù)據(jù)傳輸率。在演示視頻中機(jī)器原型采用的是臺式機(jī),未來研究人員打算利用物聯(lián)網(wǎng)設(shè)備—如物聯(lián)網(wǎng)暖風(fēng)系統(tǒng)或可遠(yuǎn)程控制的傳真機(jī)來作為攻擊跳板。
原理
我們知道,計算機(jī)處理量越大,發(fā)熱量也會上升。CPU、GPU以及其他主板元件等都會發(fā)熱。如果在計算機(jī)上同時看視頻、下載文件和上網(wǎng),那就會產(chǎn)生大量的熱量。
為了監(jiān)控溫度,計算機(jī)往往內(nèi)置了若干的熱傳感器,一旦發(fā)現(xiàn)機(jī)器變熱會觸發(fā)內(nèi)風(fēng)扇對系統(tǒng)進(jìn)行散熱處理,甚至在必要時關(guān)機(jī)以避免造成損害。
研究者正是利用這些熱傳感器來發(fā)送指令給氣隙系統(tǒng)或者從中獲取數(shù)據(jù)的。整個過程跟摩爾斯電碼有點類似,發(fā)送方系統(tǒng)利用受控的溫度升高與接收系統(tǒng)通信,然后后者利用內(nèi)置的熱傳感器偵測出溫度的變化,再將變化譯成“1”、“0”這樣的代碼。
比方說,視頻中研究人員在預(yù)設(shè)的時間窗口內(nèi)將發(fā)送系統(tǒng)的放熱提高了1°,而接收方系統(tǒng)(氣隙系統(tǒng))由于離發(fā)送方系統(tǒng)比較近,所以也會溫度升高,其熱傳感器檢測到1°的升高后就知道發(fā)送方發(fā)過來了“1”;反之,發(fā)送方通過降溫1°的方式來傳送“0”。如此反復(fù)幾次發(fā)送方就能夠?qū)⒅噶钜远M(jìn)制的方式傳送給控制導(dǎo)彈發(fā)射的氣隙系統(tǒng)—設(shè)想一下,如果攻擊者通過這種手段變更了敵方導(dǎo)彈系統(tǒng)的發(fā)射方向,其后果將是致命的。
但是計算機(jī)本身的溫度也是會發(fā)生波動的,如何區(qū)分正常的溫度波動呢?除了設(shè)定時間窗口以外,研究人員設(shè)計的惡意軟件也考慮到這些因素了。而且攻擊者還可以將溫度的提升控制住合理范圍內(nèi),這樣就不會使得機(jī)器過熱而引起懷疑。
而且植入的惡意軟件還有查找附近PC的功能—受感染機(jī)器會定期發(fā)射熱量ping,以便確定某臺受感染機(jī)器是否被放置在某機(jī)密系統(tǒng)旁邊。如果是的話雙方就會進(jìn)行握手,各自以一系列升溫1°的發(fā)熱ping來建立連接。不過如果雙方一直都是距離很靠近的話,惡意軟件可以跳開握手直接自動在特定時間(比如監(jiān)控相對薄弱的半夜)內(nèi)發(fā)起數(shù)據(jù)傳輸。
傳輸所需時間受到幾個因素的影響,如兩臺計算機(jī)的距離、位置以及擺放等。研究人員嘗試了多種場景,比如并排、背對背以及堆疊等。從加熱到傳輸完一個“1”所需的時間大概在3到20分鐘。而降溫所需時間則要更長。
氣隙系統(tǒng)的其他破解之道
通過熱交換并非黑氣隙系統(tǒng)的唯一方式。之前也有人研究過通過肉耳無法聽到的聲道、肉眼看不見的光通道以及難以察覺的電磁輻射來傳輸數(shù)據(jù)。但是這些手段都是單向的,這意味著只能竊取氣隙系統(tǒng)的數(shù)據(jù),但是卻無法對其控制。
Ben Gurion大學(xué)的同一研究團(tuán)隊此前還曾演示過利用無線電及附近手機(jī)來竊取氣隙系統(tǒng)數(shù)據(jù)。通過讓受感染機(jī)器的顯卡生成無線電信號,然后發(fā)送給附近手機(jī)的FM調(diào)頻接收器,最后再轉(zhuǎn)換為密碼等數(shù)據(jù)。
根據(jù)斯諾登披露的消息,NSA也曾運用過這一技術(shù)的更復(fù)雜版本,不僅竊取了伊朗等國氣隙系統(tǒng)的數(shù)據(jù),而且還往里面植入了惡意軟件。NSA的這種裝置叫做Cottonmouth-I,通過與微型收發(fā)器的配合,美國的安全機(jī)構(gòu)可以利用RF信號析取目標(biāo)系統(tǒng)的數(shù)據(jù),同時將其發(fā)送給遠(yuǎn)至8英里以外的公文包大小的中繼站。
目前尚未有跡象表明NSA利用了這種熱傳遞的技術(shù),與之相比,RF射頻顯然要有效得多。不過如果以色列研究人員的成果能夠更加實用化的話,相信安全機(jī)構(gòu)會盯上的。