作者:星輿實驗室

前言

大家好, 我是星輿車聯網實驗室“飯飯”。星輿取“星辰大海, 輿載萬物”之意, 是專注于車聯網技術研究, 漏洞挖掘和工具研發的安全團隊。團隊成員在漏洞挖掘, 硬件逆向與 AI 大數據方面有著豐富經驗, 連續在 GeekPwn 等破解賽事中斬獲獎項, 并獲眾廠商致謝。團隊研究成果多次發表于 DEFCON 等國內外頂級安全會議。

在不久之后實驗室計劃拆車,研究車輛的組成結構。拆車是很容易的,但拆完之后能原封不動的裝回去且能正常運行還是需要功夫的。正好拿到了一輛車完整的電路圖,于是準備研究一下,為后面拆車做準備,免得到時一頭霧水。之前也有對插線端子進行過逆向分析,在一堆接口中尋找CAN 、UART 、USB 等接口。在沒有手冊的條件下,完整逆向出來還是有一定難度的。此外,在自己搭建測試臺架中也需要熟悉各個 ECU 和各線束上的接線端子,接下來就請跟隨我進入到汽車內部看一看 ECU 的接線端子。

插線端子

通過插線端子看車內的網絡結構,向下看各 ECU 與其他 ECU 或傳感器之間的連接方式、通信方案等;向上分析個 ECU 所在的網絡域,梳理車內網絡結構。

下面以不同網絡為分類,解讀各 ECU 的插線端子的用途,最后以 CAN 網絡為主線梳理出整車網絡拓撲。

網關

網關是整個網絡中的核心,控制多路CAN、以太網網絡的各類消息的處理和轉發。網關最重要的功能是將不同的網絡域進行隔離。從網關的插線端子來看,內部CAN網絡被劃分了為 6 個網絡。分別是 DiagBUS(診斷)CAN、TBUS(遠程監控)CAN、CBUS(底盤)CAN、EBUS(車身)CAN、IBUS(信息娛樂)CAN、EVBUS(能量)CAN。下面按照這 6 個網絡分析車內網絡結構。

image-20211111230110482

TBUS 遠程診斷網絡

TBUS 中只有 T-BOX 一個ECU。T-BOX 是車端智能網聯中最核心的部件之一,集成 GPS、外部通信接口、電子處理單元、微控制器、移動通信單元和存儲器等功能模塊。提供的功能有網絡接入、OTA、遠程控制、位置查詢/車輛追蹤、電池管理、位置提醒、eCall、遠程診斷、平臺監控/國家監管等。下圖中插線端子上 CAN、SPK、MIC、喚醒信號燈等接口。T-BOX 通過 TBUS CAN 與網關相連;T-BOX 上的 SPK(揚聲器) 與 MIC(麥克風) 用于緊急呼叫 等服務。除了下圖的接口外,其他車的 T-BOX 可能還有用于模擬以太網的 USB 端子、用于調試的 UART 串口等。

image-20211111225448841

EVBUS 能量域/動力域

EVBUS 能量域是電動汽車新能源的叫法,對應傳統網絡中的動力域。能量域主要的功能是給車載電池充電以及控制驅動電機為車輛供能。能量域中有 BMS 電池管理系統、MCU 驅動電機控制器、OBC 車載充電控制器、CMU 交流充電控制單元、電子水泵控制器等。

BMS 電池管理、快充、慢充系統

電動汽車的動力輸出依靠電池,而電池管理系統BMS(Battery Management System)則是其中的核心,負責控制電池的充電和放電以及實現電池狀態估算等功能。電池管理系統與電動汽車的動力電池緊密結合在一起,通過溫度傳感器進行實時檢測,還進行熱管理;通過 EVBUS 與車載總控制器、電機控制器、能量控制系統、車載顯示系統等進行實時通信。充電方式有快充(直流)和慢充(直流)兩種。在快充網絡中,BMS 充當 EVBUS 與 FCBUS 之間的網關;在慢充網絡中,BMS 通過控制 CMU 控制對電池的慢充。

image-20211112110531547

WEP-FD 電機水泵控制器

電機水泵控制器控制電機水泵為電機電控散熱提供冷卻水循環和風冷,通過 CAN 總線接入能量域。

CBUS 底盤域

底盤域為整個底盤系統的協調者,即是將車輛運動控制進行總體把控。接入到 CAN 網絡底盤域中的控制器包括 ABS 防抱死制動系統、EPB 電子駐車制動控制器、EPS 電動助力轉向系統、P 檔控制器、ESK 檔位控制器、VBP 真空泵控制器等。

ABS 防抱死制動系統

