20

徽州骆驼 · 5月10日

汽车信息安全入门总结(附R155\R156\SAE J3061\ISO-SAE21434标准下载)

目录

1.汽车信息安全应关注什么

2.法规先行

3.汽车信息安全技术

4.密码学基础知识

5.小结

1.汽车信息安全应关注什么

汽车信息安全从2015年开始被引起重视发展至今已近10年时间,虽然有很多高屋建瓴的白皮书、指导标准可以指导我们从宏观了解汽车信息安全这个新兴行业,但真正实际需求落实到我们一线开发人员身上,总归感觉缺少点最底层的逻辑闭环。

举个简单例子,为什么ECU控制器上的CAN报文有些需要SecOC,而其他报文又不需要?这个需求的中间分析过程是怎样的?

我们传统控制器基础软件开发人员在转型汽车信息安全时需要什么样的知识体系才能胜任。

今天就来聊聊个人粗浅的看法。

与汽车传统的主被动功能安全相比,汽车信息安全问题一旦出现可能会带来巨大影响,不仅对驾驶员、乘客的人身安全、隐私安全和财产安全造成影响,还会给车企或者供应商带来巨大经济损失,更有甚者影响国家安全(参考Tesla)。

因此,汽车信息安全需要关注如下内容:

国内外针对汽车信息安全的法律法规、政策、标准和建议
汽车信息安全技术
密码学基础知识

2.法规先行

任何事物的出现都背景和根源,汽车信息安全也不例外。

随着汽车信息安全相关强标的逐步推行,国内外车企对信息安全方向的人才的需求急剧增加,但我想应该很少有汽车行业的一线软件开发人员去完整地了解这些标准。

故列举一些比较关键的标准,供大家参考。

  • SAE J3061(Cybersecurity Guidebook for Cyber-Physical Vehicle Systems):该标准应该算是汽车信息安全入门必读,它结合汽车全生命周期,不仅提供了汽车网络安全的流程框架,还提供了一些评估网络安全威胁的方法,目的是为了把网络安全开发和整车开发关联。
    image.png
  • ISO/SAE 21434(Road vehicles - Cybersecurity engineering):参考J3061制定并做了优化,它从公司层级、项目层级、分布式网络开发活动、持续式网络安全事件管理提出了人员分配的需求,从产品概念阶段、开发阶段、运行阶段等明确了关于流程的要求。同时,借鉴J3061提出了一种TARA的方法论,用于安全目标制定、漏洞定位和定级。
    image.png
  • WP29 R155:全球第一个汽车信息安全的强制法规,要求车辆在1958协议国家范围内上市销售的前提条件是获得两个部分的合规认证:网络安全管理体系认证 CSMS和车辆网络安全型式认证 VTA。
    image.png
  • WP29 R156: 该法规对OEM的要求包含了对合规性认证申请的说明,对车型认证的要求、软件升级管理的合规要求等等。

3.汽车信息安全技术

车联网的迅猛发展使得汽车和驾乘人员充分暴露在黑客的攻击范围内,故汽车信息安全保护的不仅是车,还有更重要的是驾乘人员,所以理清汽车信息安全技术关注的范畴是关键所在。

国际上有很多关于汽车信息安全的车辆模型,如EVITA车载网络参考架构、日本IPA Car信息安全模型、PRESERVE的V2X安全通信系统,它们模型基础概念相似,均是从云、管、端三个方面提出汽车信息安全相关需求。

所以我的研究路径是这样:首先了解每个方向上的信息安全概念和基本应用,然后就自己手头业务锚定一个方向深入。

以车端为例,我习惯以手上开发的ECU为基础,了解当前件在不同OEM的整车电子电气架构中扮演什么角色,总结长城Geep3.0、大众E3、华为域控架构、吉利浩瀚SEA架构等等,本质还是与Bosch提出的域控概念类似,主要分为智驾域、中央网关、动力域、车身域、信息娱乐域控,如下:

image.png

在了解上述域控及其下挂子节点的功能feature后,我们可以根据OEM的通信矩阵来识别出带SecOC属性的报文,并根据信号定义摸索出一些资产定义的共性,同时也可以对整车的功能互联有一定的了解。

