www.366.net

安卓版下载

智能网联汽车CAN总线信息安全测试方法

2021-10-13 23:09向民奇韦天文邓宇刘书帆
时代汽车 2021年20期
关键词:CAN总线信息安全

向民奇 韦天文 邓宇 刘书帆

摘 要:目前CAN总线仍是智能网联汽车车内通信的主要方式,直接与车内各ECU控制模块相连组成整个车内网,由于CAN总线通信为广播式、缺乏报文数据保密、缺乏报文数据来源验证以及缺乏DoS攻击的保护特性。若车辆遭受网络入侵渗透到车内CAN总线网络时各个ECU模块将面临严重的威胁,严重将引发车辆安全事故。如何有效规避车辆信息安全问题,则需要加强对车辆的信息安全测试,及时发现存在的安全问题并进行修复。为此本文总结提出了针对智能网联汽车CAN总线信息安全测试的方法。主要内容为:1、应用报文的模糊测试、重放攻击测试、DoS攻击测试;2、诊断报文的测试安全分析。

关键词:智能网联汽车 信息安全 CAN总线 OBD接口 安全测试

Can Bus Cyber Security Test Method of Intelligent Connected Vehicle

Xiang Minqi Wei Tianwen Deng Yu Liu Shufan

Abstract:At present, can bus is still the main way of in vehicle communication of intelligent connected vehicle, and it is directly connected with each ECU control module in the vehicle to form the whole in vehicle network. Can bus communication is broadcast type, lack of message data confidentiality, lack of message data source verification and lack of DoS attack protection characteristics. If the vehicle suffers from network intrusion and penetrates the CAN bus network inside the vehicle, each ECU module will face a serious threat, which will lead to serious vehicle safety accidents. To effectively avoid the vehicle cyber security problems, we need to strengthen the vehicle cyber security testing, timely find the existing security problems and repair. Therefore, this paper summarizes and puts forward the testing method of CAN bus cyber security for intelligent connected vehicles. The main contents are as follows: 1. Fuzzy test of application message, replay attack test, DoS attack test; 2. Test security analysis of diagnostic message.

Key words:intelligent connected vehicle, cyber security, can bus, OBD interface, security testing

1 引言

今年來汽车网络安全事件频发[1-2]。车辆CAN总线作为整个车联网链路上最底层的通讯网络,直接参与控制车辆各传感器、ECU以及实行器,其可控性直接影响整车安全。车联网与传统网络被攻击所造成的结果有明显的区别,车联网被成功攻破后不仅可能是后端TSP服务平台的不可用、车厂或者用户的个人隐私敏感信息的泄露,还可能直接引发车辆安全事故,造成社会危害。因此对于智能网联汽车即使在传统的通信网络被攻破后,车内CAN总线仍需自身具备安全防御能力。为此国内外学者特意针对汽车网络安全模糊测试做了研究[3-4]。本文的主要内容是针对智能网联汽车CAN总线提出了一套完整的测试项目、测试方法及要求。

2 应用报文信息安全测试

2.1 模糊测试

在对车辆CAN总线应用报文进行模糊测试时,通过OBD口向CAN总线应用报文CAN ID区间内的所有CAN ID(无论开发定义中是否真实存在此CAN ID)依次发送随机生成的报文数据帧或者其他不合法的报文数据帧,观察车辆异常状态。对于模糊测试可分为CAN总线通信工具可监听类报文和不可监听类报文进行测试。其中可监听类报文可以在车辆上电时对车辆的各ECU实行器进行动作,在报文监听面板显示出的CAN ID即是可监听类报文。

对于可监听类报文的模糊测试重点从以下方面进行:1)报文数据帧内容变异;2)报文周期变异;3)报文字节数变异;4)以上3方面的相互组合。对于不可监听类报文进行模糊测试是对应用报文CAN ID区间内没监听到的CAN ID构造小于等于8字节的周期性随机数据帧内容的发送类报文,建议对每个不可监听类的CAN ID重复多个报文周期和多个报文字节的随机数据帧内容测试。

