【笔记】车联网安全 -VSEC

车联网安全

全部内容来自Block Harbor

这里只是进行翻译并搬运学习记录,供大伙分享

内容以法律法规偏多并且繁琐,建议跳着看,重点关注协议内容

Intro to Automotive Cybersecurity 车联网安全简介

Take the Plunge 大胆尝试

欢迎并祝贺你迈出这一步!

本入门部分将对汽车网络安全进行一般介绍,并涵盖汽车行业基础知识。如果你之前没有网络安全方面的经验或知识,或者是汽车行业的新手,建议从这里开始。

第01课 海滩(从这里开始)

你得先穿过海滩才能跳进海里!

为什么要进行网络安全?

《海滩》将列出你需要了解的关于汽车行业的基本信息。在本模块结束时,您应该了解为什么网络安全对车辆及其乘客以及执行它的法规和标准至关重要。

机械刹车、电缆节流阀和齿轮齿条转向装置都是过去汽车的古老遗迹。

今天的汽车是数字化控制的,依靠数英里长的电线在100多个不同的电子控制模块之间传输信号。从简单的通信设备,如胎压监测系统(TPMS)到连接汽车与外部基础设施的复杂远程信息处理数据,汽车也越来越依赖无线和远程通信。

当你可以远程控制一台连接到汽车控制器上的计算机,让发动机全速前进时,会发生什么?天哪。

如果你还没有听说过(我怀疑),这是2015年发生的事情:

Hackers Remotely Kill a Jeep on a Highway | WIRED - YouTube

看完以上视频后,米勒和瓦拉塞克在安迪开车的时候接管了他的吉普车。他们用什么接口远程进入车里?

uConnect

uConnect

在车联网领域,uConnect 是由 Stellantis(前菲亚特克莱斯勒汽车,FCA) 开发的一套车载信息娱乐和通信系统。uConnect 提供集成的驾驶体验,包括多媒体娱乐、导航、通信和车辆控制功能。它被广泛应用于 Stellantis 旗下品牌的车辆中,如 Jeep、Chrysler、Dodge、Ram 和 Fiat 等。

业界反应

紧接着就是源源不断的“车被黑了!“头条新闻和汽车制造商不得不召回车辆来修复这些备受瞩目的漏洞/错误。

行业专业人士聚集在一起,开始制定标准方法来减少这些漏洞,政府工作组开始考虑执行法规。虽然少数公司积极主动,并在早期将安全纳入其核心业务战略,但大多数汽车行业直到2022年才会看到这些标准和法规生效,如果不遵守主要市场的新法规,产品将无法再销售。

ISO/SAE 21434

随着汽车行业对网络攻击的关注和“觉醒”,2016年,汽车工程师协会首次发布了汽车网络安全发展指南:SAE J3061。最终在2021年演变成正式的ISO/SAE 21434道路车辆网络安全工程出版物。该工程过程标准要求在所有车辆或部件开发阶段生产特定的活动和工作产品,而没有给出选择技术解决方案的指导。它没有功能安全标准ISO 26262那么具体,涵盖了不同的范围,包括后期生产/监控活动。

UNECE WP.29 R155

联合国欧洲经济委员会:世界车辆法规协调论坛(WP.29)是一套适用于50多个联合国成员国(完整名单)法律框架,包括欧盟和日本。由于这些法律在法律上是可执行的,它们加速了网络安全进程的采用,这是其他标准无法单独实现的。

法规155:网络安全和网络安全管理系统旨在强制在整个车辆生命周期中增加强制性网络安全活动。从2022年7月起,所有申请型式认证的新车,以及从2024年7月起,在成员国销售的所有生产的汽车(甚至是旧车型),都必须通过该标准。

尽管美国和加拿大尚未加入该法规,但各自的政府机构(NHTSA和加拿大交通部)正在努力制定类似的法规,这些法规可能会参考法规155并采用其一些做法。

以下哪一个动员了整个行业将网络安全添加到他们的产品中?

UNECE WP.29 R155

这对我们有什么影响?

如果您在汽车行业,无论是直接参与汽车ecu的开发,还是其他公司职能,如销售或采购,新的标准和法规都很可能会影响您的工作。

总结一下,如果你是:

领导层:

组织文化和报告结构必须到位,以管理网络安全责任和活动。对于所有与网络安全相关的事件,必须对人员、流程和明确的方向进行正式培训。

工程/工艺/质量层:

必须添加到现有开发工作负载中的大部分新流程和特性,例如,TARA、缓解开发、安全测试、漏洞管理等。参考ISO 21434的大部分内容。

IT部门:

围绕IT安全的需求增加,成为行业标准实践的一部分。此外,作为产品开发的一部分,供应链的所有方面之间通常需要安全的数据交换和秘密存储。IT安全部门通常是拥有开发此基础设施最相关专业知识的部门。

制造/服务/保修层:

必须添加或更新制造和服务设备,以提供/管理加密秘密、生产部件的唯一标识以及使用这些新技术的培训。这个过程必须安全地完成,并且现在经常是安全审计和评估的目标。

销售和采购:

参与销售和采购的人员应该了解客户/监管机构现在期望的网络安全合规性要求的成本,以及这些要求如何通过供应链向下传播。避免承诺太多,要求太少,而没有正确理解需要什么。

法律人员:

为了避免新法规和标准带来的法律后果,OEM和供应商之间的新合同和风险分担文件已经超出了产品销售和保修的范围。由于网络安全环境的不断变化,添加法律语言和长期漏洞管理合同通常作为SOW的一部分添加。处理这些条款的标准程序应该到位,并考虑到扩展支持,因为由于网络安全风险,现在可能需要在车辆的整个生命周期内强制进行软件更新。

我们将在“行业深度”一节中详细介绍。

OEM

OEMOriginal Equipment Manufacturer(原始设备制造商)的缩写,指的是那些设计、制造并销售最终产品的公司,通常是通过授权或合同方式将其产品提供给其他公司,后者将这些产品重新品牌化或者与其他组件组合形成最终产品。在汽车行业和其他行业中,OEM 是一个常见的术语。

将网络安全任务与领导工作角色相匹配。

密钥管理系统,公司网络安全政策
IT部门

安全开发工具,网络安全功能,渗透测试
工程/工艺/质量层

文化与组织结构
领导层

制造初始机密配置、连接服务工具
制造/服务/保修层

工作说明书,长期服务合同,软件托管
销售和采购&法律人员

第02课 法规和标准简介

UN R155 法规

治理和行业法规是提高汽车行业网络安全能力的推动力。第155号条例:网络安全和网络安全管理制度将于2021年1月生效,这是第一个适用的此类条例。成员国和地区已承诺采取不同的执法推广计划

联合国法规(UN R155)要求原始设备制造商建立网络安全管理系统(CSMS)。这是通过车辆类型批准申请流程执行的。

R155没有建立实施CSMS的确切方法,只是CSMS过程需要涵盖的活动类型,如威胁分析和风险评估、网络安全测试、漏洞管理等。另一方面,ISO/SAE 21434:2021于2021年8月正式发布,旨在填补这一空白。导言一章:“本文件可用于实施包括网络安全风险管理在内的网络安全管理体系。”

ISO/SAE 21434:2021“道路车辆网络安全工程”定义了一组特定的工作产品和要求,规定了统一的方法,以标准化建立CSMS的一致方法。这些产生工作产品的需求最终会给OEM以及一级和二级供应商的OEM供应链带来额外的工作

然而,UN R155还要求对车辆外部支持系统(如后端服务器)的威胁和风险进行管理,这些系统可能会影响车辆本身的安全性,而ISO/SAE 21434并未涵盖这一点

我们将在后面的章节中进一步讨论UN R155

什么时候车辆必须通过UN R155型式认证?
注:一个新的车辆类型或模型是一个全新的设计或重新设计的车辆。任何新车都包括在前一年设计基础上略有更新的车型。

Hint 提示

欧盟:适用于所有新车类型(车型)	日本:适用于OTA的新车型(型号)
2022年7月

欧盟:适用于所有生产的新车(包括旧车型)	日本:针对OTA生产的新车
2024年7月

日本:不含OTA的新车类型(车型)
2024年1月

日本:适用于无OTA生产的新车
2026年5月

标准:ISO/SAE 21434:2021

ISO和SAE于2021年8月联合发布了ISO/SAE 21434:道路车辆-网络安全工程。根据ISO网站对该标准的描述:

“本文件规定了网络安全风险管理的工程要求,涉及道路车辆电气和电子(E/E)系统的概念、产品开发、生产、操作、维护和退役,包括其组件和接口。"

21434是通过坚持良好的工程实践来管理和减少可预见的网络安全风险。这组活动在整个产品(车辆、E/E系统和组件)生命周期中执行。它在参与开发、制造和维护产品的所有各方之间共享(例如,车辆制造商、升级商和供应链)。

屏幕截图 2024-11-25 213354_译图

以下章节标题提供了ISO/SAE 21434中所涵盖主题的一般概念:
5 -全面网络安全管理
6 -项目相关网络安全管理
7 -分布式网络安全活动
8 -持续的网络安全活动
9 -概念
10 -产品开发
11 -网络安全验证
12 -生产
13 -操作和维护
14 -网络安全支持和退役的结束
15 -威胁分析和风险评估方法(塔拉)

虽然大多数经验丰富的原始设备制造商和ECU供应商都意识到了这一标准的发展,并在最终发布之前(使用草案副本)积极地开始实施一致性,但许多其他供应商都落后于此,并且争先恐后地追赶,特别是在招聘和培训人员以执行所需的工作产品方面。21434是人们讨论车辆网络安全时所参考的事实标准。

对这一标准的接受程度褒贬不一。大多数人都认为ISO/SAE 21434是朝着正确方向迈出的一步,尽管速度很慢(该标准于2016年提出并启动)。然而,正如标准描述中所述:

“这份文件没有规定与网络安全相关的具体技术或解决方案。”

这导致许多人质疑该标准的实用性,因为它没有像IETF收集互联网安全标准(例如,TLS1.3, PKCS等)那样提供切实的技术解决方案。然而,如前所述,它确实为新建立的联合国法规提供了部分解决方案。

有关ISO/SAE 21434的更多详细信息,请参阅“行业深度”和高级课程。

车辆进入批量生产后,ISO/SAE 21434流程仍然有效。
正确

第03课 了解汽车

汽车网络安全方面的许多重大挑战都源于汽车行业的独特特点。

例如,一辆典型的消费汽车有超过100个电子控制单元(嵌入式微控制器),通过多个车载总线网络连接。

本课将讨论各种类型的车载网络,它们的目的,以及是否/如何将它们视为网络安全保护。

电线的成本

各种各样的车辆网络和协议都有独特的用例,这取决于它们连接的模块的要求。在设计汽车网络架构时,安全性一直是事后考虑的问题。相反,汽车制造商专注于设计具有足够可靠性和数据速率的网络,以满足典型的用例,同时,最重要的是,降低成本