ABS(Antilock Brake System) 防抱死制動系統是在汽車制動時,自動控制制動器制動力的大小,使車輪不被抱死,處于邊滾邊滑(滑移率在20%左右)的狀態,以保證車輪與地面的附著力在最大值。ABS 采集四個輪子上的轉速傳感器信號,自動控制制動器制動力的大小,防止車輛抱死。

image-20211112115057877

EPB 電子駐車制動控制器

EPB(Electrical Park Brake) 電子駐車制動系統既通常所說的電子手剎,采用電子控制的方式來完成駐車制動。EPB 駐車通過控制四個EPB電機完成駐車制動。

image-20211112113135506

EPS 電動助力轉向系統

EPS(Electric Power Steering) 電動助力轉向系統是依靠電機提供輔助扭矩的動力轉向系統。EPS 根據駕駛員意圖和車輛的運行工況而進行助力的轉向系統。EPS 的控制過程是動力轉向系統綜合控制的過程,通過底盤域CAN網絡與其他電子控制器進行通信。

image-20211112113631841

P 檔控制器

電動汽車上的P擋控制,其作用等同于傳統自動變速器的“駐車擋”。

image-20211112114605397

ESK 檔位控制器

旋轉式電子檔位控制器用于切換 D檔、R檔、N檔、S檔、L檔等。

VBP 真空泵控制器

真空泵用于產生真空,利用產生的負壓增加制動力。

IBUS 信息域/智能座艙域

智能網聯汽車之所以叫做智能網聯,智能座艙在其中扮演著至關重要的角色。智能座艙中包括中控娛樂系統、組合儀表、空調舒適系統、低速行人警示器等。

中控娛樂系統

中控面板可能是傳統按鈕式的,也可能是更加現代的電子式。通過中控面板上的按鈕控制空調,有中控通過IBUS傳達給空調控制器。

image-20211112122759622

音響主機C

音響主機也被叫做車機、IVI、中控主機等,連接有控制按鈕、揚聲器、麥克風、攝像頭等。

image-20211112123726218

組合儀表

組合儀表通過IBUS接收汽車行駛和其他的轉態數據并展現在儀表上。組合儀表與車機都在智能座艙域下,沒有經過網關,是可以直接互通的。

image-20211112124106173

ACP 空調控制器

空調控制器接收 IBUS 上的空調控制信息,驅動空調制熱或制冷。同時有各種傳感器進行監控。

image-20211112120425461

EAS 電動壓縮機控制器

空調控制器通過 CAN 控制 EAS 空調壓縮機驅動器制熱或制冷。

image-20211112121243656

PTC 電加熱控制

通過 CAN 控制 PTC 加熱控制器調節溫度。

image-20211112121443053

低速行人警示器

由于純電動汽車在低速行駛時噪音相對較小,周邊行人很難察覺。為了提高行車安全性,該系統可以在車速低于30公里時發出警示聲音,借此可以使得周邊行人更好地察覺。

image-20211112122140688

EBUS 車身域

車身域主要包括車身附件控制(門窗控制、門鎖等)、內外飾附件控制(天窗、雨刮、內外燈等)、啟動控制、數字鑰匙等。車身域中的主要模塊有 BCM 車身控制模塊、PEPS 一鍵啟動開關、無鑰匙進入、TPMS 胎壓檢測、PAS 泊車輔助雷達、AVM 全景攝像模塊、SDM 安全氣囊控制器、ESCL轉向柱鎖、DVR行車記錄儀等。

車身域控制系統特點:

  • 涉及多領域,個性化設置,如作為座椅位置記憶;語音控制,控制車窗等;
  • 涉及系統多,與整車絕大多數其他系統存在信息交互:動力系統、娛樂系統等;
  • 涉及功能安全,近燈光控制(ASILB)、前雨刷控制(ASILB)、整車電源狀態管理(ASILB)、車窗防夾(ASILA)。
  • 涉及高感知功能,重要程度高,影響車輛啟動、用戶進入;車窗、燈光控制等使用頻率高。

車身域控制系統涉及多個技術領域,接口類型多,資源需求不同車型變化大;同時又涉及功能安全以及高感知的功能,有較高的可靠性設計要求;另外還涉及PEPS、TPMS、藍牙、NFC 等無線通訊技術。

BCM 車身控制模塊

BCM((Body Control Module)車身控制模塊的功能包括:電動門窗控制、中控門鎖控制、遙控防盜、燈光系統控制、電動后視鏡)加熱控制、儀表背光調節、電源分配等。

image-20211112000231431

image-20211112000835375

PEPS 無鑰匙進入與一鍵啟動

PEPS(Passive Entry Passive Start)無鑰匙進入及啟動系統, 由控制器、智能鑰匙中的射頻(RF)發射器和汽車端的接收器等組成。當鑰匙在有效范圍內,車主拉動車門或按下一鍵啟動開關, 相應的模塊會發送中斷信號來喚醒主控制器,開始整個通信過程。整個過程無需使用鑰匙,即可打開車門或者啟動發動機。主要零部件有遙控鑰匙、天線、車身控制模塊(BCM)、涉及核心技術有RFID識別技術、加密算法、 EMC技術。

