作者 |張詔景 上海控安可信軟件創新研究院工控網絡安全組
來源 |鑒源實驗室
社群 |添加微信號“TICPShanghai”加入“上??匕?1fusa安全社區”
01
入侵檢測系統背景
智能網聯汽車不再是一個孤立的嵌入式系統了,信息安全問題越來越被重視。國內外發布了多項標準法規,來規范汽車網絡安全的發展。其中有不少法規對車輛網絡安全檢測提出要求,如表1。
表1 車輛網絡安全監控法規要求
入侵檢測系統(IDS)是按照一定的安全策略對網絡、系統及其運行狀態進行監控,并試圖發現各種攻擊企圖、攻擊行為或攻擊結果,以保證網絡系統的機密性、完整性和可用性。當存在惡意活動的軟件或車載網絡被篡改、注入時,汽車入侵檢測系統可以通過分析車內流量或系統狀態進行攻擊識別,并發出安全警報。
在汽車上,根據檢測的對象,可以將入侵檢測系統分成兩類,包括網絡入侵檢測系統和主機入侵檢測系統。
網絡入侵檢測系統可以對包括CAN總線、車載以太網、WIFI、藍牙數據等車載網絡進行檢測。目前已有很多基于規則的和基于AI方法的研究。如【1】設計了規則和AI混合的多層SOME/IP入侵檢測方法,基于規則的模塊用于檢測SOME/IP報頭、SOME/IP-SD消息、消息間隔和通信過程,利用AI檢測SOME/IP的有效負載??紤]到實際部署成本,在車載控制器中往往部署基于規則的入侵檢測系統,利用專家知識、車載網絡數據庫等建立規則庫,進行檢測。
基于主機的入侵檢測系統則對控制器的操作系統進行安全監控。隨著汽車智能網聯化,車載控制器不再僅由MCU組成,Linux、Android、QNX頻繁地在各類域控制器中出現。SOC在給汽車帶來強大功能的同時,也成為對汽車的一條重要攻擊路徑。主機入侵檢測系統可對操作系統進行資源監控、文件監控、病毒掃描等。
在檢測識別到車內的異常攻擊行為后,通過生成安全日志,并將安全日志上傳到汽車安全運營平臺(VSOC),是一種有效的攻擊行為追溯,監控智能網聯汽車安全狀態手段。
02
AUTOSAR入侵檢測系統架構
汽車開放系統架構(AUTomotive Open System Architecture)是一家致力于制定汽車電子軟件標準的聯盟。AUTOSAR是由全球汽車制造商、部件供應商及其他電子、半導體和軟件系統公司聯合建立,各成員保持開發合作伙伴關系。自2003年起,各伙伴公司攜手合作,致力于為汽車工業開發一個開放的、標準化的軟件架構。AUTOSAR這個架構有利于車輛電子系統軟件的交換與更新,并為高效管理愈來愈復雜的車輛電子、軟件系統提供了一個基礎。此外,AUTOSAR在確保產品及服務質量的同時,提高了成本效率。
AUTOSAR對汽車入侵檢測系統的架構,如圖1。整個車載入侵檢測系統主要包括了安全探針、管理模塊(IdsM)、安全事件存儲(Sem)、報告模塊(IdsR)。
圖1 分布式車載IDS架構【2】
(1)安全探針
安全探針是檢測網絡流量、系統事件中潛在網絡威脅的模塊。當檢測到異常后向管理模塊發送安全事件(Security Events,SEv)。常見安全探針包括CAN入侵檢測系統、以太網入侵檢測系統、主機入侵檢測系統等。
(2)管理系統
當管理模塊接收到SEv后,如圖2,依次經過攔截過濾器(Blockers)、采樣過濾器(Sampling)、聚合過濾器(Aggregation)以及速率限制過濾器(Rate Limitation),生成合格的安全事件(Qualified Security Events, QSEv)。管理模塊將 QSEv 發送到入侵檢測報告模塊,并將其存儲在安全事件存儲器“SEM”中。
圖2 管理模塊過濾鏈【2】
攔截過濾器根據上傳模式及當前狀態對事件進行過濾;采樣過濾器允許每個事件的第N條通過;聚合過濾器將配置時間內的所有SEv聚合成一個,并對聚合后的事件數量進行閾值過濾;速率限制過濾器根據配置時間間隔內的SEv數量及字節數進行過濾。
(3)報告模塊
IdsR將QSEv發送給VSOC。IdsR與IdsM之間的安全事件報文如圖3。它的最小長度為 8 個字節(對于事件幀),包括了協議版本、協議頭、IdsM實例ID、探針實例ID、事件ID、事件數量、保留字段。此外,報文包括3個可選字段:時間戳、上下文數據及簽名。
圖3 安全事件報文【3】
03
入侵檢測系統測試方法
對于入侵檢測系統的測試,可分為兩個階段:
· 入侵檢測系統功能測試,即根據需求對開發的軟件進行功能測試,檢驗軟件是否根據輸入返回預期結果。
· 滲透測試,模擬常見的網絡攻擊,來驗證入侵檢測系統對網絡攻擊的檢測能力。
在滲透測試階段,讓測試人員進行人工測試是困難的,首先滲透測試對測試人員的網絡安全知識有著一定的門檻,其次滲透測試過程涉及的攻擊數據生成、測試結果判斷等步驟十分繁瑣復雜。為了提高測試效率,在測試過程中需要利用滲透測試工具搭建自動化入侵檢測系統測試環境,來提高入侵檢測功能的測試。因此,針對網絡入侵檢測系統的滲透測試,設計測試流程,如圖4:
(1)生成攻擊報文。
(2)向入侵檢測系統被測件發送攻擊報文,并監聽是否收到QSEv。
(3)入侵檢測系統對攻擊行為進行實時檢測,若檢測到異常,則向測試設備發送QSEv。
(4)若滲透測試工具收到了正確的QSEv,則測試通過,否則測試失敗。
圖4 入侵檢測系統測試流程
在測試流程中,攻擊數據包的生成是其中至關重要的部分。【4】中總結了一部分數據包生成工具,如圖5,但是這些工具幾乎沒有汽車方面的支持,例如缺少SOME/IP,UDS,DoIP協議的測試功能,因此不能滿足車載入侵檢測系統的測試需求。
圖5 數據包生成工具及能力【4】
BlitzFuzz(點擊查看詳情)作為一款專門針對工控網絡協議的滲透模糊測試工具,支持CAN、CAN、UDS、SOME/IP、DoIP等汽車常用協議的報文仿真、解析功能,提供相關協議的滲透測試用例包、合規測試用例包以及模糊測試功能。同時提供了用戶自定義編寫測試用例,能夠更加靈活地滿足不同的滲透測試需求。為入侵檢測系統功能的自動化測試提供了便利,如圖6。
圖6 BlitzFuzz滲透測試界面
如圖7,利用BlitzFuzz對以太網入侵檢測被測件進行測試。首先將將被測件通過網線連接BlitzFuzz工具。測試人員在BlitzFuzz前端界面編寫入侵檢測功能的自定義測試用例,包括調用工具提供的TCP端口掃描攻擊API發送端口掃描報文,編寫以太網接收回調函數,用于判斷被測件發送的QSEv情況。編寫完成后選擇測試用例并運行,運行結束后即可在界面查看測試報告。
圖7 BlitzFuzz入侵檢測測試示意圖
主要參考文獻:
[1] Luo, F.; Yang, Z.; Zhang, Z.; Wang, Z.; Wang, B.; Wu, M. A Multi-Layer Intrusion Detection System for SOME/IP-Based In-Vehicle Network. Sensors 2023, 23, 4376.
https://doi.org/10.3390/s23094376
[2] Requirements on Intrusion Detection System AUTOSAR FO R23-11.
[3] Specification of Intrusion Detection System Protocol AUTOSAR FO R23-11.
[4] Corbett C, Basic T, Lukaseder T, et al. A testing framework architecture for automotive intrusion detection systems[J]. 2017.
審核編輯 黃宇
-
測試
+關注
關注
8文章
5174瀏覽量
126488 -
嵌入式系統
+關注
關注
41文章
3570瀏覽量
129251 -
網絡安全
+關注
關注
10文章
3132瀏覽量
59612 -
入侵檢測
+關注
關注
0文章
57瀏覽量
14093 -
入侵檢測系統
+關注
關注
0文章
14瀏覽量
7142
發布評論請先 登錄
相關推薦
評論