据报道,仅在2021年,丰田汽车的销量就超过了1000万辆。如果工程师们选择一种需要更多布线的协议,只留下1米多的电线,那么多余的长度将足以从纽约延伸到旧金山并返回。

在这种规模上,汽车制造商不仅仅是在省钱。选择简单的双线或单线总线协议,如CAN或LIN(请参阅“协议入门”以了解更多详细信息)可以比多线、点对点以太网等网络策略节省数百万美元。因此,汽车制造商需要考虑在实现安全目标的同时实施最有效的系统。其中一种方法是根据功能对网络进行分段。

CAN(Controller Area Network,控制器局域网)

CAN 总线是一种高速、可靠的多节点通信协议,广泛应用于汽车的核心系统。

LIN(Local Interconnect Network,本地互连网络)

LIN 总线是一种低速、低成本的通信协议,常用于非关键性任务的通信。

特性 CAN LIN
传输速率 高速(最高 1 Mbps,CAN FD 更快) 低速(1~20 kbps)
拓扑结构 分布式,支持多主节点 单主从节点
实时性 高,适合实时应用 较低,非关键任务
应用场景 动力系统、安全系统、车身控制等关键任务 舒适系统、车身电子、简单传感器网络
抗干扰能力 相对较弱
硬件成本
一辆现代汽车需要很多电线才能行驶。一辆现代汽车的电线大概总长度是多少?
1 mile - 1.6 km

image-20241126103740739

功能性考虑

汽车网络架构设计是一个比较复杂的课题。为了简单起见,让我们只考虑以下因素:

  • 及时性
  • 带宽
  • 可靠性

需要可靠信息和快速响应时间的车辆功能,如驾驶操作(动力系统、传动系统、转向系统),通常对安全至关重要,其中信息交换的延迟可能意味着车辆无法及时对危险情况做出反应。

不太关键的功能,如座椅调节、室内照明和音量控制,对反应时间和可靠性的要求不那么严格。因此,这些功能通常放在速度较慢且不太可靠的网络上。

在车辆网络上传输的一种相对较新的信息类型是多媒体数据,例如ADAS系统的摄像头或地图数据。如此大量的数据需要大量的带宽,如果数据的时序或可靠性存在问题,则安全特性可能成为安全问题。

实际的例子:

方向盘按钮

现代的方向盘有几个按钮、操纵杆和传感器。其中一些,如媒体控件、语音助手控件和信息娱乐交互按钮,只使用基本的交互。虽然它控制的系统可能很复杂,但按钮组控制器只需要告知车辆当前按下的按钮。在这种情况下,使用LIN这样的低速单线协议将按钮状态传递给更大的组合控制模块(如转向柱控制模块或车身控制模块)是有意义的。毕竟,这些系统不需要更多的带宽或超临界时序(指系统中某些任务或事件的时间约束必须被严格满足,否则会导致系统故障或严重后果)。

驾驶员监控系统

一些具有驾驶员辅助功能的新型车辆可能会整合眼球追踪摄像头等监控系统。这些可以传输视频数据,需要比按钮高得多的数据速率,并使用像汽车以太网这样的协议。以太网至少使用两根线,而不是LIN使用的单根线,并且会产生更多的实现成本。根据制造商决定如何将车辆联网,以太网电缆可能会在头顶控制台的模块上运行几英寸,在中央网关上运行几英尺,或者在驾驶员辅助系统位于车辆后部的情况下运行几米。

转向

猜测一下,在转向柱上的另一个功能,它需要传输的数据比按下按钮要多,但比视频馈送要少。转向角!数据很简单;车轮位置和速度可以在几个字节内传达。但这些数据需要更快更可靠的网络,如CAN或FlexRay,因为它的采样率和安全隐患。如果你曾经观看过低刷新率的视频或玩过卡顿的电子游戏,你就会知道这种体验有多粗糙,控制游戏有多困难。这是你在线控汽车上最不想面对的事情。

汽车转向系统,它是如何实现转向和助力转向的?

FlexRay

FlexRay 是一种专为汽车电子系统设计的高速、可靠的通信协议,主要用于满足现代汽车中复杂电子系统的需求。它广泛应用于车辆的实时控制系统,例如动力总成控制底盘控制高级驾驶辅助系统(ADAS)等,特别是在对高带宽和高可靠性要求的应用场景中。

根据您对车载网络的了解,您认为自动驾驶汽车的电子变速模块应该放在哪个网络上?该模块负责将用户选择的齿轮位置传递给变速器。
CAN/FlexRay

车辆网络布局

在讨论针对这些不同车辆网络的已知攻击之前,让我们先看看它们是如何组合在一起并为特定的车辆功能服务的。

查看下图,了解每个系统的需求是如何控制使用哪种类型的网络架构的。了解对车辆乘客安全至关重要的系统如何使用较为舒适或诊断而设计的系统更快的网络类型(如前所述,对安全至关重要的网络通常需要对变化和故障有更快的反应时间)。以太网(Ethernet)主要连接对带宽和连通性要求较高的模块。

image

ECU

ECU(Electronic Control Unit,电子控制单元) 是车联网和现代汽车的核心组件之一,是一种集成了硬件和软件的控制器,用于控制汽车的各种电子系统和功能。在汽车中,多个 ECU 相互协作,共同实现复杂的车辆功能,例如发动机控制、制动系统控制和信息娱乐系统等。

OBD-II

OBD-II(On-Board Diagnostics II,即车载诊断系统第二代)是车辆中的一个标准化诊断系统,用于监控和报告车辆各个子系统(如引擎、排放系统等)的运行状态和故障信息。OBD-II广泛用于现代汽车,是诊断和维护车辆的重要工具。

Celluar

蜂窝互联网是基于蜂窝网络(Cellular Network)的移动通信技术,利用无线电波和基站为用户提供高速数据传输和互联网接入服务。蜂窝互联网广泛用于智能手机、平板电脑、物联网设备、车联网(V2X)等领域,是现代移动通信和联网的重要组成部分。

远程信息处理系统和人体控制系统都由低速CAN总线与域控制器连接

安全系统和动力系统都由高速CAN总线与域控制器连接

让我们看一下避碰功能的组件。为了简化问题,我们假设摄像头检测到一个快速靠近的物体,紧急制动辅助系统(EBA)启动了刹车。正如您所看到的,这两个组件位于不同的网络上。除了通过图中的网关(Gateway)之外,它们不能直接相互通信。实际上,整个车辆中有许多网关ECU,称为域控制器。在这种情况下,ADAS中央控制器从所有ADAS相关传感器(如摄像头和雷达)获取信息,并向控制单元发送命令,以激活不同的驾驶功能,如转向和刹车。相机很可能永远不需要向EBA直接发送消息,反之亦然。

ADAS中央控制器

ADAS中央控制器(ADAS Central Controller)是一种高性能电子控制单元(ECU),用于集中管理和处理高级驾驶辅助系统(ADAS)的数据与功能。它是支持自动驾驶和高级辅助驾驶的核心硬件之一,通常具备强大的计算能力和高度集成化的架构。

网关对于在网络之间转换协议和执行逻辑处理是必不可少的。不过,它也可以作为一个巨大的潜在工具,帮助保护汽车网络免受攻击者的攻击。因为它有助于将网络彼此分开,所以某些攻击将需要更多的努力和网络布局知识,甚至可能需要多种协议的知识。但是,必须正确配置网关才能利用这一点。通过所有消息的网关将无法阻止任何攻击。

安全网关最常见的示例是将OBD-II诊断端口与车辆网络的其余部分分开。这可以防止访问关键的CAN流量,只需通过OBD-II端口插入,这很容易访问。另一种典型的设计是在连接或容易暴露的模块(如远程信息处理和信息娱乐模块)和高速CAN总线之间放置安全网关,在这些模块中执行安全关键和驾驶功能。这可以防止对更脆弱的模块的成功攻击,从而影响安全关键的车辆功能。

为了使车辆技术人员有效地识别问题,必须将诊断信息从易于访问的端口传播到每个ECU。这意味着网络网关必须能够通过可以读取、写入和闪存软件更新的流量类型,如果这些消息的发送者不是授权的技术人员,这可能会带来灾难。
如何防止未经授权的诊断信息通过车辆传播?

过滤网络流量的一种方法是在OBD端口和车辆其他模块之间添加一个安全网关。网关可以配置为只回复特定的诊断消息,这使得对信号进行逆向工程变得更加困难。网关还可以在使用不同协议或波特率的网络之间转换消息。

针对不同网络的攻击

接下来,让我们来看看一些针对当今车辆的成功攻击。

前面,我们讨论了uConnect被Jeep收购,然后给出了一个复杂的网络被捆绑在现代汽车的概述。

在Jeep黑客事件中,攻击者利用了蜂窝互联网连接中的一个开放端口,该端口允许在头部设备(信息娱乐系统)上执行未经身份验证的远程代码。这使得攻击者可以控制收音机的音量和空调。利用这一特性,攻击者可以通过重新编程另一个控制器来发送任意CAN信息,从而进一步访问头部单元以外的更深层次的功能,这些信息可以命令汽车的雨刷、转向灯、锁和驾驶功能。

在他们发现uConnect的弱点之前,黑客必须物理地连接到车辆的CAN总线。他们只能从内部控制汽车。同样值得注意的是,从这些早期的攻击中,Miller和Valasek能够对多辆车的种子密钥解锁算法进行逆向工程,因为安全设计不佳。

CAN总线的另一个接入点是OBD-II端口,这是一个联邦政府授权的连接器,用于收集排放测试中使用的信息。在网络安全成为一个问题之前开发的车辆上,这个端口将允许在CAN总线上直接读取和发送,而不需要网关。当时,保险公司敦促客户将专有的OBD-II加密狗插入他们的汽车中,这样保险公司就可以收集驾驶数据,以获得“良好驾驶”折扣。不幸的是,这些加密狗的设计非常糟糕,让车主可以欺骗保守的驾驶数据,攻击者可以远程接管并直接访问汽车的CAN网络。

加密狗

加密狗Dongle),是一种基于硬件的加密保护设备,广泛用于软件版权保护和数据安全领域。它通常是一个小型的外接设备,类似于 U 盘,插入计算机的 USB 接口或其他专用端口,通过硬件和软件结合的方式,限制未经授权的用户使用受保护的软件或访问加密数据。

已知的黑客攻击是通过各种外部连接,如蜂窝网络、蓝牙、Wi-Fi和媒体USB即插即用。为了证明这些黑客的严重性,研究人员瞄准了CAN网络,因为它承载了大多数安全关键的实时信息。其他车载网络也被仔细研究过,但它们通常携带的有价值的信息太少,或者为了达到预期的结果而操纵数据很复杂。

