IOT 車聯網:這個安全漏洞可讓停車感應器、安全氣囊失效!

受到汽車製造商重用的控制器區域網路(Controller Area Network,CAN)協定含有一安全漏洞,可帶來阻斷服務攻擊(DoS),而使車上的安全氣囊或停車感應器失效。

在1986年正式發表的CAN協定規範了包括停車感應器、安全氣囊、主動安全系統、防煞車鎖死系統與車載系統之間的通訊與互動標準。不過,最近趨勢科技發現了該協定的設計含有一個安全漏洞,將允許駭客切斷基於CAN的系統功能,幸好駭客必需實際接觸車輛才可能實現攻擊。

美國國土安全部旗下的工業控制系統緊急應變小組(ICS-CERT)已提前取得了該研究報告並於7月提出警告。根據ICS-CERT的說法,CAN協定不只應用在汽車產業,也被廣泛應用在關鍵製造商、健康照護產業與交通系統。

由於該漏洞屬於CAN協定的設計漏洞,因此現階段只能紓緩而無法完全或立即被修補。其攻擊可能性則視CAN被部署的方式與OBD-II傳輸埠遭存取的難易度而定,例如ICS-CERT便建議汽車製造商應限制OBD-II的存取能力。

然而,趨勢科技警告,就算該漏洞必須要可實際碰觸汽車才能被開採,但這仍然是個可能危及生命安全的嚴重漏洞,而且,在共乘或汽車租賃成為主流之後,將讓許多人得以接觸同一部車,進一步擴大了該漏洞的安全風險。

聯網汽車被攻擊,已經不是新聞,一個著名的例子是,兩名研究人員Charlie Miller和Chris Valasek發現攻擊Chrysler Jeep的方法。過去發現的這些攻擊手法大多是利用特定品牌和車型的特定弱點,一旦回報就能夠很快加以解決。但米蘭理工大學、Linklayer實驗室與趨勢科技的前瞻性威脅研究(FTR)團隊發現, 新的攻擊手法不僅能夠大幅度影響汽車性能和功能,而且可以隱匿進行且通用於所有廠商。

現今的汽車安全技術無法防禦,想徹底解決這問題需要在設備製造方式上進行廣泛而徹底的革新。事實上,這會花上一整個世代的時間才能夠解決這樣的漏洞,不能僅靠召回或線上升級。

以下列出幾個常見問題:

問:這個“入侵汽車”的概念證明攻擊跟其他有什麼不一樣呢?

這種攻擊用最先進的安全機制也無法察覺的方,來停用連接到汽車設備網路的設備(如安全氣囊、倒車雷達、主動安全系統)。

 

問:這項研究的主要結論是什麼?

車聯網已經愈來愈普遍,標準化機構、決策者和汽車廠商是時候將這樣的改變加入考慮,變更未來汽車的實體網路設計。

問:我的車會被影響嗎?

有可能。這類攻擊方式跟廠牌無關。但有些廠商可能會採取非標準做法讓攻擊更難成功。

問:“ Jeep入侵”不是目前為止最先進的攻擊嗎?

“Jeep入侵”確實非常先進和有效。不過目前市面上的車載網路安全技術(如可加裝的IDS / IPS)能夠偵測這樣的攻擊,因為它需要進行frame注入。此外,汽車廠商可以升級車載設備的軟體來修補攻擊所用的漏洞。

問:汽車廠商需要多久來解決這個問題?

這並非汽車廠商的問題,不是他們造成的。我們的研究所利用的安全問題出在規範車載設備網路(即Controller Area Network,CAN)運作的標準。汽車廠商只能透過特殊做法來解決這類攻擊,但不能完全加以消除。要完全消除風險需要提出、採納和實施新的CAN標準。這可能需要花上一整個世代。

本文及下面的影片詳細介紹這個研究:

CAN標準的設計漏洞

這種攻擊濫用了被稱為控制器區域網路(Controller Area Network,CAN)協定的漏洞,該網路協定規範了包括停車感應器、安全氣囊、主動安全系統之間的通訊與互動標準。

CAN協定在1986年正式發布,在1989年首次出現在量產車上。1993年,國際標準化組織(ISO)接受CAN成為一個標準,此後,CAN成為今日幾乎所有輕型車輛的通用標準。

 

