Github框架地址:https://github.com/uptane/uptane-standard
Uptane是面向汽车行业的提供软件在线更新时的安全体系框架。该框架可以阻止恶意行为者的攻击,这些恶意行为者可以破坏用于签名和交付更新的服务器和网络。因此,它旨在甚至抵御民族国家攻击者的最大努力。有多种不同的免费开放源代码和封闭源代码实现。Uptane已集成到汽车级Linux中,这是许多大型OEM当前使用的开源系统,并且也被许多美国和国际制造商采用。
它的设计方式使得在OTA时的安全性不会立即降低,而是遵循一个层次结构,在层次结构中必须获得对车辆或汽车制造商基础设施的不同级别的访问权限。通过将这些级别构建到安全系统中,即使攻击者破坏了服务器,贿赂了操作员或获得了对车载网络的访问权限,也可以防止攻击者对车辆造成多种类型的伤害。
同样重要的是,Uptane提供了一种在软件更新安装到控制重要组件(例如,制动器和门锁)的连接单元上之前进行身份验证的方法,尽管存在对抗性干扰,通过这些方法,Uptane提供了一种解决方案,可以应对汽车和卡车在OTA时不断增长的威胁-伪装成更新软件的恶意软件。
Uptane框架非常灵活,可以并入OEM已使用的现有类型的软件更新策略中。无论是最终用户使用闪存驱动器更新自己的车辆,还是OTA方式,还是使用包管理器进行自动化操作,所有这些都可以从Uptane的安全性中受益,而运营开销却非常低。
Uptane是在美国国土安全部的资助下开发的开源软件,任何人都可以完全免费使用。它是由纽约布鲁克林的纽约大学坦顿工程学院,密歇根州安阿伯市的密歇根大学交通研究所和德克萨斯州奥斯汀的西南研究所的一组研究人员创建的。
2017年,《科普杂志》将Uptane评为2017年最重要的安全发明之一,Airtanquity的OTAmatic程序(其中Uptane是关键安全组件)获得了新产品类别的BIG商业大奖。在2018年,工程NYU坦登学校成为一个准成员的的Linux基金会,以及成员汽车级Linux项目,部分原因是该基金会的采用Uptane技术。
2018年7月,在IEEE/ISTO下成立了非营利组织Uptane Alliance,负责领导Uptane研究,开发和部署的未来方向。一年后,联盟发布了Uptane标准的第1.0卷,用于设计和实施。Uptane现在在法律上被称为Joint Development Foundation Projects,LLC,Uptane系列,并且在Linux Foundation的主持下继续开展工作。该小组的主要任务仍然是担任中立的仲裁员,以监督Uptane的正式标准化,并总体上为汽车行业提升软件更新的安全性。
Uptane防御的攻击类型可以分为四类,此处按严重性递增的顺序列出。
阅读更新:此处的目标是盗窃知识产权,因此这些攻击者旨在阅读软件更新的内容。通常,这是通过窃听攻击实现的,攻击者可以读取从存储库发送到车辆的未加密更新。
拒绝更新:在这组攻击中,目标是通过使用几种攻击策略之一拒绝对更新的访问来防止车辆修复软件问题。
掉线请求攻击:阻止车辆外部或内部的网络通信,以防止ECU接收任何更新。
缓慢的检索攻击:减慢了更新到ECU的交付时间,因此可以在接收到正确的补丁程序之前利用已知的安全漏洞。
冻结攻击:即使存在较新的更新,也会继续将最新的已知更新发送到ECU。
部分捆绑安装攻击:通过将流量丢弃到选定的ECU,仅允许安装更新的一部分。
拒绝功能:此组合通过导致车辆无法通过以下方式之一运行来进一步加剧威胁。
回滚攻击:诱使ECU安装具有已知漏洞的过时软件。
无休止的数据攻击:通过向ECU发送无限数量的数据直到存储空间用完,导致ECU崩溃。
混合捆绑攻击:通过导致ECU安装不能同时安装的不兼容版本的软件更新来关闭ECU。攻击者可以通过向不同的ECU同时显示不同的捆绑包来实现此目的。
混搭攻击:如果攻击者破坏了存储库密钥,则他们可以使用这些密钥来释放新版本映像的任意组合。
控制:最后也是最严重的威胁是,通过用恶意软件程序覆盖ECU上的软件,迫使ECU安装攻击者选择的软件,从而放弃对该单元的控制。这意味着攻击者可以通过任意软件攻击来任意修改车辆的性能。
Uptane安全框架设计
Uptane利用多个服务器(称为存储库)通过在下载之前验证镜像来提供安全性。该图说明了该系统的实现机制。图右侧的已连接组件在车辆上,而左侧的组件则表示存储库。图像存储库可以被视为关于镜像的不变信息源。它是OEM当前部署的每个镜像以及证明其真实性的元数据文件的维护者。鉴于存储库的当前状态,Director存储库知道应向每个ECU分发什么软件。由于许多ECU没有时钟,因此时间服务器以加密安全的方式通知车辆当前时间,
在更新过程的第一步中,ECU将其车辆版本清单发送到Director存储库。清单包含有关现有镜像的签名信息。Director使用此输入选择下一步应安装的镜像。然后将元数据和镜像移至ECU,ECU将运行验证过程。该图显示了一个主ECU连接到多个辅助ECU。ECU通常按照对存储空间,内存,电源和直接Internet连接的访问方式分类。验证的形式(完全或部分)也基于ECU的资源以及其安全性的重要性。如果验证没有问题,则可以将镜像下载到ECU,并且将更新车辆版本清单。
Uptane的演变
为了满足所列举的威胁类型,Uptane从更新框架(TUF)的基本设计入手,该框架和规范已被证明可以成功地保护存储库中的软件更新系统。Justin Samuel,Nick Mathewson,Roger Dingledine和Justin Cappos在2010年的论文中首次介绍了基本的TUF设计。自2011年以来,在纽约大学丹东工程学院Cappos的指导下,TUF进行了调整,可以防御各种类型的软件应用程序的威胁。
TUF的中心原则是妥协弹性,或使任何给定攻击所构成威胁的程度最小化的能力。这种状态的基础是四个设计原则。
信任分离:分配元数据签名的责任,因此,如果一个签名密钥被泄露,则不会影响其他用户。
阈值签名:要求在下载更新之前必须收集固定数量的签名以证明文件的真实性。
密钥的显式和隐式撤消:提供一种替换受损密钥的机制,以使恶意团体无法继续对元数据进行签名以验证恶意软件。
使最易受攻击的密钥保持脱机状态:强制某些签名密钥保持脱机状态,从而使它们更难于窃取或破坏。
但是在开发的早期,研究人员意识到他们不能仅仅将TUF直接应用于ECU。在车辆上固定ECU的一个问题是其功能不一致。使ECU与计算机或其他智能设备区分开的许多其他问题使该问题更加严重。
他们不是单一客户。
他们不是特别聪明。
各个组件彼此不信任。
考虑到这些问题以及行业代表的其他担忧,Uptane以几种方式修改了TUF的基本设计。第一个是添加第二个存储库,该存储库将人员和责任划分为验证过程的不同方面。如上面的简要描述中所提到的,镜像存储库精确地存储了OEM维护的所有车辆上当前所有ECU上的所有镜像以及相应的元数据。该存储库使用脱机密钥对所有元数据进行签名,从而使攻击者更难替换受感染的镜像。该主任信息库可指示车辆接下来应安装哪些更新,该信息库使用在线密钥对其元数据进行签名,从而使周转更加轻松快捷。通过合并两个存储库,OEM可以为其车辆上的控制单元提供可定制性和安全性。
对基本TUF设计进行的另一种修改与Uptane验证镜像的方式有关,这意味着用于提供控制ECU动作的代码和数据的介质。在验证步骤中,ECU通过检查其随附的元数据来确定文件是否可以安全下载。如上所述,ECU可以根据其功率使用两种不同的验证策略。验证可以是完整的,这需要检查已签名的元数据中的镜像的哈希值和大小是否与存储在图像存储库中的哈希值和大小匹配,或者是部分验证,这仅需要检查director存储库中目标元数据文件上的签名。
完全验证可为具有存储和存储能力以执行该程序的那些ECU提供更好的保护。但是,由于即使资源最弱的ECU也可以通过较少占用资源的部分方法获得一些保护,因此整个系统的安全性得到了提高。
来源:goonthink智能汽车技术
原文链接:https://www.xianjichina.com/news/details_235658.html
来源:贤集网
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。