比如说,

  • LIN网络包含安全关键信息,但没有办法访问它们,除非通过物理拆卸或接管CAN上的LIN主控制器。
  • FlexRay是CAN的直接竞争对手,由于开发的复杂性和成本较高,采用率较低。虽然FlexRay上的数据不受加密手段的保护,但由于FlexRay总线严格的定时和拒绝与通信时间表不一致的消息,因此很难在FlexRay总线上进行欺骗。
  • 汽车以太网有大量的IT安全经验可供借鉴。由于车辆网络的确定性,本地连接可能受到MACsec的保护,而更复杂的网络可以利用IPsec。如果要通过internet连接向外发送流量,最常用的是TLS。大多数AE网络将启用某种形式的安全性,但由于缺乏经验,某些实现可能不安全配置。

简而言之:除了CAN(也许还有以太网?)之外,物理网络大多难以破解,或者不值得付出努力。除少数电动汽车外,OBD接入是由联邦法律规定的。任何其他总线都需要更多的技术和仪器来暴露电线,使其不太可能在车辆攻击中被访问。

新闻:最近,研究人员发现,劫持OEM(汽车原厂) Web服务基础设施要容易得多。通过使用不安全的web api和端点,他们可以访问经销商系统甚至获得工程功能,从而获得“授权”远程访问汽车和客户信息,在几个月内获得的控制权比汽车黑客多年所能做到的还要多。车辆到云端(V2C)安全措施对于防止V2C接口被误用并间接影响车辆本身的安全至关重要。

第04课 防御的第一步

动机:为什么要黑汽车?

车辆相关系统一直是黑客攻击的目标。尽管如此,这些问题最近已经成为汽车制造商和供应链其他部门争相寻求解决方案的一个大问题。了解汽车黑客的主要动机可能有助于解释这种缺乏关注的情况,并有助于确定修复的优先顺序。

在本节中,我们将讨论为什么人们会攻击汽车上的计算机系统,以及我们应该优先防御哪些类型的黑客攻击。

动机:好的方面

从历史上看,黑客攻击通常是由车主自己完成或要求的,他们希望从汽车中获得更多功能。有时这是为了避免在经销商处支付昂贵的服务费,有时是因为官方渠道甚至没有提供所需的服务。

这些类型的黑客包括:

  1. 性能调校爱好者和赛车手,他们希望调整自己的汽车,以获得更大的动力和扭矩,以及更好的操控性。这通常需要修改发动机和传动软件校准。
  2. 售后修改或新组件开发人员,其产品需要添加/删除/修改某些现有功能才能正常工作。例如,一个优质的售后扬声器系统将需要更换原来的头部单位,但新的部分仍然需要与其余的汽车的控制工作。
  3. 回收或购买二手部件的人,如加热座椅,并希望将这些部件安装到他们的汽车中。即使车辆已经具备了必要的硬件,通常情况下,还需要对软件进行配置(打开某个功能)以支持该功能。
  4. 独立商店和家庭机械师。随着汽车变得越来越复杂,诊断问题变得非常困难。标准化的(免费的)诊断工具是有限的,并且几乎没有提供关于非排放问题的信息。例如,如果你的ABS突然不工作,并显示警告灯,大多数诊断扫描仪不能提供太多有用的信息,因为ABS与排放无关。但是,经销商可以使用OEM诊断工具准确扫描出哪个传感器损坏并需要更换。这些工具和信息非常方便,可以为修车的人节省大量的时间、精力和成本。有些公司使用逆向工程的OEM工具,并使用提取的信息构建第三方工具。

由于这些修修补补的活动不是制造商官方支持的有利可图的商业案例,事实上,它们可能会影响他们的服务收入并减少新车销售。各种各样的爱好者开始通过“黑客攻击”汽车来做生意。这些活动可能不会被视为黑客攻击,但车辆的计算机系统确实被破坏和修改,以达到车主想要的结果。虽然这些活动本身可能并不有害,甚至没有受到鼓励,但车辆的设计需要考虑到这些攻击通道被恶意利用的可能性。

然而,如果车主解锁了他们没有付费的软件功能,或者如果公司认为这种行为存在风险,制造商可能会认为这种行为是未经授权的。

做一些研究:一项法律运动迫使汽车制造商允许公众访问关键的诊断信息,这意味着最终用户和独立机械师更容易获得汽车问题的诊断,从而减少了黑客攻击OEM工具的动机。这个运动叫什么?

National Right to Repair

请讲一个原因,为什么汽车制造商可能想要阻止汽车性能爱好者调校他们的汽车。

动机:坏的方面

与汽车黑客相关的恶意活动通常是为了经济利益,汽车盗窃是汽车领域最普遍的例子。不幸的是,除了引起注意之外,这些罪行也没有真正的动机。由于一些漏洞是可以利用的,只需花费很少的精力或了解车辆系统,因此盗窃背后的态度通常是“因为我可以”。

“Kia Boys”就是一个利用汽车点火系统弱点的例子。正如你在视频中看到的,他们不需要对车辆系统有复杂的了解就能完成攻击。进入门槛越低,车辆受到攻击的可能性就越大,而不考虑潜在的收益。

Kia Boys Documentary (A Story of Teenage Car Theft) - YouTube

虽然历史上大多数汽车盗窃案都是基于硬件的,但现代防盗功能,如防盗器,可以防止没有正确数字钥匙的汽车窃贼打开点火装置。汽车盗窃案已经演变成以钥匙扣或无钥匙系统为目标,通过传输钥匙的信号,根据距离远近来解锁汽车,解码无线传输以提取数字钥匙,并从制造商数据库中窃取钥匙。

另一种(潜在的)攻击者希望获得对整个车辆系统和基础设施的远程控制。这些攻击通过远程远程攻击渗透车辆网络,例如车辆的互联网连接和其他无线信号。然后,攻击者注入并覆盖由汽车处理的网络流量,就好像它是一个合法的信号一样。最有可能大规模实施此类攻击的威胁行为者将是国家层面的行为者,因为这是一个漫长而具有挑战性的过程,而且从这些类型的攻击中没有明显的个人利益。

从理论上讲,这对个人安全和经济构成了最大的风险,因为它可能会一次关闭车队。然而,除了资金充足的研究之外,还没有任何已知的此类攻击案例。

今后的考虑:

除了驾驶之外,汽车越来越多地参与到我们的日常生活中。与智能手机的集成以及为电影或汽车升级付费需要将用户的个人和财务信息存储在车载电脑上。这为不良行为者窃取用户信息用于信用卡或身份盗窃创造了新的动机。

对无钥匙进入系统的中继攻击在互联网上风靡一时。由于攻击的简单性质是放大车主的手机/钥匙扣/NFC卡的无线信号,让汽车误以为钥匙就在附近,所以汽车制造商没有简单的解决方案来防止这种情况,而不牺牲使无钥匙进入对买家如此有吸引力的便利性。
以下哪一项不是防止偷车贼使用中继攻击来偷你的车的方法?

将NFC钥匙卡保存在防RFID钱包中。
把钥匙放在金属盒子里。
把钥匙放在远离汽车的地方。	
在手机应用程序上启用PIN确认以解锁汽车。

根据定义,中继攻击不需要钥匙靠近汽车就能解锁。

承认问题

有一种常见的误解是,人们可以构建一个“不可攻破”的系统。吹嘘这些的人很快就会后悔自己的决定,因为他们自己的网站或产品通常很快就会被黑客攻击,然后漏洞就会被公布给所有人看。许多骄傲而有能力的人会把这样的要求视为一种挑战。

示例如下:

  • 一家第三方汽车警报器供应商在其网站上宣传产品“无法破解”,但安全研究人员发现,安装了汽车警报器后,汽车变得更不安全。来源:https://www.pentestpartners.com/security-blog/gone-in-six-seconds-exploiting-car-alarms/
  • McAfee的BitFi加密钱包因多次被黑客攻击而闻名,如果你点击“McAfee BitFi”,排名靠前的结果都是关于这种公关灾难的,坚持认为该产品“不可破解”,甚至拒绝支付成功证明击败保护的研究人员。巨大的负面宣传。来源:谷歌搜索。

教训1:不要声称某些东西是“不可攻破的”,除非你想让它尽快被黑,并且方法被公开泄露。相反,应该通过创建激励机制(即使是一点点也足够了)来鼓励负责任的披露,并尊重以无害的方式帮助您发现系统漏洞的研究社区。承认问题是解决问题的第一步。在设计安全性时,假设它会受到攻击和黑客攻击也同样重要。为了应对这种现实,您可以设计和实现特定的产品功能,使您能够快速地将补丁部署到您的产品中,例如Software Over the Air更新功能。此外,您应该设计一个纵深防御的安全策略,以创建一个整体健壮的安全态势。这种方法将有助于提高汽车制造商应对攻击的能力,并针对当前和未知未来影响其产品的漏洞部署持续修复程序。

我们的简单建议是:建立一个漏洞赏金计划,通过官方的、互惠的方式,利用研究社区来帮助捕获安全问题。

组建合适的团队

问:一旦发现问题,我们如何改善我们的安全态势?

安全状态:公司的安全状态是基于信息安全资源(例如,人员、硬件、软件、策略)和管理企业防御并对情况变化作出反应的能力的企业网络、信息和系统的安全状态。(nist sp 800-128)

对于汽车行业来说,其产品(车辆)的安全状况是评估其安全状况的一部分,因为车辆的安全状况不佳将影响OEM的声誉,并可能产生法律后果。

蓝队:公司通常会雇佣或签约网络安全专家来设计资产保护和开发基础设施,使他们能够快速做出反应,最大限度地减少黑客攻击造成的损害。负责保持良好的安全态势和防御攻击的团队被称为蓝队。

网络安全经理和工程师角色通常是蓝队的一部分,因为他们负责车辆、系统或组件级别的安全态势。Blue Team活动,如分析风险和漏洞、实施保护措施和持续监测活动,在Plunge Advanced跟踪中有详细介绍。

红队:为了验证蓝队工作的有效性,公司雇佣或签约网络安全专家,对其基础设施和产品进行各种类型的攻击。红队负责发现当前系统中蓝队可能遗漏的任何漏洞,并将其报告给公司。他们实际上是雇佣的黑客。

渗透测试是红队活动的一部分,除了其他测试方法之外。红队的活动,如渗透测试和模糊测试,将在dive Advanced跟踪中详细介绍。

当组织规模不够大,无法同时拥有两个团队时,蓝队必须与红队保持最新的知识,并了解可能针对受保护资产的潜在攻击类型。许多著名的黑客攻击之所以发生,是因为设计防御系统的个人可能并不完全理解攻击者的观点。

有趣的事实:当DVD的加密算法被引入时,人们已经知道,面对日益增长的计算机处理能力,所使用的密钥长度短得可笑,并且在推出后的几年内完全被击败。如果设计和实现DRM系统的工程团队更了解他们的对手可能使用的攻击方法,他们无疑能够在更长的时间内避免猖獗的DVD盗版。

