当前位置:福建企业之窗 >> 汽车 >> 文章正文

美国研发独立补丁系统 可解决汽车、卡车等工具的软件漏洞

发布于:2020-10-09 被浏览:3443次
  即使是最先进的汽车等车辆也隐藏着大量的电子设备,包括数百个处理器和数百万行代码,但虽然是分开设计的,但必须在引擎盖下协同工作好几年。
  图片来源:密歇根大学
  据国外媒体报道,美国, 密歇根大学的研究员巴里斯卡西基说,要让这样一堆系统保持更新而不出现安全漏洞是极其困难的。安全漏洞不仅威胁到车辆,还威胁到宇宙飞船、无人机和其他正在广泛使用的车辆。
  计算机科学与工程教授卡西基说:“这有点令人困惑。一般来说,您可以修复源代码中的错误,重建软件并重新部署它。但是这样的移动车的环境对这个车型是非常不利的,因为会有很多不同的软件,不同种类的电脑。”
  图片来源:密歇根大学
  卡西基正带领一个研究团队,研究一个叫Ironpatch的系统来解决上述问题。这个为期四年的项目旨在开发一个独立的补丁系统,以解决汽车和大型车辆(如卡车和航天器)日益严重的安全漏洞。
  Ironpatch与计算机系统上常见的软件补丁完全不同,后者是通过复制一个计算机系统,然后更改其源代码而生成的。接下来,需要对补丁进行测试,以确保它不会干扰软件的功能。之后用一个叫编译器的工具重建程序,把源代码编译成计算机可以理解的1和0。最后加载到电脑上。
  这个过程在计算机上运行良好,但对车辆系统几乎没有用处。对于测试来说,不可能生成系统的精确副本,编辑和重新编译可能会以不可预测的方式干扰复杂的代码网络。
  卡西基说:“将有数百个处理器运行不同类型的软件,以及不同人用不同语言编写的不同版本的软件。随着时间的推移,这个系统可能会发生变化,例如在航天器上添加一个新的组件来监控行星上的地面事件。以正确的方式复制所有系统确实是一项不可能完成的任务。”
  Ironpatch使用不同的方法,绕过源代码,直接对运行软件的二进制核心进行称为微补丁的小修改,从而消除了重新编译软件的需要。此外,因为所做的更改非常小,所以可以在不导致其他问题的情况下修复问题。Ironpatch是一个独立系统。一旦发现漏洞,系统将自动生成、验证和应用微补丁来消除漏洞,这也消除了将软件补丁上传到远程软件的需要。当系统位于数百万英里外的航天器上时,这是一个特别方便的功能。
  研究人员说:“我们经常假设软件开发人员可以访问源代码和复杂的车辆模拟环境。但是,有些情况会让这个想法不可行。我们看到,越来越多的人需要一种无需完整的模拟堆栈或原始源代码就能为易受攻击的软件部署补丁的技术。”
  为了避免为测试创建车辆系统的副本,Ironpatch将把原始软件和补丁版本转换成两个复杂的数学方程。然后Ironpatch会解这两个方程,数学证明这两个程序除了要做的修改外,功能完全一样。
  研究人员说:“既然我们没有系统的副本来测试补丁,我们需要用另一种方式证明这个微补丁不会改变系统的基本功能。所以我们用数学证明来分析二进制代码,结果显示打补丁的版本和原版本功能相同。”
  这个项目的目标是使成熟的系统能够在发现安全漏洞时自动生成和部署补丁,这样即使是最复杂的系统也不会失败。尽管该系统的第一个版本是为卡车和航天器设计的,但研究人员预测,类似的系统最终可能会应用于更广泛使用的系统,如汽车系统。将来,技术人员可以在不访问源代码的情况下诊断和修复计算机软件。
  研究人员说:“这项研究更广泛的影响是,软件可以直接用二进制代码打补丁,不需要编译和访问源代码等中间步骤。因此,该系统可用于提高汽车的安全性,甚至可用于智能家居组件或传统系统等其他类型的计算机。也可以进行审核,以保证软件的安全,工作可以按照软件的要求来完成。”