根據無鑰匙進入的插線端子可知有兩組天線,用戶探測鑰匙是否在周邊。當鑰匙在可識別距離內,將車門設置為可打開模式。

image-20211111233345398

SSB(SSB Start Stop Button,一鍵啟動按鍵) 俗稱點火按開關,用于啟動發動機。

image-20211111232400288

現在也出現了 PEPS 與 BCM 融合的方案。

image-20211113234220158

TPMS 胎壓檢測

TPMS(Tire Pressure Monitoring System,胎壓智能監測系統)是一種采用無線傳輸技術,工作頻率在 433.92?MHz,利用固定于汽車輪胎內的高靈敏度微型無線傳感裝置在行車或靜止的狀態下采集汽車輪胎壓力、溫度等數據,并將數據傳送到駕駛室內的顯示屏中,以數字化的形式實時顯示汽車輪胎壓力和溫度等相關數據,并在輪胎出現異常時(預防爆胎)以蜂鳴和語音等形式提醒駕駛者進行預警的汽車主動安全系統。確保輪胎的壓力和溫度維持在標準范圍內,起到減少爆胎、毀胎的概率,降低油耗和車輛部件的損壞的作用。中央監視器接收 TPMS 監測模塊發射的信號,將各個輪胎的壓力和溫度數據顯示在屏幕上,供駕駛者參考。如果輪胎的壓力或溫度出現異常,中央監視器根據異常情況,發出報警信號,提醒駕駛者采取必要的措施。?

TPMS 檢測到胎壓數據經過 EBUS CAN 傳輸給其他 ECU 使用。

image-20211111233735818

PAS 泊車輔助雷達

PAS(Parking Assist System,泊車輔助系統)利用倒車雷達和為駕駛員在狹窄空間停放車輛時提供援助,通過發送聲音信號以及在中央顯示屏上顯示相應圖形指示與障礙物的距離。

image-20211111234419237

AVM 全景攝像模塊

AVM(Around View Monitor,全景影像的系統)通過多個超大廣角魚眼鏡頭拍攝圖像,然后經過數據處理對拍攝圖像進行畸變矯正以及拼接,形成周圍影像。為駕駛員提供車身四周的俯視圖像,消除駕駛員的視野盲區,泊車時可提供有效的視覺輔助功能。最主要的接口是變道燈、攝像頭視頻和供電接口。

image-20211111230713168

SDM 安全氣囊控制器

SDM 安全氣囊控制器管控安全氣囊和安全帶。

ESCL 轉向柱鎖

ESCL(Electronic Steering Column Lock,電子轉向柱鎖)是車輛防盜系統的一部分,用于無鑰匙進入無鑰匙啟動系統中鎖止和解鎖方向盤。ESCL 的上鎖和解鎖動作通過控制 ESCL 內的電機動作來實現。ESCL產品的安全等級需要根據整車系統構架和ISO26262進行評估與計算。此外還需滿足不同國家和地區的法規要求(如GB15740、 ECER116等 )。

image-20211111232117359

DVR 行車記錄儀

DVR 行車記錄儀也有接入到 EBUS CAN 網絡中。

image-20211111235251029

其他

后排標準USB接口

后排的標準USB接口只有電源針腳,沒有數據針腳。而前排的 USB 接口大多是全功能的 USB 接口,既可以充電也可以傳輸數據。

image-20211112131248725

點煙器

一直很好奇點煙器是不有其他特殊的功能,看到只有電源針腳,原來是我想多了。

image-20211112131454826

PEU 電機控制器

新能源汽車最核心的技術“三電”,即電機、電控、電池。電機控制器是用來控制電動車電機的啟動、運行、進退、速度、停止以及其它電子器件的核心控制器件。PEU 電機控制器同時接入到了 EVBUS 能量域和 CBUS 底盤域中。

上述的內容繪制成圖即可,畫完之后的圖如下。

根據各 ECU 插線端子上的通信接口將同一個網絡域上的 ECU 串聯,然后并不同網絡進行并聯。上文中在解讀各 ECU 端子中已進行分類,現只需要將上述的內容繪制成圖即可,畫完之后的圖如下。

![網絡拓撲-北汽ECU5 網絡結構](從插線端子看車內通信網絡結構.assets/網絡拓撲-北汽ECU5 網絡結構.png)

整個網絡以網關為核心,一共有8個子網絡,分別是遠程監控網絡、診斷網絡、能量域、快速充電網絡、底盤域、信息域、車身域以及LIN總線網絡。

整車線束