為什麼汽車內的各種設備和系統需要互相連接?

為了讓各種車載系統可以自動發揮作用,尤其是在緊急時刻。例如CAN讓你的資訊娛樂和安全系統接收來自汽車安全氣囊系統的訊息,知道是否需要在發生事故時打電話回家。它還可以提升你的駕駛體驗。例如資訊娛樂系統可以從引擎控制系統讀取正在加速的訊息,進而調高汽車音響音量。這樣一來你就可以在引擎聲變大時仍然可以聽到聲音。

Figure 01 A typical CAN network diagram

圖1、典型的CAN網路圖(*1)

 

CAN訊息(包括錯誤)被稱為“ frame”。當裝置讀到frame出現非預期的值時會出現錯誤。當設備偵測到這種事件時,它會寫入一個錯誤訊息到CAN匯流排來“回收”錯誤的frame,並通知其它設備忽視被回收的frame。這種事故很常見,通常都是自然造成,一次短暫的故障或是太多系統和模組試圖在同一時間透過CAN送出frame。

如果一個設備送出太多錯誤,那麼CAN標準規定它進入一個所謂的Bus-Off狀態,將它從CAN隔離,避免對CAN讀寫任何資料。此功能對於隔離故障設備並阻止它們觸發CAN其他模組/系統來說非常有用。

攻擊可透過足夠多的錯誤來觸發這種功能,讓CAN內的目標設備或系統進入Bus Off狀態,也就無法操作。這反過來可以極大地影響汽車性能,讓它變得危險甚至致命,特別是當像安全氣囊系統或防鎖死制動系統等關鍵系統失效的時候。所需要的只是將一個特製攻擊設備連上汽車的CAN,並且重新使用已經流通在CAN的frame而非注入新的(像是之前攻擊的做法)。

Figure 2. Attack device attack chain

圖2、攻擊設備攻擊鏈(*1

 

遠端與本地存取 現今汽車的漏洞

許多汽車入侵概念證明或漏洞會被忽視,經常是因為它們需要對汽車有直接連線。首先,這個概念驗證攻擊可以透過任何讓攻擊者重新編寫一個ECU(如資訊娛樂系統)韌體的遠端攻擊漏洞進行。其次,即便是本地端攻擊也應受到重視。在過去,攻擊者能夠直接碰到車子的情況不止少見,而且對攻擊者來說也很危險。這或許是真的,但是現今的交通運輸趨勢(如共乘、併車或租車)讓多人能夠碰到同一台車的情況變得普遍。因此,車輛網路安全的變革必須發生。

 

解決方案

正如前面所說,要解決這個安全問題並不容易,因為這漏洞存在於設計中,而且不能立即修補。任何可行的解決方案都需要法規和政策的大幅轉變,並需要花上一個世代進行。放眼未來,有些長期解決方案有助於阻止這種攻擊:

 

  • 網路分段或拓撲結構改變:透過變更網路拓撲或切割車內CAN可以阻止針對性的大量錯誤訊息影響特定系統。
  • 限制連接OBD-II診斷端口:需要特殊鑰匙或密碼才能開啟該端口所在外殼,這可以防止非法和未經授權的設備連上CAN。也可以考慮對進出該端口的網路流量加上軟體級別的認證。這需要法規的改變。
  • 加密:加密CAN frame ID欄位可以防止攻擊者識別到目標的CAN frame,也會造成更容易被偵測。

 

我們已經將研究結果披露給US/ICS-CERT

 

想了解更多關於此次入侵及相關的研究資訊可以參考我們最新的技術簡介“現今汽車標準的漏洞以及我們如何攻擊“。我們仔細分析了對此漏洞的調查結果。也詳細介紹了我們的攻擊機制及闡述解決此漏洞的建議。

 

*1:A Stealth, Selective, Link-layer Denial-of-Service Attack Against Automotive Networks,Andrea Palanca(米蘭理工大學,義大利);Eric Evenchick(Linklayer實驗室,義大利);Federico Maggi(趨勢科技前瞻性威脅研究團隊);Stefano Zanero(米蘭理工大學,義大利)

 

@原文出處:The Crisis of Connected Cars: When Vulnerabilities Affect the CAN Standard 作者:Federico Maggi(資深威脅研究員)