9月30日,2015中國互聯網安全大會(ISC2015)閉幕式暨全球互聯網安全精英峰會盛大舉行。當日下午,美國知名獨立安全研究員Samy kamkar帶來了《基于射頻工程的物聯網設備的破解》的精彩演講,現場揭秘物聯網設備的致命缺陷。
Samy kamkar表示,基本上物聯網的設備無處不在,芯片、無線電深入到我們所有的產品當中,在家里可以放入的芯片看起來像是智能家居,它并不意味著是智能,很可能意味著攻擊。當設備、家居、安保鎖物聯網化,可以通過智能設備控制時,就意味著也許你的鄰居就能輕易駕駛你的車,打開你的門了……
智能車庫和防盜門被他人控制是很可怕的情況,Samy kamkar通過大量的實驗與研究找到了這類物聯網設備被控制的重要原因。這類設備大部分運用了無線電技術,通過編碼系統可以把一些無線電信號變成可視的,雖然這增加了無線電的可視性,但是并沒有提高安全性,反而讓它更容易被突破繼而被他人控制。
汽車滾動碼原理
這一實驗結果讓人感到了物聯網設備的不安全性,令人感到安慰的是,Samy kamkar根據這個結果給出了一些提高安全性的經驗“不要使用很小的密碼空間,要用序言/同不斷來開始每次的密碼發送,并且要使用滾動碼。”
Samy kamkar表示,許多汽車鑰匙可以同時收發,但解鎖信號人是單向的且不是基于時間的(滾動碼無時效性),所以應使用HMAC加密技術防止位倒轉,并且讓滾動碼使用基于時間的算法。
“物聯網設備存在,那么黑客就不會消失,我們能做的除了不斷努力完善安全系統之外,”Samy kamka提醒道:“請時刻假設自己在使用惡意的網絡。”
以下是Samy kamkar演講實錄:
一些方法或無線電頻段,藍牙等有些東西不算無線電,有些是紅外的,有些是聲頻的,音頻的,還有超聲波等等。這里稍微給大家講一下我們如何識別出在一個設備內部,工程角度來講它有什么東西安裝,特別是上面沒有標簽的話,很多像沙盒之類的東西,我們根本不知道里面有什么,所以我們需要分享一個設備前需要了解里面有什么。這是邏輯分析引擎,里面有很多和芯片相連的針尖,里面有一些微控制器和其他設備,我們可以通過這種方式來識別。
我們看到有些無線電芯片,我們要去分析一下這些無線電芯片里有些數據是來自于新的芯片手冊當中的內容,我們把所有跳頻、獲頻的收發器列出來,看它到底影響分布是怎樣的,我對它進行一個比較,假設這是一個無線電芯片,他們分析是哪一個芯片呢?我們可以在數據表格里鋪開看里面具體有什么。我們做的時候可以做邏輯分析儀,現在有了數據表之后可以把它看到里面的無線電以及微控制器之間的通信,一般做到這些之后可以提取串行的通信,然后通過現在的一個網安系統。
我們還可以看到里面使用的頻段、設備,你要知道里面的頻段,如果你不知道可以從這個圖上看到,這里有一些具體的信息,當然還有一些其他的虛擬設備通信的內部圖片,或者所有的信息,都可以通過設備通過FCC網站上查詢到,這些都是公開的信息。
我們可以看到它的頻率調制模式,實際的頻段是怎樣的,信號是怎樣的,有的設備我們在使用的時候和大家分享一點,就是我的演講你要記住一點,我們軟件定義的無線電它的能量何在,無論它是什么,就算是非常先進或者非常簡單的,是非常強大的信息,有的時候可能會非常貴,有時候重放攻擊當中我使用的設備是10—60左右赫茲在內,10—60左右的功能非常強大,我們可以進行簡單的活動,并且還可以不需要波特率,調試和調節可以在20MHz之內做代碼采集器,只有20美元,非常的簡單。
解調是什么意思呢?所有的無線電除了數字之外進行調制,所以和你車一樣的方式,這樣的報告當中,也是FCC的報告,具體信息都在上面列了出來,你可以對它進行調制的擴展。所以,我們可以知道它使用的是哪個調制模式。這里我們可以肯清楚它不同的調試方案是什么樣子的。如果你使用這樣的方式可以知道它使用軟件的情況,我們在30秒鐘就可以把它打開,看一下這個設備的內部,看一下ROQ的內部,使用ASK還是DSK,采取那種方案,你可以知道這種STR方式,它是安全系統的一部分,我們可以把數據抽出來看到它的相關性,看到它的信號、帶寬以及與實際的Bnell(音)進行對比。在我的車庫里我也進行這樣的測試,在我家里也使用同樣的擴放方式。
還可以進行更好的計算,來理解它內部的系統,這樣我們就可以更好地降低突破系統的時間,我們還進行Crash和其他系統的測試。我經常會用它來控制等的開關等等。比如我發現我的車庫里有很多固定碼的車庫碼,通常3分鐘時間才能夠把整個車庫來進行突破。但我們可以降低整個keys base 8秒時間可以進入任何一個車庫碼,STR里面了解了編碼之后就可以在車庫內部進行開發,你也可以使用Big seft(音)接收器的方式,通過它也可以使用。
這是Mattle IM-ME,它也是有個芯片,我們使用CC1110,它也是強大的收發器,并且也是一個非常有用的工具,特別是我們使用手持的時候。而且也有非常好的編程設備。這是非常好的工具,可以讓我做很多反向編程。
這是upside可以使用網絡安裝,使用Wi-Fi和車輛定位,可以實現開鎖解鎖和啟動。檢查之后可以看到我的手機和計算機、因特網進行互動。這實際上不是做驗證的,我們可以進行通訊解析,攻擊中間使得設備本身不用做早期的預警,可以使用它進行解碼所有已經加密的路徑,包括使用你的密碼、用戶名就可以,這樣你可以使用車輛,非常容易地獲得它的用戶名和密碼,就可以進入到這個車輛里面,對它進行遠程的啟動和解鎖、上鎖,非常得簡單。我們也使用了非常低成本的東西,數媒態(音)和開源軟件,還有SSL media以及其他設備結合來使用。
有很多教訓,有很多車輛可以使用,比如奔馳、寶馬、克萊斯勒等等,在這些平臺車輛當中,我們依靠這些車輛進行駕駛,但用人工工具可以做非常多的事情,這個教訓是,你你使用加密時要非常好地對它進行使用。我們今天聽到很多關于惡意攻擊,重點在于你進行密碼加密時要做非常好的驗證。
所以,我們可以做到的一點,我們可以干擾它,非常有意思的是它可以干擾,有非常多的情景應用,這樣的應用過程中,我給大家展示了一下,在物聯網安全當中以及車輛當中都可以使用。干擾是添加稍微一些頻點進行發放,把你的車輛和頻段稍微做一些偏移就可以了,這樣讓你的車輛沒有辦法讀取到一些信息。比如我可以干擾你的頻點,使得它在侵入時你的一些檢測器它能夠檢測到我,就會回到基站說有人在干擾我,這樣這個信號他就永遠不會接收到了。
我可以在一個比較大的建筑里,你可以說好的,在左翼可能出現了一個人侵入,我可以去檢測這個滾動代碼,更換這個信息,啟動報警地區,我可以侵入這個地區,因為我有他們的數據和信號。所有的信息系統和I/O設備不是用射頻,而是用簡單的辦法,使用溝通的協議。
謝謝大家能夠邀請我來參加此次的會議!