拆解設計:探索控制器區域網路 (CAN) 標準中的漏洞

2022年7月13日
VicOne
拆解設計:探索控制器區域網路 (CAN) 標準中的漏洞

2015 年,安全研究人員 Charlie Miller 和 Chris Valasek 入侵了一輛克萊斯勒的吉普車。 與之前的其他駭客攻擊一樣,這種駭客攻擊取決於特定的汽車製造商或品牌;而這種駭客攻擊通常對汽車行業很有幫助,因為一旦研究人員通知了製造商,在此類駭客攻擊中發現的漏洞就可以很快地解決。

與針對特定製造商或品牌的攻擊相比,通過 Trend Micro Research、Politecnico di Milano 和 Linklayer Labs 合作研究進行的駭客攻擊,主要是想了解如果攻擊是隱蔽的、不特定針對任何廠商,還能如何極大地影響汽車的性能和功能。

獨特的概念證明

這種駭客攻擊的一個顯著特點是,它可以使用連最先進的汽車安全系統都無法檢測到的方式,來關閉汽車安全氣囊、停車感應器和主動安全系統等裝置。因此,這種駭客攻擊再次讓汽車製造商、標準化機構和決策者一同呼籲,需要加強汽車的虛實整合系統。值得注意的是,為了防止這種駭客攻擊,對安全標准、車載網路和裝置的製造方式都需要進行廣泛地更改。如果不幸的,攻擊者成功地完成了這種駭客攻擊,那麼單單無線 (OTA) 升級就不夠了;解決方式會需要整批車輛的全部更新才能夠應對威脅。

為了應對這種與供應商無關的攻擊,一些供應商可能會使用非標準的對策。這強化了汽車中預期網路安全的必要性,超越了 Miller 和 Valasek’s 在駭客攻擊之前揭示的可能威脅。目前來說,通過售後市場入侵檢測系統 (IDS) 和入侵防禦系統 (IPS) 以及汽車製造商升級汽車裝置上運行的軟體以解決被利用漏洞,是可以應對上面提到吉普車駭客行為所帶來的威脅。

不同的對策

相比之下,這裡討論的聯合研究利用了一個涉及汽車裝置網路如何運作的安全問題:簡而言之,即使汽車製造商採用針對網路的對策,這也只能減輕攻擊的影響。為了徹底解決這個問題,需要採取更嚴厲的措施—在全新一代汽車中採用和實施控制器區域網路 (CAN) 標準的更新。

趨勢科技高級威脅研究員 Federico Maggi 在 2017 年入侵和惡意軟體檢測和漏洞評估 (DIMVA) 會議上的演講中,詳細地闡述了攻擊如何濫用連接所有車載裝置和系統的網路協議 CAN。

控制器區域網路 (CAN) 的簡史

CAN 協議允許汽車裝置和系統相互通信,也使它們能夠自動運行—這是一種不可協商的特性,尤其是在緊急的情況下。例如,如果 CAN 協議出現故障,汽車的安全氣囊系統也可能在發生事故時無法打電話回家。

雖然最初由博世 (Bosch) 於 1983 年開發,但直到 1993 年,國際標準化組織 (ISO) 才接受 CAN 作為標準,從而產生了適用於道路車輛的 ISO 11898。時至今日,幾乎所有流通中的輕型車輛都遵循這一個標準。

利用控制器區域網路 (CAN) 的漏洞

CAN 的內容和錯誤稱為“訊息或幀” 。每當汽車裝置讀取的值與訊息上的原始預期值之間存在分離時,就會產生錯誤。當汽車裝置檢測到這一點時,它會寫入一條消息以召回錯誤訊息並通知其他裝置,以便它們忽略錯誤的訊息。有問題的攻擊就會針對於 CAN 如何處理這些錯誤。

當裝置發送太多錯誤消息時,CAN 標準則會要求裝置必須進入總線關閉的狀態。在這種狀態下,裝置與 CAN 隔離,無法讀取或寫入任何資料。這種故障控制機制有助於防止故障裝置影響其他裝置,並影響車輛的整體性能。而攻擊則是通過引發足夠多的錯誤來濫用此功能,導致 CAN 上的目標裝置或系統進入總線關閉狀態,就可能導致致命的情況—像是需要觸發安全氣囊系統的事故,甚至是防鎖死煞車系統被攻擊者關閉的情況。

對於威脅參與者,通過本地存取引入 CAN 的特製裝置,再加上 CAN 中已有訊息的重複利用(而不是注入新的訊息),足以讓他們成功地發起攻擊。重要的是,因為它與 CAN 設計中的漏洞有關,所以這種攻擊很難被緩解。

現在的本地存取

關於這次攻擊,還有兩點值得注意。首先,只要它允許威脅參與者重新編程汽車的電子控制單元 (ECU) 韌體,就可以使用任何可遠端利用的漏洞來啟用它。其次,汽車製造商和安全分析師不應輕視本地攻擊:如今,共乘、拼車和租車等交通趨勢,已成為日常生活的一部分;不幸的是,這也意味著本地存取一輛車的行為更加普遍,因此更需要汽車網路安全的典範轉移來涵蓋所有這些新的可能性。

進一步來說,會建議採用以下針對類似漏洞的長期解決方案:

  • 網路分段或拓撲改變。 執行其中任何一項都可以阻止目標錯誤氾濫影響整個系統。
  • 受規範的 OBD-II 診斷接口讀取。 使用特殊硬體密鑰或密碼來打開接口的外殼,可以保護 CAN 免受未經授權的裝置的連接;允許進出接口流量的軟體級身份驗證也可達到幫助。
  • 加密。 當 CAN 訊息的 ID 部分被加密時,可以阻止攻擊者識別他們可以瞄準的訊息;加密同時也會產生更雜訊還有可被偵測的攻擊模式。

趨勢科技的技術簡報『Vulnerability in Modern Automotive Standards and How We Exploited It』中,全面且充分展示了這種 CAN 設計中的漏洞。

造訪 VicOne 的資源中心以獲取更多互聯車輛設計中其他可能漏洞的研究並了解最佳安全實踐。

VicOne新聞與觀點

深入瞭解汽車網路安全

閱讀最新報告

馬上體驗更先進的汽車網路安全防護

預約專人展示