打印机、路由器和智能恒温器等物联网设备应被视为公司安全态势的一部分。
√
越来越多的攻击利用物联网设备的弱点来感染并向公司IT网络发送恶意软件。所有连接的设备都应该考虑到公司的安全状况。

发现漏洞

根据NIST SP 800,网络安全系统漏洞的定义是“信息系统、系统安全程序、内部控制或实施中的弱点,可能被威胁来源利用或触发”。

黑客攻击的发生是由于人们发现目标系统中的漏洞,然后利用它们来利用系统。所以从逻辑上讲,一个没有漏洞的系统是真正不可攻破的。然而,正如我们之前所发现的,这不是一项简单的壮举。

开发团队将无法使产品永远没有漏洞,因此他们转而分析并优先考虑增量版本的漏洞修复(这就是为什么您总是在软件版本发布说明中看到已知的安全问题)。

即使系统在发布时没有已知的漏洞,漏洞也可能被发现并被利用来引发问题。因此,公司必须跟踪可能影响其系统和产品的已知和新的漏洞,并分析、评估和计划修复那些被利用并造成损害的高风险漏洞。

持续的漏洞监控和管理是蓝队遵循ISO/SAE 21434的重要组成部分,更一般地说,是领先于攻击者。我们将讨论高级课程中使用的工具和方法。

用一句话概括就是:及时了解可能影响您的系统和产品的漏洞,并制定如何处理它们的计划。

假设您负责公司的产品网络安全。
你收到一封外部邮件,来自一个自称是独立网络安全研究员的人。他们声称在贵公司的一款产品中发现了一个漏洞,想看看是否有奖励漏洞赏金。
您的公司目前没有错误报告或奖励政策。
你应该怎么做?

要求提供黑客入侵的证据。在确认漏洞后,与公司合作确定并给予研究者合理的奖励。因为这不太可能是最后一次,所以设置一个标准的bug报告策略。

评估风险

当设计一个系统时,在这个过程的早期就开始考虑目标是很重要的。对于网络安全来说,这意味着在设计阶段就确定攻击可能来自何处,以及漏洞可能在何处引起最大关注。一般的网络架构和硬件需求仍然可以灵活地改变。因此,它可以大大简化防御措施的设计,降低开发成本。

ISO/SAE 21434:2021标准提出了一个正式的流程,用于识别高价值资产和可能的攻击源,然后评估每种场景的风险量,以便用于形成网络安全目标的优先级列表。这项活动被称为威胁分析和风险评估,简称TARA。我们将在高级TARA课程中详细介绍TARA方法。

对于由TARA或从已知数据库识别的每个漏洞,可以用四种方法之一来处理相关的风险:避免、减少、共享或保留风险。避免是改变产品并修改其功能以删除易受攻击的特性。降低风险类似于避免风险,但可以通过实施安全措施来限制风险水平。分担风险就是分配责任,比如通过保险。风险保留是什么都不做的决定,接受风险是可以接受的。必须在考虑风险大小、每个选项所需的努力、时间和资源限制以及监管要求时做出决策。如果一个漏洞由于各种原因(包括运气)而没有被利用,最好的情况是不会发生什么坏事。在最坏的情况下,如果关键系统在没有适当的网络安全风险处理的情况下投入生产,公司可能会面临数百万美元的召回、品牌形象受损或法律问题。

每个制造商的优先级不同。以性能为中心的品牌可能有许多喜欢调整和定制汽车的客户。在这种情况下,制造商可以通过签署一项协议来取消一些安全索赔和保证,从而将一些风险转移给这类客户。其他人可能会专注于最新的用户体验功能、连接服务和高级ADAS功能,这需要大量的努力和成本来降低网络安全风险。

了解一个场景的风险的一个简单方法是考虑它发生的可能性和它将产生的影响。这取决于每个汽车制造商来决定他们的产品可接受的风险是多少。

协议入门:汽车语言

1.基本协议

当两个人开始谈话时,通常会有一个最初的交流。也许互动是从问候开始的,如果双方不认识,他们交换名字,开始谈论共同的兴趣来了解对方。走到陌生人面前问:“你家在哪里?”或“让我看看你的眼睛。”这是不寻常的。如果事先发生了适当的事件顺序,比如邀请某人去烧烤或走进验光师的办公室后,人们可能会预料到这些问题。如果没有正式的结构或顺序,信息很容易被误解,遵守规则有助于人们清晰有效地沟通。

类似地,计算机使用一组称为协议的规则进行通信。协议是一个规则集,其中包含有关数据格式的信息,将共享的信息类型,以及每个设备何时被允许说话。有些协议必须进行无线通信,以处理来自非相关设备的噪声。其他时候,设备直接相互插入,它们遵循的通信规则需要优先考虑数据传输速度和可靠性。

以下是一些在汽车中实现的协议以及它们的使用方法。

CAN

CAN(控制器区域网络)是一种用于车辆的通信协议,允许微控制器和设备在没有主机的应用程序中相互通信。它是专为汽车联网设计的基于消息的协议。CAN使用双线总线在设备之间传输数据,总线上的每个消息都有一个唯一标识符(ID)用于标识消息。ECU将监听要处理的特定定义的CAN id。CAN具有高可靠性、低成本、易于实现等优点,广泛应用于汽车行业的车载通信。CAN有多种实现和版本,如CAN- fd和CAN- xl。

CAN-FD

CAN-FD即Controller Area Network Flexible Data-Rate,是一种车载网络通信协议。它是原始控制器局域网(CAN)的继承者,提供更快的数据传输速率和更大的数据有效载荷。CAN- fd使用位填充方法和不同的消息格式,使其能够以更高的速度传输数据,同时保持与原始CAN的向后兼容性。

LIN

LIN(本地互连网络)是一种用于车辆的串行通信协议,允许单个布线网络上的设备进行通信。它是一种低成本、简单的协议,用于车辆传感器和执行器之间高达19.2 Kbit/s的通信。LIN使用单线进行通信,并且为网络上的每个设备分配一个唯一标识符(ID),用于标识每个消息的源和目的地。LIN通常用于低成本设备之间的通信,这些设备不需要像CAN这样的高级协议那样的带宽或可靠性。

FlexRay

FlexRay是一种用于车辆电子控制单元(ECU)之间高速、高可靠性通信的通信协议。它是一种确定性协议,这意味着它保证在指定的时间范围内传递消息。FlexRay使用双线总线进行通信,支持高达10mbit /s的数据速率。它专为安全关键应用而设计,通常用于汽车行业的高级驾驶辅助系统(ADAS)和其他高可靠性应用中的ecu之间的通信。

Automotive Ethernet 汽车以太网

汽车以太网是一种用于车辆ECU和其他设备之间高速联网的通信协议。它基于标准以太网协议,专为恶劣的汽车环境而设计。汽车以太网可以支持超过1000mbit /s的数据速率,并使用双绞线进行通信。它通常用于汽车行业的车载网络,特别是需要高数据速率或传输大量数据的应用程序。

MOST

MOST(面向媒体的系统传输)是一种在车辆中用于传输音频、视频和其他多媒体内容的通信协议。它是一种专门为汽车设计的多媒体网络技术。MOST可以使用光纤、非屏蔽双绞线或同轴电缆网络进行通信,并支持高达150mbit /s的数据速率。它通常用于汽车工业,在信息娱乐系统中传输音频和视频等多媒体内容。

KWP2000

KWP2000 (Keyword Protocol 2000)是一种车载通信协议,用于车辆与诊断工具之间的诊断通信。它是汽车工业中用于诊断通信的标准协议。KWP2000是一种基于消息的协议,使用单线进行传输,支持高达10.4 kbit/s的数据速率。它通常用于汽车工业中车辆和诊断工具之间的诊断通信,例如在读取和清除诊断故障代码(dtc)时。

GMLAN

GMLAN(通用汽车局域网)是一种用于车辆的通信协议,允许微控制器和设备在没有主机的情况下在应用程序中进行通信。它是一种基于消息的协议,类似于CAN,但专门为通用汽车设计。GMLAN采用单线通信,支持高达33.3 kbit/s的数据速率。它用于通用汽车的车载微控制器和设备之间的通信。

协议 全名 通信方式 数据传输速率 应用场景 特点
CAN 控制器区域网络 双线总线 高达1 Mbit/s 广泛应用于车载电子设备之间的通信 高可靠性,低成本,易于实现,适用于车载控制系统、传感器等通信。
CAN-FD 控制器局域网络灵活数据速率 双线总线 高达8 Mbit/s 继承自CAN,广泛应用于现代车载系统 高速数据传输,支持更大数据有效载荷,与原CAN兼容,适用于数据密集型应用。
LIN 本地互连网络 单线通信 高达19.2 Kbit/s 低成本设备,如传感器和执行器之间的通信 简单,低成本,适用于低速、低带宽的设备通信。
FlexRay 高速灵活总线 双线总线 高达10 Mbit/s 高安全性应用,如高级驾驶辅助系统(ADAS) 高可靠性,支持时间确定性,适用于安全关键系统,如自动驾驶等。
汽车以太网 Automotive Ethernet 双绞线通信 高达1000 Mbit/s 高速数据应用,如信息娱乐系统、自动驾驶系统 高速数据传输,适用于需要高带宽的车载网络。
MOST 面向媒体的系统传输 光纤/同轴电缆/双绞线 高达150 Mbit/s 音视频传输,如信息娱乐系统 专门为车载音视频传输设计,支持音频、视频等多媒体数据传输。
KWP2000 关键字协议2000 单线通信 高达10.4 Kbit/s 车辆与诊断工具之间的通信 诊断通信协议,用于读取故障代码和进行车辆故障诊断。
GMLAN 通用汽车局域网 单线通信 高达33.3 Kbit/s 通用汽车的车载通信协议 类似于CAN,专为通用汽车设计,支持车载设备之间的通信。

Industry In Depth 行业深度

第05课 IID简介

标准、法规和业务需求都要求车辆是安全的,尤其是在网络安全变得越来越重要的情况下,比如自动驾驶、连接和其他高级用例。如果你有一辆车和一笔预算,然后有人告诉你,“弄清楚如何利用这笔预算来安装控制装置,使车辆更安全”,一个熟练的网络安全从业者可能会成功。汽车网络安全面临的许多重大挑战源于汽车行业的独特特点。例如,一辆典型的消费汽车有超过100个电子控制单元,通常从不同的供应商单独采购,以减少依赖。在这种情况下:

  • 当双方都在进行开发时,谁拥有网络安全工作:汽车制造商/OEM还是供应商?更重要的是,谁来买单?
  • 如果风险最终由汽车制造商承担,那么汽车制造商是否应该检查供应商的网络安全工作?
  • 当不同的汽车制造商有不同的要求时,供应商如何始终如一地实施网络安全?供应商能否通过实施自己的网络安全流程,提前满足汽车制造商的要求?