有了这个基本概念后,研究难度陡升。

  • ECU安全防护技术:我是以蓝方思维来思考信息安全这件事的,因此会想构建起一些底层框架。这部分了解了常见的安全攻击手段,例如非授权访问、恶意软件篡改、重放攻击、溢出攻击等等,针对这些手段,去尝试了解和梳理ECU的安全系统架构。从硬件开始,熟悉和调研市面常见的HSM技术,再往上内核操作系统针对上述攻击的安全防护技术,例如防火墙、系统加固、IDS等等,最后再衍生到AP和CP AUTOSAR中的信息安全机制。借用AUTOSEMO的一张图,沿着这个思路,应该可以建立起很好的纵深防御思路。

image.png

  • 车内安全通信,目前来说车内通信以CAN\CANFD、车载以太网为主,LIN、FlexRay为辅,这些总线通信的信息安全一般通过身份认证、数据完整性、数据加密等技术来保证,例如基于CAN的SecOC技术、车内以太网通信使用TLS。除此之外,现目前智能网联汽车还推出了近程无线通信技术,例如蓝牙、WIFI等,这一系列车载网络技术是需要了解,但做过的人都知道,就一个SecOC就得大半年功夫加上实车经验才能融会贯通;
  • 安全启动,这部分逻辑比较简单,就是运行应用程序前,必须有一个授信主体(例如HSM)来验证应用程序的数据完整性和真实性。主要争议点在于安全启动和OEM要求的启动时间的矛盾,所以建议对这部分内容进行深度TARA分析,并做相应的风险处置措施;
  • 安全升级,在智能网联汽车里,有具备自更新能力的智能ECU,也有传统车控ECU。因此需要有一个控制器作为整车OTA的主控设备,一般来讲可用TBOX也可以用中央网关,负责差分或者整包升级,而安全升级的信息安全尤为重要,故需要了解OEM升级包制作、服务器升级包管理、OTA主控设备数据完整性、机密性、身份认证等。从这个逻辑再深入到某ECU中的OTA企标,基本就知道自己在干啥。

image.png

除了上述技术外,还包括安全调试、安全监测、日志管理、安全存储等。这里没有涉猎,不列举了。

4.密码学基础知识

针对传统汽车人来说,密码学属于跨学科新知识,来了不可怕,重要的是掌握方法快速入门。

针对信息安全,掌握的就是基础知识,这里建议了解概念:

  • 对称算法、非对称算法、哈希函数的基本常识:
  • 对称算法:DES、AES、流密码、分组密码工作模式(cbc\ecb\cfb\ofb)
  • 非对称算法:数学难题、RSA、ECC、SM2、DH等,数字签名的方式;
  • 哈希函数:什么是哈希函数、什么是抗碰撞性、SHA2\3、HMAC等
  • 密钥管理基本常识:
    什么是数字证书;
    密钥槽位设计;
    密钥导入、密钥交换、密钥派生等标准的熟悉

这部分完全得靠自己去琢磨,不过好在我们有哔站这等学习利器,这里非常建议学习Dan Boneh的密码学讲稿,具体链接:

https://www.bilibili.com/video/BV1yx411T78i/?vd_source=74e0140f5de57bae80a97b0307c64609

5.小结

可以发现,关于汽车信息安全的涉及面太广了,从传统信息安全跨行进入汽车行业的大佬需要了解汽车相关基础知识,而传统ECU开发的工程师对传统信息安全晦涩的技术又有些难以下口,每一项都需要实操经验才能有所领悟,这也是目前市场上难以找到这种复合人才的原因。

在转型过程中,由于知识广度的要求,我经常对某些技术话题刨根问底,直到溯源成功,这也是我进度比较慢的原因,往往因为某一个点的卡滞忽略了整个面的成型。然而学习这东西最怕的就是东一榔头西一棒槌,所以总结下,理清思路,保持空杯,耐心修炼。

作者:快乐的肌肉
文章来源:汽车MCU软件设计

推荐阅读

更多汽车电子干货请关注汽车电子与软件专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。
推荐阅读
关注数
5634
内容数
343
汽车电子与软件行业的相关技术报道及解读。
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息