我的電腦不聯(lián)網(wǎng),很安全,黑客:你還有風扇呢
從1988年第一個網(wǎng)絡(luò)蠕蟲病毒誕生以來,「互聯(lián)網(wǎng)危機四伏」的觀念就已經(jīng)深入人心。如果只是這樣,不給電腦聯(lián)網(wǎng)、禁止使用任何可移動儲存介質(zhì),數(shù)據(jù)就安全了嗎?但專門研究黑客攻擊技術(shù)的研究者告訴我們,這個想法太天真了。他們用實驗證明,即使不聯(lián)網(wǎng),機箱里的風扇也能泄露你的機密信息。
這項研究的作者 Mordechai Guri 來自以色列本·古里安大學(xué)。在最近發(fā)表的一篇論文中,他提出了一種名為 AiR-ViBeR 的數(shù)據(jù)竊取技術(shù)。令人頗為震驚的是,這種技術(shù)的「竊取」方式是借助電腦內(nèi)部的風扇振動。
簡單地說,這一攻擊分為三個步驟:
- 首先,利用植入電腦中的惡意軟件來控制風扇轉(zhuǎn)速,以此來調(diào)節(jié)電腦產(chǎn)生的機械振動,數(shù)據(jù)會被編碼到這些振動中;
- 接下來,將智能手機放置在電腦桌上或靠近電腦主機的其他位置,手機中的加速度傳感器可以用來收集振動信號;
- 最后,通過 app 解碼獲取的信號。
過去五年來,Mordechai Guri 一直致力于找到一種讓不聯(lián)網(wǎng)的計算機向外界發(fā)送數(shù)據(jù),但又不被發(fā)現(xiàn)的方法。AiR-ViBeR 是他設(shè)計的一堆稀奇古怪方法里最新的一種。
這項研究非常重要,因為那些存儲了機密文件和知識產(chǎn)權(quán)的政府和公司內(nèi)網(wǎng),如今會面臨著被攻破的危險。
這之前,Guri 教授的團隊還提出過很多種從未聯(lián)網(wǎng)計算機中竊取數(shù)據(jù)的方法,比如:
- LED-it-Go:通過硬盤驅(qū)動器的 LED 指示燈從不聯(lián)網(wǎng)計算機竊取數(shù)據(jù);
- USBee:使 USB 連接器的數(shù)據(jù)總線發(fā)出電磁輻射,用以竊取數(shù)據(jù);
- AirHopper:使用本地 GPU 卡向附近的手機設(shè)備發(fā)射電磁信號,也可用于竊取數(shù)據(jù);
- PowerHammer:使用電源線從不聯(lián)網(wǎng)計算機中竊取數(shù)據(jù);
- ……
現(xiàn)有各種類型的攻擊未聯(lián)網(wǎng)計算機的方法。
在這篇最新發(fā)表的研究中,Guri 拓展了數(shù)據(jù)泄漏的全新媒介——「振動」。
具體來講,Guri 觀察到,CPU 風扇、GPU 風扇、電源風扇或者任何其他安裝在電腦機箱上的風扇都可以產(chǎn)生振動。對于沒有連接互聯(lián)網(wǎng)的電腦,植入在系統(tǒng)中的惡意代碼可以控制風扇轉(zhuǎn)動的速度。所以,通過加快或減緩風扇的轉(zhuǎn)動速度,攻擊者可以控制風扇振動的頻率。這種頻率可以被編碼,然后通過電腦桌等傳播出去。
一個典型工作站中的 CPU 風扇(A)和機箱風扇(B)。其中,機箱風扇是本文研究者重點關(guān)注的對象
接下來,附近的攻擊者可以使用智能手機中的加速度傳感器記錄下這些振動,然后解碼隱含在振動模式中的信息,進而對竊取自未聯(lián)網(wǎng)電腦系統(tǒng)中的信息進行重建。
收集振動則可以通過以下兩種方式完成:
- 如果攻擊者可以物理訪問未連接互聯(lián)網(wǎng)的電腦或內(nèi)網(wǎng),他們只需要將自己的智能手機放在電腦桌上,無需接觸被攻擊的電腦就能收集到所需的震動;
- 如果攻擊者無法訪問未聯(lián)網(wǎng)的電腦或內(nèi)網(wǎng),則可以利用目標公司的員工,令他們的智能手機感染上病毒。這樣一來,這些員工手機上的惡意軟件就可以替攻擊者來收集振動了。Guri 認為這是有可能實現(xiàn)的,因為現(xiàn)代智能手機上的加速度傳感器可以通過任何 App 來實現(xiàn)訪問,并且不需要用戶許可。這也使得這項技術(shù)能夠很好地規(guī)避風險。
盡管 AiR-ViBeR 是一項非常新穎的工作,但通過振動傳輸數(shù)據(jù)的速度卻非常慢,每秒僅有半個比特,是 Guri 和他的團隊近年來提出的最慢的數(shù)據(jù)竊取方法之一。
即便理論上 AiR-ViBeR 是可行的,那些攻擊者們也不會真的使用它,他們更可能選擇其他速度更快的技術(shù)。
AiR-ViBeR app 接收到了利用風扇振動竊取自未聯(lián)網(wǎng)電腦中的「秘密」信息(42 比特)
如何防止 AiR-ViBeR 的攻擊?
從振動檢測層面來說,一種解決方案是,在包含敏感信息的計算機上放置加速度傳感器,用以檢測異常振動。
還有一種方案是「風扇訪問監(jiān)視器」,這是軟件層面的對策。一般在系統(tǒng)中,任何程序都不應(yīng)該訪問風扇控制,所以可使用端點保護來檢測干擾風扇控制 API 或訪問風扇控制總線的代碼(比如 ACPI 和 SMBus)。但這種方法的缺陷在于,攻擊者可以使用 rootkit 或其他規(guī)避技術(shù),繞過監(jiān)視器并訪問風扇控制。
此外,也可通過切斷或屏蔽原始傳輸來堵塞通信信道,這也是一種內(nèi)部干擾方法,可以使用專門程序在隨機的時間和 RPM 上更改風扇速度,但同樣它也無法避免被內(nèi)核 rootkit 禁用或規(guī)避。
目前,在安全性方面最受信任的外部干擾方法是將產(chǎn)生隨機振動的組件連接到計算機上,該方法有一項弱點就是需要維護,無法做到在每臺計算機上進行部署,但這種操作確實比較簡單易行。
當然,還可以讓計算機進行物理隔離,把它放進一種特殊的抗振機箱?;蛘哂盟湎到y(tǒng)代替原有的計算機風扇,只是這樣的方案并不能大規(guī)模推廣,并且很貴。
防御、檢測、人為干擾三種類型的方法各有優(yōu)缺點。
關(guān)于 AiR-ViBeR 的技術(shù)細節(jié)可以參考論文《AiR-ViBeR: Exfiltrating Data from Air-Gapped Computers via Covert Surface ViBrAtIoNs》
論文地址:https://arxiv.org/abs/2004.06195v1
參考鏈接:
https://www.zdnet.com/article/academics-steal-data-from-air-gapped-systems-using-pc-fan-vibrations/
【本文是51CTO專欄機構(gòu)“機器之心”的原創(chuàng)譯文,微信公眾號“機器之心( id: almosthuman2014)”】