本课程概述了网络安全活动如何通过车辆供应链进行分布。

传统汽车与新型汽车:网络安全战略

汽车行业正在经历其历史上一些最重大的转变。从内燃机到电动汽车的转变、汽车自动驾驶以及通过广播发布的功能都是汽车创新新机遇的冰山一角,而且它们正在迅速成为现实。随着新汽车制造商和新供应商的进入,传统汽车制造商/供应商与新进入市场的组织往往采用不同的方式来处理汽车网络安全问题。例如,许多传统的汽车制造商和供应商往往具有以下特点:

  • 在遗留或“遗留”架构中实现网络安全,这些架构寻求重用以前车辆项目的成果。
  • 更慢、更有条理的开发过程。
  • 一个高度分布式的供应链,软件/硬件知识产权所有权也是分布式的。
  • 组织内的许多“孤岛”(例如,外部网络安全与内部网络安全)
  • 对现有的汽车框架如功能安全或ASPICE有较强的能力。

另一方面,较新的汽车制造商和供应商往往表现出以下几点:

  • 一个相对“干净的记录”可以促进更先进的网络安全功能。
  • 更敏捷的开发过程。
  • 以彻底的测试和质量控制为代价,强烈关注产品交付市场
  • 跨职能团队处理许多领域(例如,安全和安保)。

尽管如此,汽车网络安全的标准和法规适用于汽车行业的新公司和传统公司。在接下来的课程中,我们将概述如何思考车辆网络安全行业。我们将从与新老两类公司的合作中汲取经验。

选择您认为在以下所需车辆品质方面具有优势的车辆

尖端技术和用户界面	新
工程开发效率	新
耐久性和可靠性	传统
量产能力	传统

UN R155的历史

强制和激励一个长期存在的行业关注新的需求,比如网络安全,并不容易。为此,欧洲经委会设立了部门委员会,以完成其在具体重点领域的任务。

汽车领域属于内陆运输委员会,其使命是“我们致力于通过内陆运输模式发展货运和个人流动性,通过改善交通安全,环境绩效,能源效率,内陆运输安全和运输部门提供高效的服务,促进安全,清洁和有竞争力的可持续运输。”该委员会是诸如WP.29世界车辆法规协调论坛等特定工作组的母公司,该工作组负责制定车辆法规。

WP.第29条将车辆的技术创新纳入其监管框架,使其更安全、更环保,从而有助于联合国欧洲经济委员会可持续发展目标(SDGs)的实施。

最终,通过欧洲经委会建立的这种治理和法律框架导致了《联合国条例》的发布,并由成员国通过。这些联合国法规规定了汽车工业原始设备制造商的具体要求和期望。在车辆网络安全的背景下,适用多种法规。首先,我们将重点关注联合国第155号条例:关于网络安全和网络安全管理系统的车辆批准的统一规定。

我们之前已经讨论过,为了实现这一CSMS联合国法规第155号监管义务,许多OEM选择利用ISO/SAE 21434:道路车辆-网络安全工程作为建立有效的CSMS处理车辆相关活动的标准化指导。

UN R155:法规细目

接下来,让我们进入正题,谈谈这项规定需要什么,以及需要做些什么来满足它。

第155号法规要求由政府指定的批准机构对计划在成员国销售的每种车型进行评估。审批机关可以根据所提供的文件和证据对该车型进行型式批准或拒绝型式批准,从而在法律上允许或禁止在这些国家销售车辆。这与EPA的批准类似。

评估是在两个重要领域进行的:CSMS(网络安全管理系统)和车辆类型。

我们之前简要提到了R155建立的CSMS要求,以及ISO/SAE 21434:2021如何满足大多数CSMS要求。批准机构应评估OEM工艺是否充分满足法规中概述的要求。请注意,这是对公司流程的评估,产生的符合性证书的有效期最长为三年,或者直到公司流程发生变化,在这种情况下,可能需要重新评估更改。本证书在有效期内可重复用于不同的车辆类型应用。

在车型评估方面,预计批准机构将评估车型开发中涉及的网络安全活动的质量和完整性,例如ISO/SAE 21434规定的车辆系统和组件的威胁和风险评估(TARA)。

此外,R155要求:

  1. TARA将在任何支持或与车辆相关的外部系统上执行
  2. TARA必须包括R155附件中列出的威胁和缓解措施清单
  3. 适当的安全措施,以确保车辆和支持系统的安全
  4. 为证明上述措施的有效性而进行的测试
  5. 附加的日志记录和入侵检测功能
  6. 最新的加密功能

为了验证上述要求,预计批准机构将审查和仔细检查原始设备制造商提供的技术工作产品,并对车辆进行测试,以验证缓解措施的充分性。

总之,UN R155依赖于ISO/SAE 21434等标准,为oem定义了详细的csm,同时增加了一些额外的考虑因素和技术要求。

批准机构可以要求车辆进行测试,作为UN R155型式批准过程的一部分。
√

第06课 网络安全组织

现在我们已经介绍了汽车行业必须满足的网络安全监管要求,让我们来看看实现这一要求需要什么。

这第一课将涵盖我们通常看到的能够执行满足规定所需的工作的组织结构。当然,没有放之四海而皆准的解决方案。就像大型科技公司的不同组织一样,每家公司都有自己的解决方案来应对这一挑战。我们根据我们的经验提供了一些建议,但是组织应该根据他们的员工和方法来调整这些建议。

关于组织结构的搞笑漫画

标准要求

OEM厂商之间的网络安全成熟度、责任和结构可能存在很大差异。在每个组织中,都应该有一个负责网络安全的团队,并有一个向首席执行官负责的报告结构。公司还必须支持一种网络安全文化,在这种文化中,个人有权做出有关网络安全的关键决策,并在公司各级领导中给予支持。

从监管的角度来看,公司需要什么?

UN R155对CSMS的定义意味着公司内部有一个组织来执行流程、职责和治理,以实现基于工程开发生命周期中定义的产品风险的合理网络安全状态。

为了实现这一目标,许多OEM和供应商选择使用ISO/SAE 21434:道路车辆-网络安全工程作为建立有效CSMS的标准化指导。章节5.4.1“网络安全治理”中与组织结构相关的要求示例:

[RQ-05-01] 组织应制定包括以下内容的网络安全策略:

  • 道路车辆网络安全风险认知
  • 执行管理层对管理相应网络安全风险的承诺。

**[RQ-05-02] **组织应建立并保持规则和过程,以便:

  • 使本文件的要求得以实施
  • 支持相应活动的执行

[RQ-05-03] 组织应分配和沟通实现和维护网络安全的责任和相应的组织权限。

**[RQ-05-04] **组织应提供解决网络安全问题的资源。

说明资源包括负责网络安全风险管理、开发和事件管理的资源。

以上需求可以通过多种组织方法来满足。

例如,一家大公司可能会首先建立一个新的专注于车辆的网络安全团队来适应上述情况。这些团队将独立于现有的IT网络安全组织,这些组织不一定具备管理特定车辆网络安全风险的专业知识。

组织的另一个例子可能是一个新进入市场的小公司。在这种情况下,组织可能没有资源来建立单独的团队,因此选择精益和以产品为中心,在整个组织中集成网络安全流程和需求。

根据ISO/SAE 21434第5.4.1节“网络安全治理”,以下哪项不是必需的?

确定支持网络安全的工具和服务提供商

企业网络安全

一些公司将传统的IT安全和后台安全合并为一个组织,而另一些公司则将它们分离为两个独立的组织。

每个人都应该清楚企业IT安全团队的工作。例如,他们负责保护企业服务器,实现公司网络防火墙,网络钓鱼电子邮件过滤器,病毒扫描仪,并教育员工良好的办公室安全实践。

后台安全团队,有时被称为离线或OT安全团队,更多地关注支持车辆安全的系统和应用程序,但并不实际存在于车辆中。例子包括:

  1. 移动应用程序,例如用于与车辆远程交互的面向客户的应用程序。
  2. 支持所有连接服务的后端基础设施。例如固件Over The Air (FOTA),连接诊断认证,远程操作,产品数据收集,高清地图。
  3. 支持网络运营能力(产品安全运营中心、产品加密平台、软件开发环境和工具(DevSecOps.))
  4. 为制造工厂提供初始身份或密钥配置、密钥协商和其他车辆安全制造流程的支持。

DevSecOps

DevSecOpsDevelopment, Security, and Operations(开发、安全和运维)的缩写,它是将安全性(Security)集成到 DevOps 流程中的一种实践。传统的 DevOps 强调开发(Development)和运维(Operations)的紧密协作,而 DevSecOps 的目标是在这个过程中加入安全(Security)措施,确保安全性从软件开发的每个阶段开始就被考虑和实现,而不是在开发完成后才进行安全审查或修复。

以下哪一项是后台网络安全的主要关注点?

用于远程连接车辆的移动应用程序和后端基础设施

产品(车辆)网络安全

该组织专注于车载产品的安全性。这个组织可能被称为车辆、产品或车载安全。该队也可分为两个子队,专门负责车辆安全领域。专注于嵌入式车辆安全(主要关注控制器局域网(CAN)总线和电子控制单元(ECU))的团队有时被称为核心或嵌入式车辆安全。互联ECU安全团队(专注于远程信息处理、网关和远程连接的信息娱乐模块)可称为互联或无线安全团队。

深入到产品/车辆安全团队和组织中,汽车制造商的车辆安全组织,根据其安全成熟度级别,通常有一个网络安全规范列表。规范给出了他们期望供应商实现的每个技术领域的详细需求。该团队的安全工程师将与供应商密切合作,确保ECU、车辆系统和整个车辆的安全状态符合预期结果。

技术领导者应该为公司产品的必要规格设定方向,或者汽车制造商可以咨询第三方专家,以制定适当的技术规格。高层领导应该在公司层面为整体网络安全目标和政策设定方向。

网络安全规范的作用是什么?

它们为供应商提供了每个技术领域的详细要求

组织的挑战

在大公司中,由于孤立的组织,企业和以产品为中心的组织之间经常缺乏协作和目标冲突。这些组织可能有相互冲突的目标,传统的IT和企业组织专注于保护数据资产和维护云服务的可用性。企业安全目标涉及遵守GDPR等法规,并确保云系统不会经历计划外停机或数据泄露。

产品安全或车辆安全团队的主要目标是产品在道路上的安全与保障。这一目标有时可能优先于企业组织的目标,因为对车辆的网络威胁可能会对人类生命造成严重的物理后果。两个独立组织的目标(保护产品与遵从性和成本节约)的不一致增加了有效协作的难度。

两个组织都有遵从性需求,但是需要满足不同的标准、法规和遵从性目标。产品和车辆安全团队专注于完善网络安全流程和功能,使OEM能够遵守基于ISO/SAE 21434道路车辆网络安全标准指导的WP.29 UN R 155道路车辆网络安全法规。

