欢迎光临第五届中国汽车网络信息安全峰会2020!

汽车开发过程中的设计安全

发布日期:2020-07-07

GRCC IoVSecurity 今天 

手机阅读


点击上方蓝色字体,关注我们


在汽车领域,安全性变得越来越重要,尤其是对于新一代互联(半)自动驾驶汽车。在本文中,我将解释“设计安全”一词的基本概念。您还将学习如何开发安全的系统设计以及可能出现的其他安全挑战。我们走吧!


汽车已成为具有各种外部接口(如NFC,蓝牙,Wi-Fi或USB连接器)的“带轮计算机”。现在,大多数功能已通过软件实现。结果,整个系统容易受到恶意安全攻击,包括盗窃或篡改数据。


如果没有适当的安全概念,则很容易损害车辆的完整性和最终的安全性。为了开发和运输安全的车辆,制造商需要从汽车开发过程的早期阶段开始注意安全方面。


设计上的安全性是什么?


让我们看一下“设计安全”背后的基本概念和想法。


“在软件工程中,通过设计确保安全意味着从基础上设计软件就是为了确保安全。” (维基百科)


“按设计安全”原则很简单。必须从系统概念上考虑安全性,并且这种关注必须贯穿酝酿的所有阶段。” (IBM的John Palfreyman)


在车辆的开发过程中,需要在定义车辆核心功能和结构的开发的早期阶段考虑安全设计。


V-模型是构建汽车开发过程各个阶段的常用方法:



需求是开发过程的起点。需求可以包括系统的涉众定义的功能和非功能方面。


一个示例可能是要求通过4G移动通信信道(=功能)对ECU进行远程软件更新,而远程更新的最大持续时间为30分钟(=不起作用)。


某些要求可能具有很高的技术性质,并描述了例如在开发新功能时必须考虑的现有接口或运行时环境。其他要求来源也可以是规范性来源,例如安全或数据隐私法规。


根据最初的一组需求,系统的设计会不断发展。


基于模型的设计方法通过将开发中的系统(SUD)分解为功能,组件,连接和数据流来支持此过程。有关假设,例如关于系统的操作环境,也是设计过程的一部分。


尽管设计阶段的抽象水平仍然很高,并且通常是非正式的,但规范以更详细的方式定义了基本设计的所有方面。这包括例如功能到组件的映射,用于数据传输的特定协议(例如CAN或蓝牙)以及软件接口的特定方面。规范阶段的结果必须足够详细和正式,以成为所有硬件和软件组件的实现过程的基础。


汽车安全风险评估


我怎么知道设计是足够安全的?


由于没有**的安全性,因此设计的系统始终会涉及需要评估的特定风险。该风险必须等于或低于制造商认为可接受的阈值。


基于开发过程的前三个阶段,可以通过执行安全风险评估来建立系统设计的风险级别。这些要求通常已经包括对信息安全性,功能安全性或隐私相关规范的引用,例如ISO27001,ISO26262或GDPR。


在不久的将来,ISO / SAE 21434将适用于乘用车的安全开发。大多数规范建议甚至规定在开发过程的此阶段执行安全风险评估。安全风险评估调查了由于违反SUD元素的安全方面而引起的潜在损害。


安全方面通常包括机密性,完整性和可用性的安全目标。


但是,我们必须考虑哪些潜在的损失呢?


尽管数据隐私侧重于法律方面,但安全考虑仅侧重于驾驶员或乘客的潜在伤害或死亡。由于安全性会影响数据隐私和安全性,因此安全风险评估必须考虑法律损失和潜在伤害。


不良的安全设计所导致的其他损失也可能是财务性质的,例如,如果有价值的数据被盗。


安全问题也可能导致严重的服务降级,例如功能受限的车辆,甚至根本无法驾驶。从安全角度来看,这种固定的“安全状态”没有问题。但是,从制造商和乘客的角度来看,无法启动汽车是非常不希望的,应予以考虑。


除了查看潜在的损害外,还必须考虑产生负面后果的可能性。当查看系统的安全性方面时,可能性通常可以表示为统计概率,例如,在定义的运行条件下组件故障之间的平均时间(MTBF)。


