当今世界,在互联网多模式发展和工业智能化趋势的背景下,传统制造业逐渐向“智能制造”转型升级。因此,汽车产业在移动互联、大数据及云计算等技术的推动下向智能化、网联化发展的趋势愈发明显。当前,CAN总线作为汽车行业专用的总线,已暴露出了越来越多的车联网信息安全问题,无法适应汽车的发展趋势。
对此,传统的CAN总线引入一套通信认证的方法,即SecOC(SecureOnboardCommunication)。SecOC作为新一代车内网络安全总线方案,美亚网安已将该技术集成在车联网信息安全自动化检测试验设备中,通过在国内主机厂进行SecOC总线验证性测试,积累了测试用例,并取得了良好的效果。
CAN通信协议在诞生之初,核心设计理念就是低成本和高稳定性。虽然它也有提及高通信速率的需求,但是在当时技术人员眼里的高速率,也不过是125Kbps~1Mbps,这保守的速度区间放在当今,已经无法适应汽车的发展趋势。
在智能化、网联化这个大背景下,汽车开放性也逐渐加大,CAN总线在设计之初本身就没有考虑过信息安全问题,明文传输、报文广播传输、极少网络分段、无内容校验等特性,让CAN总线的劫持、篡改、伪造、重放等攻击变得异常容易,攻击者可以轻松通过这些攻击方式实现对车辆的控制。这也是2015年CharlieMiller和ChrisValasek通过某种远程方法连上JEEP大切诺基的车内网后,能够随意地控制车辆运行的根本原因所在。
因此提升CAN总线的安全性以便适应智能网联汽车对信息安全的需求,博世在AUTOSAR中补充了SecureOnboardCommunication(SecOC)组件,为传统的CAN总线引入一套通信认证的方法。
虽然在SecOC总线推出之前,汽车开发的技术人员为了提升通信的稳定性,尝试在标准CAN报文的负载中加入CRC或做一个报文顺序计数器,前者能够防止伪造报文,后者通常用来防御重放攻击,但是对于恶意入侵来说,这些技术手段仍然太过脆弱。
SecOC是在AUTOSAR软件包中添加的信息安全组件,增加了加解密运算、秘钥管理、新鲜值管理和分发等一系列功能和新要求。SecOC占用CAN报文载荷中的若干字节,在其中填入身份认证和新鲜值字段。于是CAN总线通信变为如下过程:
(1)报文的原始数据切片,加上秘钥、新鲜值,使用AES128生成身份认证信息;
(2)将身份认证信息的切片和新鲜值切片,插入CAN报文载荷的指定字段中,CAN协议可以是传统CAN,也可以是CAN-FD。其中新鲜值切片长度可以为0,但是身份认证信息切片是必须存在的;
(3)接收方首先验证MAC,然后根据同步到的新鲜值,进行新鲜值验证,全部通过后才会是真正使用数据载荷,否则则丢弃报文,同时记录一条错误信息,存储在NVRAM中。
从上面的通信过程可以看出,SecOC的核心思想在于通信认证,但不涉及到报文加密,在应用SecOC协议后,虽然CAN总线通信依然是明文通信,但是攻击者伪造报文的难度已经被大大提升了,实施SecOC后,仍然会占用一定量的CAN报文载荷,从而导致总线负载率提升、通信实时性下降,甚至正常功能影响等问题。因此在实际应用中,在CAN报文载荷中尽量减少MAC和新鲜值占用就变得尤为重要。
目前国外主机厂普遍都会搭载SecOC或同等水平的车内总线信息安全技术方案。国内主机厂相对来说比较保守,大部分仍然处于PoC阶段,不过相信不久的将来,SecOC总线也将会在国内主机厂中得到应用。
注释:
当前,美亚网安在汽车信息安全与汽车取证方面已经有了深度的研究,全面理解汽车电子电气架构和总线协议。未来,北京美亚网安将持续性的输出车联网信息安全技术的能力,加强同国内外主机厂的合作,提升整个汽车行业的信息安全能力,为整个汽车行业做出自己的贡献。