一个额外的公司组织复杂性是可能存在一个单独的公司遵从性部门,它单独负责与这两个组的接口,以确保公司满足法规遵从性义务。

在传统的原始设备制造商中,不同组织之间的协作可能会很慢,并且在网络安全能力的责任所有权(谁在做什么)方面造成模糊。分离这些团队并使用第三方限制了渗透测试的范围,将云、后端基础设施或web应用程序排除在车辆远程信息处理渗透测试之外。像现实世界中的攻击者会体验这些产品一样,进行广泛范围的渗透测试是很复杂的。许多个人和私人研究人员在这些组织和第三方之间的责任差距中发现了漏洞。(最近的例子,https://samcurry.net/web-hackers-vs-the-auto-industry/或https://medium.com/@david_colombo/how-i-got-access-to-25-teslas-around-the-world-by-accident-and-curiosity-8b9ef040a028)

下面的示例图将通用车辆、云、移动应用程序、车辆系统和第三方功能描述为设计拓扑。该图表明,车辆网络安全团队和企业安全之间的界限是模糊的。使用第三方、web提供商和移动应用程序会带来额外的复杂性。

0_0

FOTA

FOTAFirmware Over-The-Air(固件空中下载)的缩写,它是一种通过无线网络(通常是通过蜂窝网络或Wi-Fi)远程更新设备固件的技术。FOTA 使得制造商可以通过无线方式将固件更新(如修复、功能增强、漏洞修复等)推送到设备,免去用户或技术人员手动更新的麻烦。

企业和以产品为中心的组织之间协作的挑战之一是什么?

两个组织的目标不一致
团队的分离和第三方的使用限制了渗透测试和安全评估的范围
两个组织有效合作的困难

当前行业趋势应对挑战

在过去,将企业和汽车产品网络安全组织分开是有道理的,因为它们之间几乎没有重叠。然而,汽车公司仍在继续转型,以迅速满足客户和监管机构的期望。这包括创建新的基于电动汽车的平台,并利用机会创建新的基于收入的软件定义服务,以保持市场份额并实现预期利润。由于这种积极的转变,两个先前的网络安全团队(企业和产品)之间的区别继续变得模糊。

此外,在采用现代技术堆栈并将其应用于车辆的物理车载边界方面,技术趋势也增加了模糊性的挑战。例如,现在使用Android操作系统会依赖于OEM实现DevSecOps实践来部署和管理直接部署在车载组件上的应用程序的持续生命周期。以前,应用程序的重点是客户使用的非车载应用程序,用于与产品和可用服务进行交互。

是什么导致汽车行业企业网络安全团队和产品网络安全团队之间的界限模糊?

汽车公司快速转型以满足客户和监管期望
现代技术栈的采用,并将其应用于车辆的实体车载周边环境

整合团队

集中产品的开发团队

为了实现新的目标,以满足各自公司的转型目标,许多企业OEM组织正在将以前位于独立公司部门(工程、IT和连接服务)的产品开发和连接功能开发部门合并到一个单一的产品软件开发组织中,该组织建立了一套单一的目标和指标。这些组织建立的重点是快速交付和部署迭代的新客户能力,以保持在市场上的竞争力,并创造新的创收业务机会。独特的H/W和S/W,产品或工程团队,不再是交付面向客户和产生收入的产品和能力的差异化因素。许多汽车产品正在转向软件定义的功能集,在这种情况下,oem可以向客户销售额外的服务和功能,而无需修H/W。

集中产品的运营团队

为了提高企业效率(成本和资源),许多原始设备制造商正在利用现有的企业IT团队来集中管理企业云基础设施,并管理联网汽车云基础设施。以这种方式运营的oem旨在为互联产品和功能运营的所有权创建明确的责任。

集中产品的网络安全团队

这种组织融合的趋势可能会考虑或不考虑单一产品网络安全管理系统(CSMS)的融合。这种网络安全过程的融合必须经过计划和执行才能成功,就像将各自的开发团队融合到一个组织中一样。正因为如此,我们看到一些组织保持了产品网络安全责任的分离,但也看到了产品网络安全组织被合并到集中的产品开发团队组织和结构下的趋势。

第07课 网络安全分析:TARA基础

ISO 21434概述了在产品设计阶段必须执行的一系列活动。仅举几例,汽车制造商必须具备所谓的网络安全概念,定义产品安全设计的要求和目标。他们还必须从多个抽象层次考虑产品的已知弱点。例如,车辆模块如何联网以及如何处理数据。可用于识别这些弱点、分析威胁及其带来的风险的方法之一是TARA。在本节中,我们将主要关注设计阶段的TARA部分,但将在以后的课程中讨论该过程中的其他阶段。

TARA(威胁分析和风险评估)的任务是识别、评估和管理与道路车辆系统、组件和功能在其整个生命周期中的网络安全风险,以确保其安全性并符合ISO 21434标准。

威胁分析和风险评估的本质是授权在任何产品的产品设计阶段做出网络安全决策。它可以是软件、硬件,甚至是流程来考虑存在哪些风险以及如何处理它们。简单地说,我们需要了解产品的威胁,并定义相关的风险,以设计正确的保护措施。

为什么?

最终,我们需要这样做,以实现理想的产品网络安全态势,以保护典型的风险维度。

安全

金融

业务

隐私

我们这样做的一个重要驱动力是联合国欧洲经济委员会成员国颁布的具体法规; UNR# 155。

联合国第155号条例定义了以下定义:

“网络安全管理系统(CSMS)”是指一种基于风险的系统方法,该方法定义了组织流程、职责和治理,以处理与车辆网络威胁相关的风险,并保护车辆免受网络攻击。

“基于系统风险的方法”的具体用词选择最终使用TARA方法完成。TARA旨在以一致的、可重复的和持续的方式定义威胁和风险,以便在产品不断迭代和威胁不断发展的情况下继续管理风险。

为了实现这一CSMS联合国法规第155号监管义务,许多oem选择利用ISO/SAE 21434:道路车辆-网络安全工程作为建立有效CSMS的标准化指导。在TARA的上下文中,ISO/SAE 21434包含了一个专门的章节来定义TARA方法。

根据ISO/SAE-21434, TARA的目标是:

  1. 识别资产、网络安全属性和损害场景;
  2. 识别威胁场景;
  3. 确定损坏场景的影响等级
  4. 识别实现威胁场景的攻击路径
  5. 确定攻击路径是否容易被利用
  6. 确定威胁场景的风险值
  7. 针对威胁场景选择适当的风险处理选项

这就是为什么TARA被要求作为有效的CSMS的一部分,这是通过联合国条例#155强制执行的。

UNR-155 vs ISO/SAE-21434

UNR-155和ISO/SAE-21434有什么关系?

UNR-155是一项法律强制执行的法规,要求汽车制造商实施基于风险的系统网络安全方法。

ISO/SAE-21434提供了一个系统的基于风险的方法,公司可以遵循

通过遵循ISO/SAE-21434的指导,汽车制造商可以证明符合UNR-155。

根据ISO/SAE-21434, TARA(威胁分析和风险评估)的主要目标是什么?

确定损害情景的影响等级
识别资产、其网络安全属性及其损害情景
识别威胁情景和相关风险

是什么?

因此,我们在高水平上介绍了TARA是一种风险评估,它考虑了威胁的定义,以得出影响和可能性。现在让我们在更深层次上回顾一下那是什么,以理解更多细节:

ISO 21434“道路车辆网络安全工程”标准中引用的TARA(威胁分析和风险评估)过程的具体要素包括:

  1. 车辆系统、组件和功能的识别和评估:这包括识别与网络安全相关的关键系统、组件和功能,并评估其潜在漏洞
  2. 网络安全威胁识别:这包括识别可能影响车辆系统、组件和功能的潜在网络威胁,并评估其可能性和影响。
  3. 评估车辆的网络安全控制和措施:这包括评估其网络安全控制和措施的设计、开发和实施,如防火墙、入侵检测系统和加密,以确定其在缓解已识别的网络安全风险方面的有效性
  4. 风险评估包括评估已识别的网络安全风险的可能性和影响,以及实施的控制和措施的有效性。它还包括确定风险水平和做出适当的风险处理决策
  5. 沟通和记录:这包括记录TARA过程,包括威胁分析、风险评估和风险处理决策的结果。它还包括将TARA过程的结果传达给所有相关利益相关者,如汽车制造商、供应商和监管机构
  6. 持续维护和监控:这包括持续监控和维护车辆的网络安全控制和措施,以确保它们继续有效地缓解已识别的网络安全风险

通过实施TARA流程,车辆制造商和供应商可以识别、评估和管理车辆整个生命周期的网络安全风险,并确保车辆安全运行并符合标准要求

挑战

执行ISO 21434“道路车辆网络安全工程”标准中提到的高质量TARA(威胁分析和风险评估)存在几个挑战。这些挑战包括:

  1. 缺乏专业知识:网络安全是一个复杂且快速发展的领域,对于组织来说,拥有执行TARA所需的知识可能具有挑战性。
  2. 识别所有潜在威胁:随着网络威胁的不断发展,识别车辆系统、组件和功能的所有潜在威胁可能具有挑战性。
  3. 评估网络安全控制和措施的有效性:确定网络安全控制和措施的有效性可能具有挑战性,特别是当涉及到新兴技术时。
  4. 评估已识别的网络安全风险的可能性和影响:准确评估这些风险可能具有挑战性,特别是当涉及到新兴技术时。
  5. 识别所有利益相关方:它可能是一个挑战来识别所有利益相关方,如汽车制造商,供应商,和监管机构,沟通塔拉过程的结果。
  6. 确保持续监控和维护:持续监控和维护车辆的网络安全控制和措施可能具有挑战性,特别是当涉及到新兴技术时。
  7. 遵守法规和标准:遵守法规和标准可能具有挑战性,例如ISO 21434,它不断发展和变化。
  8. 在安全性和功能之间找到适当的平衡:在安全性和功能之间找到适当的平衡可能是具有挑战性的,特别是在涉及新技术和新兴技术时。
  9. 在避免、减少、转移或分担风险方面做出正确的风险处理决策。

尽管存在这些挑战,但实施TARA是确保道路车辆网络安全的关键一步,组织应采取必要措施克服这些挑战,执行高质量的TARA。

针对这一挑战的解决方案正在开发中,这是Block Harbor所热衷的领域。Block Harbor的解决方案包括:

  1. 意识和培训-你现在正在学的就是
  2. 标准化的方法和工具
  3. 标准化和迭代改进的威胁数据库
  4. 行业参与者之间的协作使有效的通信和信息共享能够高效地执行tara。基于合作关系,继续构建标准化数据集(将从上面的第3条定义)。

怎么做?

执行TARA涉及到一个系统的、结构化的过程,用于识别、评估和管理车辆整个生命周期的网络安全风险,并确保车辆安全运行并符合标准要求。

根据ISO 21434“道路车辆网络安全工程”标准,在高水平上执行TARA(威胁分析和风险评估)涉及几个步骤:

  1. 车辆系统、组件和功能的识别和评估:这包括识别与网络安全相关的关键系统、组件和功能,并评估其潜在漏洞。此步骤有助于理解评估的范围,并定义将要评估的系统、组件和功能的边界。
  2. 网络安全威胁识别:这包括识别可能影响车辆系统、组件和功能的潜在网络威胁,并评估其可能性和影响。此步骤有助于了解系统、组件和功能面临的潜在风险,以及它们如何影响车辆的安全性。
  3. 评估车辆的网络安全控制和措施:这包括评估其网络安全控制和措施的设计、开发和实施,如防火墙、入侵检测系统和加密,以确定其在缓解已识别的网络安全风险方面的有效性。此步骤有助于了解系统、组件和功能当前具有的安全级别。
  4. 风险评估包括评估已识别的网络安全风险的可能性和影响,以及实施的控制和措施的有效性。它还包括确定风险水平和做出适当的风险处理决策。此步骤有助于了解系统、组件和功能所面临的风险级别,以及应该采取哪些措施来减轻风险。
  5. 沟通和记录:这包括记录TARA过程,包括威胁分析、风险评估和风险处理决策的结果。它还包括将TARA过程的结果传达给所有相关利益相关者,如汽车制造商、供应商和监管机构。这一步骤有助于提供TARA过程的证据,并与相关方分享结果。
  6. 持续维护和监控:这包括持续监控和维护车辆的网络安全控制和措施,以确保它们继续有效地缓解已识别的网络安全风险。此步骤有助于确保系统、组件和功能在一段时间内保持安全。

TARA在车辆架构的不同层次上执行。TARA主要有三种类型。

车辆-系统-部件

在每个层次上,TARA程序都是在不同的背景下进行的。作为TARA流程的一部分,团队执行项目定义,确定分析的主题和操作环境。操作环境决定了TARA的类别。车辆级TARA考虑所有车辆功能以及它们如何与外部服务交互。系统级TARA只考虑该系统中的模块以及它们之间的交互方式。组件级TARA只关注单个组件及其所面临的威胁和风险。

共同责任

现在我们知道了TARA是什么以及谁负责执行它们:

根据ISO 21434“道路车辆网络安全工程”标准,执行TARA(威胁分析和风险评估)落在制造商或供应商身上。制造商或供应商有责任识别和评估与其系统、组件和功能相关的网络安全风险,并确保其产品符合标准要求。这包括在组件、系统和车辆级别进行TARA。

然而,执行TARA的责任也可能由不同的各方共同承担,例如车辆制造商、供应商、系统集成商和最终组装阶段。在车辆的系统、组件和功能从多个来源集成的情况下尤其如此。在这种情况下,汽车制造商应与供应商、系统集成商和最终组装阶段协调执行TARA或集成商。

重要的是要注意,监管机构也可以通过执行审计或检查来执行tara,以确保制造商和供应商遵守标准。

总体而言,执行TARA的责任由车辆制造商、供应商、系统集成商和最终组装阶段共同承担,这是一项合作努力,旨在确保道路车辆在其整个生命周期内的网络安全,并满足标准要求。

监管机构在执行TARA时扮演什么角色?

他们执行审计和检查,以确保制造商和供应商符合标准。

总结

ISO 21434“道路车辆网络安全工程”是为道路车辆(包括轻型和重型车辆)的网络安全开发和维护提供指南的标准。

在ISO 21434中,TARA指的是“威胁分析和风险评估”过程。该流程识别和评估与车辆系统、组件和功能相关的网络安全风险。TARA流程旨在在道路车辆的开发、生产和维护过程中进行,并应用于评估车辆、其乘员、其他道路使用者和环境的网络安全风险。

TARA流程分为两个主要部分:

  1. 威胁分析:侧重于评估车辆网络安全控制和措施的设计、开发和实施。
  2. 风险评估侧重于评估已识别的网络安全风险的可能性和影响,以及实施的控制和措施的有效性。

在ISO 21434的背景下,TARA流程至关重要,因为它可以帮助汽车制造商和供应商识别、评估和管理整个车辆生命周期的网络安全风险,并确保车辆安全运行并符合标准要求。

TARA过程中风险评估的重点是什么?

评估已识别的网络安全风险的可能性和影响

(第08课不见了)

第09课 集成和测试

在制造汽车时,原始设备制造商不需要开采材料、制造油漆、饲养牲畜制作皮革,也不需要设计零部件。汽车制造商正在建立一个供应商网络来制造这些零部件,并将它们组合起来制造一辆汽车。虽然供应商可能正在设计和评估其产品的网络安全,但不可能知道汽车制造商计划将它们与其他供应商的所有产品整合到一起的确切环境。把这个过程想象成建造一座砖房。供应商提供砖块,但只有汽车制造商有砂浆来组装它们。在这里,你可以找到将它们连接在一起的接缝处的弱点。

安全网络通信等车辆级网络安全功能需要多个组件来减轻外部威胁。供应商测试开发的组件不能确保网络是安全的。因此,这最终落在汽车制造商以更全面的观点来评估组合系统。此外,组件可以在平台之间进行重用,但会有细微的变化,这可能会导致系统安全功能的不一致。硬件成本的节约和不断变化的软件的结合给汽车制造商带来了独特的压力,要求他们安全地集成这些技术。

分解系统、指定接口、开发组件,然后将它们重新集成在一起的过程在开发的每个级别上执行。单个ECU的供应商也会执行类似的流程,将ECU分解为多个组件,甚至是单个软件模块,然后再将它们整合在一起。因此,即使集成和测试过程保持不变,产品也会发生变化。

本课将讨论集成和测试车辆组件以降低网络安全风险的各种技术。

网络安全验证

测试一般由验证和确认组成,通常遵循设计和开发活动。其他的方法,比如测试驱动开发,将验证活动移动到与开发一起运行。

验证的重点是确保产品符合其预期设计。设计阶段的标准和规范要求是否应用于产品并正确实施?验证通过分析和测试已知的威胁和漏洞来确保产品符合预期的设计标准。

网络安全验证是ISO/SAE 21434条款9、条款10:产品开发的一部分。网络安全验证旨在提供证据,证明组件的实施和集成结果符合网络安全规范。因此,记录产品满足需求的证据

根据发展阶段和网络安全需求的类型,验证的目标和策略是不同的。ISO/SAE 21434要求验证:

  • 网络安全目标
  • 网络安全概念
  • 网络安全设计阶段
  • 集成和测试阶段(此阶段可以与使用敏捷方法的设计阶段紧密结合)

在概念阶段,应该通过技术评审来进行验证,以确认各种概念阶段活动(目标、要求、概念/需求)的结果的完整性、正确性和一致性。

在设计阶段,应通过审查需求和详细设计来进行验证。请注意,设计和测试阶段通常是循环发生的,因为测试可能会揭示设计缺陷,因此需要更新规范。

在集成和测试阶段,验证通常通过利用以下测试方法来执行:

  • 根据网络安全设计规范进行验证
    • 网络安全功能测试
    • 漏洞扫描
    • 模糊测试(FUZZ)
    • 渗透测试

网络安全验证

网络安全验证侧重于确保车辆的设计是安全的(即,我们是否在制造正确的产品?)。这是一项艰巨的任务,因为我们今天可以尽最大努力防御每一种已知的攻击,但明天有人提出了新的攻击,车辆就不再安全了。因此,在实践中,网络安全验证确保置信度高,剩余风险合理

请注意,网络安全验证需要对系统有全面的了解,以便能够确定风险是否处于合理的水平。假设供应商开发了一个组件,该组件深嵌在车辆中,没有连接到外部接口。在这种情况下,他们可能会认为被物理篡改的风险很低。因此,这是OEM的责任,以确保这是正确的车辆上安装了该组件。在车辆级别考虑网络安全验证。然而,供应商可能需要提供信息来支持该活动。此外,一些构建整个系统的供应商可能要对系统的网络安全保证负责。

根据ISO/SAE 21434:2021,验证活动主要由两个任务组成:

验证的第一步是确认车辆系统内网络安全目标的充分性和网络安全声明/要求的有效性。这部分主要是通过查阅文献来完成的。例如,在前面的例子中,OEM应该审查并确认供应商的网络安全声明的有效性,即由于组件的位置和暴露,物理篡改的风险可以忽略不计。

第二步是进行渗透测试,以确认在车内实现了网络安全目标。渗透测试还可以对目标未解决的弱点的风险级别提供信心,因为优秀的测试工程师不仅可以针对网络安全目标进行测试,还可以使用一般网络安全行业已知的攻击方法。通过渗透测试验证的有效性高度依赖于测试范围、所花费的时间和精力,以及测试人员的领域专业知识。

当然,为了证明剩余风险是合理的,任何由验证活动确定的漏洞都应该被修复/管理。

根据应该执行的时间对活动进行排序

审查网络安全目标的正确性
基于需求的测试
渗透测试

试验方法

下一节将重点放在测试方法上,而不是设计审查,因为审查涵盖在概念和设计课程中。此前,我们了解到,UN R155和ISO/SAE 21434:2021都要求进行测试,以证明网络安全缓解措施的有效性和可接受的剩余风险水平。让我们回顾一下提到的测试类型:

  • 网络安全功能测试
  • 漏洞扫描
  • 模糊测试
  • 渗透测试

在车辆型式批准期间,测试活动的文件证明符合ISO/SAE 21434:2021和UN R155法规审核是必要的。

让我们来看看这些测试方法。

网络安全功能测试

CS基于需求的测试评估已实现的网络安全功能的正确性,确保控制按预期运行。来确定系统是否工作,团队需要了解安全特性时要表现它收到不正确的输入。要做到这一点,他们应该定义误用案例,描述功能和安全特性是如何被滥用的。考虑到这些误用案例,测试团队可以使用清晰的参数和期望测试系统的功能。

例如,安全启动功能应该保护软件免受非官方修改方法的篡改,例如滥用不正确的闪烁序列,使用未锁定的调试端口,或利用现有的保护较弱的非官方编程/校准工具。因此,在本例中,我们已经列出了一些用于测试的普通函数的误用案例。此外,滥用安全引导的方法包括电源故障、通过外部引导加载程序配置绕过安全引导,或者在引导过程的早期修改代码/数据。一般来说,在测试安全特性时,使用各种非标准和意外的操作参数进行实验是至关重要的,试图入侵系统的人会尝试使用这种类型来让目标不按照规范行事。

基于网络安全需求的测试对于汽车行业来说是一个相对不成熟的测试领域。一个好的方法是让编写目标需求的CS工程师与当前的测试团队合作。这是大多数公司解决测试工程师缺乏网络安全知识的典型方法。请注意,根据ISO/SAE 21434附录E,不建议开发产品的工程师执行验证活动。

网络安全测试中一个经常被忽视的部分是,验证活动已经被作为质量控制的常规部分,用于车辆等潜在的安全关键系统。典型的产品功能测试已经可以确保产品按照指定的方式运行。如果做得正确,良好的功能测试应该最大限度地减少未知行为,这可能会损害功能安全和网络安全。还需要对可靠性/稳健性进行其他测试,以证明硬件有足够的能力支持网络安全功能和高质量代码。这些测试包括资源使用评估、接口测试、控制和数据流验证、动态分析和静态分析。这些测试方法通常是ASPICE和ISO 26262功能安全要求的软件集成测试的一部分。

总之,汽车行业在基于网络安全需求的测试方面面临着许多挑战。虽然一些汽车制造商有全面的网络安全要求,但测试其实施的方法并没有明确定义或理解。传统的功能测试团队可能缺乏必要的网络安全专业知识来理解测试目标,因此他们通常不会针对意外输入和操作参数进行足够的测试。行业经常依赖渗透测试来捕获任何问题并满足遵从性标准,但是这种方法是无效的。渗透测试需要更多的专业知识,并且非常耗时。此外,与内部测试团队相比,让渗透测试人员识别正确实现需求的失败要花费更多的时间和成本,因为外部测试人员不熟悉产品和相关的需求。

静态和动态代码分析

前一节讨论的验证方法之一是静态和动态代码分析。它通常作为软件集成测试的一部分执行,并且可以作为质量保证方法来最小化软件中的错误和潜在弱点。静态代码分析检查源代码或编译后的代码是否符合编码标准和潜在的安全漏洞。相反,动态代码分析运行代码并监视其行为,检测运行时错误并度量性能。

汽车行业的商业静态分析工具通常涵盖常用的嵌入式编码标准,如MISRA-C和CERT C。一些流行的免费静态代码分析工具包括SonarQube、FindBugs和Pylint。

另一方面,动态代码分析涉及运行代码并在执行时监视其行为。这可以包括跟踪代码的内存使用、性能和输入/输出。这种类型的分析通常用于识别运行时错误,例如内存泄漏和竞争条件,以及度量性能。一些流行的动态代码分析工具包括Valgrind、GDB和JProfiler。

因为这些扫描通常需要一个人拥有源代码,所以建议把这个责任放在供应商身上。汽车制造商应与供应商一起审查结果,以便在软件开发过程的后期阶段,当软件可用于测试时,制定适当的补救和修复计划。许多扫描工具可以集成到ide中以连续运行。但是,至少应该在每个主要版本中定期进行检查,以便了解和跟踪需要修复的问题。

将代码分析技术与它可以捕获的典型错误类型相匹配:

内存泄漏	动态代码分析
数值型截断误差	静态代码分析
任务抖动、瓶颈	动态代码分析
除以零	静态代码分析
数组索引越界	静态代码分析

漏洞扫描

漏洞扫描是通过分析工具运行源代码或二进制代码来编译已知软件列表。然后,根据CVE数据库检查此列表,以确定代码中是否存在已知漏洞。这些漏洞扫描器的工作原理与传统的病毒扫描非常相似,在传统的病毒扫描中,病毒定义列表(代码的哈希值)存储在数据库中,并与目标系统上的文件进行比较。更复杂的扫描器寻找代码行为模式来识别软件,甚至可以用来检测从互联网上复制粘贴的代码片段。

鉴于中央处理器和联网组件中有许多开源库,漏洞扫描对于确保联网和自动驾驶车辆的安全至关重要。这与大多数深度嵌入式ECU形成鲜明对比,后者通常运行在专有软件上,几乎没有开源组件。在后一种情况下,漏洞扫描通常不返回任何结果。

结合其他测试技术,扫描报告可用于符合ISO/SAE 21434的验证要求,以确认未知漏洞被最小化。给定代码中已识别的漏洞列表,开发人员可以修补它们,并降低利用这些漏洞进行攻击的风险。对扫描结果进行审查和分类,以确保它们得到合理处理是至关重要的。

正如课程前面提到的,漏洞管理是一项持续的活动。除了监控网络安全事件外,还应在产品进入生产后及其整个使用生命周期中定期执行漏洞扫描。此活动对于保持最新漏洞的更新并确保系统保持安全至关重要。漏洞扫描的结果可能随着时间的推移而改变,因为新的漏洞会被记录下来,并且开发还在继续。随着时间的推移,CVE数据库中已知漏洞的增长说明了这一点。

由于集成了许多定制系统,汽车行业面临着独特的挑战,并且无法依赖漏洞扫描来提供所有漏洞的完美可靠摘要。然而,随着设计的不断发展,这种测试技术将能够运行这些扫描,从而节省时间。随着新的漏洞被发现,以及漏洞数据库的更新,这些以前未被发现的漏洞将被揭示出来。

关于漏洞扫描器及其检测汽车系统中常见软件漏洞的能力,下列哪项是正确的?

漏洞扫描器可以检测已知的软件组件并提供CVE漏洞列表,但可能会出现误报。

模糊测试

是什么?

模糊测试或模糊测试是一种测试软件的方法,其中将大量无效、畸形或随机的数据输入发送到被测目标,以查看它如何响应意外数据。这在发现bug或其他漏洞时很有用。模糊测试将试图让设备或软件崩溃、失速或出现意外行为。

为什么要进行模糊测试,为什么它是有价值的?

分析人员可以对安全研究中的特定模糊测试崩溃或错误行为执行根本原因分析,并可以发现可能被利用的弱点。

怎么做?

模糊测试可以在针对源代码的软件环境中执行。不过,在汽车制造商,这可能涉及到开发硬件连接到测试计算机的攻击面,如CAN,以太网,蓝牙和WiFi。需要配置模糊工具以与目标通信。商业模糊工具将包括针对各种攻击面的测试套件。可以设计定制的模糊测试套件。最简单的是随机生成的输入。更复杂的模糊测试套件可能会更深入地考虑协议,并且在数据修改方面更有针对性。一旦它运行,模糊测试套件主要是自动化的,通过成千上万的测试消息。为了保持硬件运行,可能需要一些人工干预,或者自动开发可以为您完成这些工作。例如,如果在CAN上模糊测试ECU,模块可能会崩溃而不会重置。在这种情况下,可能需要硬电源复位来恢复被测设备。您想要运行的模糊测试用例的数量可以特定于您正在测试的目标和攻击面。例如,如果在经典CAN上进行测试,您可能认为100,000到200,000个测试用例的数量已经足够了。安全专家可以帮助确定测试用例的适当数量。

模糊工具

一个可以考虑的商业模糊工具是Synopsys的defenssics,但也有很多选择。一个很好的开源汽车模糊工具是Caring Caribou。有关模糊测试的更深入培训,请参阅Block Harbor的高级模糊测试模块(即将推出)。

与其他测试方法相比,是什么让模糊测试更有价值?

它针对暴露接口上的意外用例,这些用例通常不包括在功能测试或漏洞扫描中。

OEM的渗透测试

渗透测试是一种更加开放和创造性的测试方法,在这种方法中,高度积极和熟练的测试人员将扮演恶意参与者的角色,以测试系统是否有任何未知的弱点,以及这些弱点是否可以被利用。TARA是渗透测试的一个很好的输入,测试可以帮助验证在TARA中所做的假设是否准确。尽管如此,渗透测试将不仅仅是测试关于TARA威胁的假设。

该行业最依赖渗透测试,有时作为单一的测试方法,但在许多情况下,应该考虑并使用所有四种方法。如果跳过其他测试方法,测试结果将不能有效地解决这些差距。渗透测试团队的创造性工作将更有效地用于识别新的漏洞,而不是通过任何其他更快的方法更快地发现容易实现的目标。

对未经过功能测试的产品进行测试可能会浪费时间,因为在测试目标中没有出现或配置正确的安全特性。

渗透测试的责任通常被推给供应商,他们对如何在车辆中实现他们的系统理解有限。

原始设备制造商应专注于车辆系统和整车的大范围渗透测试,而供应商应专注于组件和功能渗透测试。

在更广泛的范围内进行渗透测试,以便更接近产品发布后真正的对手将在其中工作的环境,这是最有意义的。

成功的渗透测试团队需要高级技能。在各个领域拥有广泛知识和深度的团队将成功地识别潜在的弱点,并试图利用它们进行不同的攻击。详细了解多个协议如何工作,了解应用程序如何工作,以及各个组件如何作为一个系统运行。渗透测试人员的典型背景是计算机工程、计算机科学、电子工程和软件开发。有时他们是自学成才的安全研究人员。学术学位之外的各种认证、独立研究或贡献以及开源代码的发布都可以作为评估渗透测试团队技能的良好凭证。

  • 通信测试
  • CAN
  • 以太网
  • Wi-Fi
  • 蜂窝
  • GPS
  • 蓝牙
  • 低功耗蓝牙
  • 特定频段射频通信测试
  • TPMS
  • Key fob
  • 蜂窝:2G, 3G, 4G LTE, 5G
  • 硬件逆向工程
  • 软件逆向工程

有关进行渗透测试的更多详情,请参阅Block Harbors高级渗透测试模块。

关于汽车系统的渗透测试,下列哪一项是正确的?

渗透测试应该在更广泛的范围内进行,以更接近真正的对手将在其中工作的环境。

你认为谁应该执行网络安全验证任务?

Block Harbor网络安全团队
红队:网络安全专家
V&V或测试工程师
蓝队:网络安全工程师

V&V

V&V验证(Verification)确认(Validation) 的缩写,通常用于软件工程和系统工程中,用于确保系统或软件的质量和符合需求。

总结-集成与测试

验证和确认需要许多不同类型的测试。它们可以同时用于识别弱点和漏洞,以帮助工程师开发更安全的产品。

主要测试类型

  • 功能测试确认系统按预期工作。如果系统不像设计的那样运行,如果系统需要重新设计,其他测试方法可能无效。
  • 漏洞扫描扫描安装在系统上的包,并将它们与漏洞数据库进行比较,以确定系统是否容易受到已知攻击。
  • 代码扫描有两种类型,静态和动态。静态代码分析是检查代码以寻找潜在弱点或缺陷的过程。动态代码分析是在运行代码上执行的,以查找诸如内存使用、性能问题或崩溃之类的问题。
  • 模糊测试注入随机、无效或畸形的数据,以评估程序处理错误和意外情况的能力。
  • 安全专家使用多种技术进行渗透测试以闯入目标。渗透测试通常用于针对网络安全目标执行最终验证,并捕获设计团队可能错过的任何内容。
posted @ 2024-12-01 11:56  Super_Snow_Sword  阅读(67)  评论(0编辑  收藏  举报