2.2 重放攻击

对于车辆CAN总线应用报文的重放攻击,利用CAN总线通信工具录制车辆目标动作的数据,然后回放至CAN总线。测试步骤为:1)报文录制——测试人员对车辆实行相应的操作,利用CAN总线通信工具录制测试操作过程中的所有报文;2)报文回放——测试人员将车辆恢复至操作前状态,利用CAN总线通信工具将录制的报文进行回放至CAN 网络;3) 观察车辆异常状态。

2.3 DoS攻击

对于车辆CAN总线应用报文信号的DoS攻击,利用CAN总线通信工具发送大量优先级高的随机报文以占尽CAN总线资源。测试步骤为:1)利用CAN总线通信工具向OBD口编辑多条优先级高的发送类随机报文并发送;2)观察车辆异常状态。建议发送报文的ID在0x001-0x030之间,报文的数量建议在20条以上,发送的报文周期建议在20ms以下。

3 诊断报文信息安全测试

3.1 诊断ID信息收集

使用功能寻址查看总线上支撑诊断服务ECU的诊断ID。通过发送功能寻址报文后查看各ECU回复的报文即可知总线上存在的支撑诊断ECU的数量和具体的诊断ID。测试步骤为:1)利用CAN总线通信工具向OBD接口发送功能寻址报文;2)查看各ECU回复报文时的诊断ID,推断出发送报文时的诊断ID;3)记录所有发送报文时的诊断ID,进行后续的诊断服务信息安全测试。

3.2 诊断服务安全测试

3.2.1 0x10服务测试

10服务为诊断会话控制服务,用于将ECU 切换到不同诊断会话状态,其有3个子服务:01子服务(默认会话模式),02子服务(编程会话模式),03子服务(扩展会话模式)。当ECU处于编程会话模式时ECU会停止工作。因此从信息安全角度分析,若各ECU进入编程会话模式的前置条件设置不合理,当车辆遭遇非法入侵时可以造成对ECU进行随意的固件刷写或恶意进入此会话模式使ECU停止工作,存在安全隐患。测试步骤为:1)更改会话模式为编程会话模式;2)观察对应ECU模块是否停止工作。

3.2.2 0x11服务测试

11服务为复位服务,用于对ECU实行复位操作,可导致ECU软硬件重启,对于11服务所有子服务重点关注01硬复位子服务。因此从信息安全角度分析,若11服务前置条件设置不合理,当车辆遭遇非法入侵时则可能导致整车多个ECU重启,存在安全隐患。测试步骤为:1)利用CAN总线通信工具对4.1中存在的ECU进行诊断的11服务,发送ECU复位报文;2)观察对应ECU模块在步骤2中是否重启。

3.2.3 0x27服务测试

27服务为安全访问服务,用于提供了一种保护机制,该机制用来保护因保密、排放或安全等原因而受到访问限制的诊断服务,加密策略采用种子和密钥相关联的方法。若ECU的27服务算法简单或者无相应的访问限制策略则很容易进入高级权限状态,当车辆遭遇非法入侵时,进而可对ECU进行控制等,存在安全隐患。测试步骤为:1)利用CAN总线通信工具对4.1中存在的ECU进行诊断的27服务,即对4.1中存在的ECU的诊断ID发送种子请求报文;2)待收到对应ECU回复的种子报文后,发送错误的密钥认证报文;3)对流程1和2进行重复多次操作,观察多次返回的种子是否变化,以及多次的错误密钥访问后是否存在相应的访问限制策略;

3.2.4 0x28服务测试

28服务为通信控制服务,用于对ECU开启或关闭某一类特定报文(例如应用通信报文)的发送/或接收。因此从信息安全角度分析,若28服务前置条件设置不合理,当车辆遭遇非法入侵时则可能导致整车多个ECU不能收发报文,存在安全隐患。测试步骤为:1)利用CAN总线通信工具对4.1中存在的ECU进行诊断28服务的各子服务;2)观察进行服务前是否需要经过27安全访问服务。