这些可能性通常基于物理定律,并且在系统的整个生命周期内保持相当稳定。不幸的是,这种方法在确定网络攻击的可能性时不起作用。


为了获得安全的可能性感,潜在的攻击和对策开始发挥作用。成功进行攻击越容易,产生的损害就越可能发生。同时,可以采取控制措施或对策,使成功的攻击更加困难,因此可能性较小。


随着定期发现新的漏洞(例如,OpenSSL协议的“令人毛骨悚然”的漏洞),并且随着时间的流逝,黑客设备变得更强大,更实惠,所谓的攻击和对策风险因素实际上是动态的。


某些控制措施减轻了潜在损害和成功攻击的可能性的结合,为开发中的系统带来了潜在的总体风险。


安全风险评估的总体过程可以如下所示:


通过设计实现安全性–基于模型的迭代过程


在系统工程(包括汽车开发过程)中,建模系统已成为“**武器”,以应对日益增加的复杂性。因此,所提议的安全风险评估方法也是一种基于模型的方法,并考虑了相关的安全特定方面。


但是,与其他领域相比,在安全方面的建模中需要迭代过程更为明显。通过控制和对策来减轻已识别的风险必须将剩余风险降低到可接受的水平。


同时,诸如加密,密钥管理或安全硬件元素之类的控件必须具有成本效益。因此,安全风险评估和按设计的安全过程包括寻找最经济高效的方法来实现安全目标的任务。


这只能通过比较各种对策组合的影响并相应地调整要求和设计来在迭代过程中实现。


系统模型和对策相互影响。加密使攻击更难执行,因此可以成为有效的对策。同时,加密将对称或非对称密钥引入解决方案。这些密钥随后成为系统模型的一部分,因此也成为设计的一部分。


结果,密钥的生成,保护和管理成为系统模型和设计过程中安全性的组成部分。


汽车领域的其他安全挑战


假设设计过程成功,并且开发了具有足够控制和对安全系统对策的安全系统模型(需求+设计+规格)。我们还假设该实现是按照安全方式(例如安全编码准则)执行的。在开发过程中,没有向系统添加任何其他漏洞。随后的所有测试均成功完成,并将该车推向市场。


与技术系统的安全性相比,安全性环境是高度动态的。攻击者富有创造力和机智。每天都会发现并报告新漏洞。结果,车辆或部件的安全风险等级会随着时间的推移而变得不稳定,但是必须在系统的整个生命周期中定期进行重新评估。


对于特定的车型,这很容易意味着需要12或15年的连续风险评估工作!


一旦确定出高于可接受风险水平的风险,就必须采用新的对策或更新现有的控制措施。对于汽车行业来说,这是一个巨大的挑战!


因此,基于模型的安全风险分析方法不仅在车辆模型或组件的设计阶段至关重要,而且成为整个车辆生命周期中进行持续安全风险评估的基础。


总结


在汽车开发过程中,设计安全已经在需求阶段开始。在一个还包括设计和规范阶段的迭代过程中,安全系统设计得到了发展。


在几次迭代过程中,潜在的损坏和威胁被识别为基于模型的安全风险评估的一部分。在设计中添加了适当的对策,以确保使用经济上和技术上最可行的控件集达到所需的风险水平。然后,基于安全设计,对该系统进行实施,测试并将其推向市场。


合适的工具在整个建模过程中为安全分析人员提供支持,并确保考虑资产,损害,威胁和控制的所有依赖关系,并自动计算最终的风险水平。


在车辆的整个使用寿命中,原始系统模型和安全风险评估模型可用于应用更新的漏洞信息以及**的威胁和控制数据。


如果需要,可以对当前风险水平进行连续监视以计划软件更新或引入替代干预措施。借助适当的工具支持,车辆从一开始就以安全的方式进行设计,并在整个使用寿命内保持安全。


作者:Dirk Leopold | 来源:itemis


相关文章

车载网络安全数据可视化技术的设计与实现
未来的车辆:技术,趋势和下一步行动
Aptiv | 车辆概念设计阶段的网络安全与风险评估 .ppt






SELECTED EVENTS




 

长按二维码识别关注



我就知道你“在看”


  • 电话咨询
  • 15021948198
  • 021-22306692
None