從接線端子梳理完這個網絡結構后,返回到汽車本身,汽車網絡是由線束連接的,各插線端子最終都會連接到線束上,所以我們有必要去了解整車線束。

汽車線束是汽車電路的網絡主體,沒有線束也就不存在汽車電路。線束是指由銅材沖制而成的接觸件端子(連接器)與電線電纜壓接后,外面再塑壓絕緣體或外加金屬殼體等,以線束捆扎形成連接電路的組件。

  • 前艙線束:布置在汽車前艙區域,用于連接車身控制系統。前艙線束與儀表線束、PEU線束、前端線束、前保險杠線束、車身線束相連。ABS系統、BMS、PEU、燈具,前雨刮洗滌系統,電源系統、中央電器盒、油門加速踏板等位于前艙區域。
  • 儀表線束:布置在汽車儀表區域,用于連接駕駛系統、娛樂系統、空調系統等電器。儀表線束與前艙線束、車身線束、頂棚線束、空調線束相連。組合儀表、音箱主機、中控面板、中控顯示屏、揚聲器、OBD 診斷接口、ESP、ESCL 轉向柱鎖、燈光組合開關、電動后視鏡、網關、點煙器、P 檔控制器、ESK 旋轉式電子換擋、一鍵啟動開關、駕駛員/副駕駛安全氣囊、TPMS、BCM、吹腳風道、除霜風道、行李箱與C2L開關等連接在儀表線束上。
  • 車身線束: 布置在汽車車身,是汽車線束中的骨干,與前艙線束、儀表線束、前保險線束、后保險線束、座椅線束相連。TBOX、EPB、執行人警示開關、GPS、CMU 交流插座控制單元、后備箱天線、行李箱鎖電機、行李箱燈、倒車雷達模塊、左右側安全氣囊、左右后組合燈、左右側氣簾、高位制動燈、后排USB接口、后攝像頭、AVM 全景攝像模塊等連接在車身線束上。
  • 前端線束:布置在汽車前端,與前艙線束相連。喇叭、左右側碰撞傳感器、DC-CHM、機艙蓋鎖、行人警示器連接在前端線束上。
  • PEU(動力電子單元)線束:PEU線束與前艙線束相連,P檔電機、電機水泵控制器、正空泵電源、真空泵控制器、蓄電池正極起動機等連接在PEU線束上。
  • 前保險杠線束:前保險線束與前艙線束相連,快充蓋鎖、前攝像頭、左右日間行車燈等連接在前保險杠線束上。

  • 后保險杠線束:后保險杠線束與車身線束相連,中/后雷達、后霧燈等連接在后保險杠線束上。

  • 車門線束: 每一扇門擁有一根車門線束。車門線束與車身線束相連,揚聲器、后視鏡、玻璃升降開關、玻璃升級電機、門鎖總成、門把手開關等連接在車門線束上。

  • 頂棚線束:頂棚線束與儀表線束相連,行車記錄儀、頂燈、ADAS 前攝像頭、天窗、雨量傳感器等連接在頂棚線束上。

  • 空調線束:空調使用的線束,通過連接儀表線束接入整車線束中。蒸發溫度傳感器、內外循環電機、模式電機、混合風機等連接在空調線束上。
  • 座椅線束:布置在座椅區域,用于調節座椅高度、加熱等。通過連接車身線束接入整車線束中。座椅加熱控制器、座椅加熱絲、座椅高度調節電機、座椅前后調節電機、座椅靠背調節電機等連接在座椅線束上。

整車線束的參考位置如下。

image-20211111150913360

插線端子在車聯網安全上的思考

在黑盒的情況下,對零部件的物理分析往往是插線端子開始的,這第一步就是找到電源針腳,找到供電針腳上電后才開始了正式的研究工作。梳理出各個 ECU 常見的插線端子,有助于簡化分析流程,將精力投入到更為深入的漏洞挖掘工作之中。

此外,在插線端子上也可以找到一些脆弱的攻擊點。例如,DVR 行車記錄儀,從插線端子來看 DVR 接入到了車身域 CAN 網絡中。那么就可以從行車記錄儀入手,拿下 DVR 控制權后,進入到車身域中,而 BCM 也正好處于同一網絡之中,BCM 又控制著車門、車燈。這一條控車的邏輯鏈路,當下沒有被大家廣泛關注,重點人在云端、TBOX 或 IVI上。從行車記錄儀控車的這條路,星輿實驗室正在積極探索之中,我們通過無接觸的方式利用未知漏洞已經拿到某車行車記錄儀的系統權限。

在研究插線端子中,我們還有其他的一些想法。歡迎大家和我們一起研究、探討車聯網安全,共同守護出行安全。

參考


Paper 本文由 Seebug Paper 發布,如需轉載請注明來源。本文地址:http://www.bjnorthway.com/1757/