3.2.5 0x2E服务测试

2E服务为通过标识符写数据服务,允许将相关信息写入到数据标识符规定的ECU内部位置。因此从信息安全角度分析,若2E服务前置条件设置不合理,当车辆遭遇非法入侵时则可能导致整车多个ECU配置信息数据、应用程序数据等被篡改,存在安全隐患。测试步骤为:1)利用CAN总线通信工具对4.1中存在的ECU进行诊断的2E服务;2)观察进行2E服务前是否需要经过27安全访问服务。

3.2.6 0x2F服务测试

2F服务为通过标识符进行输入输出控制服务,通过ECU的标识符控制输入输出服务来替代输入一个信号值、启动ECU内部功能以及/或者控制一个电子系统的输出(实行器)。因此从信息安全角度分析,若2F服务前置条件设置不合理,当车辆遭遇非法入侵时则可能导致整车多个ECU输入输出不受控制,存在安全隐患。测试步骤为: 1)利用CAN总线通信工具对4.1中存在的ECU进行诊断的2F服务;2)观察进行2F服务前是否需要经过27安全访问服务。

3.2.7 0x31服务测试

31服务为例程控制,用于调用ECU内置的某些操作序列的接口,厂家可以根据自己的需要为ECU定义各种内部操作。因此从信息安全角度分析,若31服务前置条件设置不合理,当车辆遭遇非法入侵时则可能导致整车多个ECU触发相关程序的运行,导致如标定的原始数据、零位学习数据等被篡改,存在安全隐患。测试步骤为:1)利用CAN总线通信工具对4.1中存在的ECU进行诊断的31服务;2)观察进行31服务前是否需要经过27安全访问服务。

3.2.8 0x34服务测试

34服务为请求下载服务,该服务用于ECU请求服务端启动下载数据,以完成ECU程序的升级。因此从信息安全角度分析,若34服务前置条件设置不合理,当车辆遭遇非法入侵时则可能导致整车多个ECU触发数据下载请求从而下载非法数据包程序造成ECU升级非法程序,存在安全隐患。测试步骤为:1)利用CAN总线通信工具对4.1中存在的ECU进行诊断的34服务;2)观察进行34服务前是否需要经过27安全訪问服务。

4 评价标准

对于CAN总线应用报文的信息安全测试,在模糊测试、重放攻击、DoS攻击的几种测试方法中,若会干扰到车辆ECU的正常运行,其中涉及影响车辆驾驶安全相关的测试点,则需列为高危漏洞后续分析改进。对于CAN总线诊断报文的信息安全测试,重点测试对象是对权限较高的或者影响比较严重的诊断服务进行安全测试,4.2中对8个较为重要的诊断服务进行了测试过程的描述,主要测试的范围和内容是这些能对ECU可以进行控制和刷写的诊断服务,判断检验在进行此类诊断服务时是否需经过安全访问或者其他访问控制的策略。

参考文献:

[1]Miller C, Valasek C. A survey of remote automotive attack surfaces[J]. black hat USA .2014.

[2]Woo S,Jo H J,Lee D H . A Practical Wireless Attack on the Connected Car and Security? Protocol? for? In-Vehicle? CAN[J]. IEEE Transactions on Intelligent,2014,16 (2):1-14.

[3]徐江珮, 王晋, 刘畅,等. 电动汽车充电桩CAN总线协议的安全检测[J]. 山东大学学报(理学版), 2020, v.55(05):99-108.

[4]彭晶. 网联汽车CAN总线信息安全与检测技术研究[D].天津理工大学,2019.

猜你喜欢
CAN总线信息安全
基于模糊综合评价法的信息安全风险评估模型
基于模糊综合评价法的信息安全风险评估模型
信息安全的理论逻辑
基于CAN总线的故障注入平台设计
基于CAN总线的通信设计与应用
基于MCP2515的CAN总线通信单元设计
2014第十五届中国信息安全大会奖项
信息安全管理
XML 地图 | Sitemap 地图