中文 英语

汽车通信网络即将大修

随着汽车自动化程度的提高,安全风险正变得越来越大;修复和替代方案正在进行中。

受欢迎程度

控制器区域网络(CAN),汽车的主要通信网络之一,正在进行安全检修——如果不是大规模更换的话。

最初设计于20世纪80年代,允许车辆中的电子部件直接通信,中间没有中央计算机CAN总线随着越来越多的功能被自动化并集成到中央逻辑系统中,已成为一个日益严重的安全风险。它已经成为了许多引人注目的安全攻击的对象,黑客已经能够控制车辆并启动其刹车,而且随着自动驾驶水平的提高,威胁只会越来越大。

现代CAN总线连接数十个电子控制单元(ecu),每个单元由一个电子控制单元组成单片机负责特定车辆功能的操作,如安全气囊、防抱死制动、巡航控制或电动窗。将所有这些功能相互连接,可以实现各种便利和安全功能,例如在驾驶员倒车时自动启用后视摄像头,或者在接近传感器检测到障碍物时自动制动。然而,CAN总线在设计时从未考虑到安全性。

“CAN缺乏一些基本的安全特性,比如消息认证和设备认证,并且很容易受到DOS(拒绝服务)、欺骗和MITM(中间人)攻击,举几个例子,”该公司的技术产品经理Thierry Kouthon说Rambus安全。“现代汽车有80到100个ecu,高端汽车多达200多个,这加剧了问题。最近对自动驾驶汽车的大肆宣传,使人们迫切需要解决这个问题,因为它的攻击面越来越大。CAN有几种替代方案,但它们在可靠性、带宽或价格方面改进了CAN,而不是安全性。”

这些替代方案包括本地互联网络(LIN)、面向媒体的系统传输(MOST)、FlexRay和汽车以太网。

CAN来自于一个安全不被认为是必要的时代。的首席技术官加金德·帕内萨(Gajinder Panesar)说:“没有理由认为有人会来黑你的吉普或特斯拉。UltraSoC.“经典的CAN攻击的核心是没有源信息,也没有完整性——因为没有数据的签名。实施协议和拒绝服务攻击非常容易,这在汽车行业可能是灾难性的。”

提高车内安全性需要从ECU的角度来解决。Rambus的Kouthon强调说:“由于不能完全依赖相互连接的车辆网络,因此必须确保ECU经过强化,以提供安全处理和运行时代码完整性、ECU认证、消息认证、数据机密性、防篡改身份等。”“确保这些安全属性需要一个被称为信任根的强大基础。一刀切的方法是不全面的,因为ecu可以大致分为三类,价格非常不同:1)传感器是商品化的低成本单元,2)内部功能ecu,如发动机控制,相对复杂,有很强的安全要求,3)高性能ecu,可以实现车辆与外部世界的通信,需要最高级别的安全,如头部单元或中央网关。”

此外,已有30年历史的CAN总线从未打算用于面临网络安全攻击的系统。“有很多报道的漏洞利用CAN总线的缺点,吉普黑客可能是最著名的,”塞尔吉奥·马尔切斯说,技术营销经理OneSpin解决方案.“一些基本的问题是消息对所有总线主机和外围设备都是可见的,并且没有规定来确保信息的机密性和真实性。可以在ECU级别上采取缓解对策,例如,使用旨在检测和阻止可疑总线交通的ip。或者他们可以使用硬件安全模块来加密和验证总线上的消息。”

迈克·博尔扎,首席安全技术专家Synopsys对此表示同意。“总体而言,CAN的设计远早于人们将汽车视为联网设备。把它连接到互联网上的想法当时还没有人想到——至少没有人在设计汽车和汽车电子设备。那时还没有互联网,但已经很接近了。当然,当人们用1200波特的调制解调器连接到互联网时,把你的汽车连接到那里的想法并没有出现在任何人的雷达上——除了科幻作家。我们现在能在这里的想法真的不是人们所想的。此外,汽车总是被认为是它自己的私人物品,即使你有收音机进入它,它们也不会真正连接到与驾驶有关的任何东西。这是一种娱乐方式,也许只是让你打个电话。但多年来,这也是科幻小说。”

这在今天提出了一个问题,因为将安全性改造到总线架构中比从一开始就设计它要困难得多。博尔扎说:“当东西连接到CAN总线这样的网络时,带宽很低,协议是专有的,它们有点像黑魔法。”“因此,很难获得关于CAN总线是什么,它在做什么,它是如何工作的信息。这被认为是任何人都需要的安全保障。它的意思是说,‘我们不会告诉你如何工作,你永远也不会弄清楚。但事实并非如此。人们很聪明地知道发生了什么。他们可以观察流量并进行大量分析。从本质上讲,这就是许多细节泄露的原因——加上它非常成功并广泛应用于汽车的事实。这意味着在行业中也有很多关于它的标准文档,这些文档最终泄露了出去。这就是协议本身不安全的原因。 It doesn’t make any pretense to be, but then it’s not even private anymore. It’s not a closed shop.”

Arm汽车与物联网业务线汽车解决方案和平台高级经理Paul Kopp指出:“现在车辆正在互联,我们正朝着提高自动驾驶水平的方向发展,确保适当的安全水平对于保护乘员以及其他道路用户的隐私和安全至关重要。虽然CAN总线最初是在20世纪80年代开发的,但在设计之初并没有考虑到我们今天面临的安全挑战,但Arm合作伙伴和更广泛的生态系统正在部署技术,以补充CAN总线,满足当今车辆所需的安全级别。与此同时,该行业也在新车型中部署更新、更安全、更强大的网络技术。”

在现有的CAN总线上覆盖一个安全层是可能的,一些公司已经这样做了。但这并不像在CAN总线周围建立防火墙那么简单,这种尝试已经失败了。

“只要你连接它,人们总是问,‘为什么汽车收音机连接到CAN总线?为什么我可以在仪表盘上控制它?答案是,许多车辆控制都集成在这个面板上。”“与无线电工作的相同控制也与CAN总线工作,以提高或降低温度。如果它是一个CAN总线——而汽车中没有一个CAN总线,它是分层的——你可以得到关于你的车辆服务状态的信息。你有时可以控制像悬挂设置这样的东西。但这意味着在汽车的前面板,汽车的平板屏幕和实际控制这些东西的ecu之间有一条通路。这就是人们一直在利用的东西——事实上,现在有更多的软件在汽车上运行,而且这些软件人们都很熟悉,甚至是专有的东西。此外,我们现在在新车上至少安装了3G网络,这意味着有很大的互联网连接带宽,要找到如何针对一辆车甚至连接到它们的服务并不难。因此,也许CAN总线将走到车辆生命的尽头,这并不一定是件坏事。”


图1:带电电平的基本格式CAN帧。绿色代表唯一标识符,它建立消息优先级;蓝色是远程传输的请求;黄色为数据长度码;红色为数据字段大小。来源:维基百科,Cc by-sa 3.0

从安全
CAN总线或替换系统对于确定启动车辆时是否存在潜在问题至关重要。这类似于飞机在离开登机口之前进行系统检查。

博尔扎说:“当你启动电源,重启后,它是第一个应该被唤醒的子系统之一。”“现在,它也需要安全运行。我们仍处于曲线的早期边缘。它落后了。严格的安全标准现在正在整个行业得到执行和广泛应用,这在以前是不可能的。我将其称为关于安全边界的错误假设,以及它们存在的位置相对于其他被认为是非安全关键的功能。人们现在正开始处理这些问题,因为有一个前面板,现在使用软控制来操作汽车ECU基础设施的部分。这无疑成为他们的攻击点。使用在处理器其他地方运行的软件来攻击这些东西是非常可行的。”

软件是安全包的关键部分。“进一步说,如果你有安全软件,你需要知道那里正在运行的是应该在那里运行的,它没有被修改,它在高水平的保证下正在执行它应该执行的功能。这对飞行器的持续安全运行至关重要。人们在开发这类软件方面做得越来越好,他们开始尝试更系统地去除其中的缺陷。质量缺陷与安全性有直接的关系,因为当有人攻击系统以闯入系统时,这些质量缺陷经常被利用。如果你创建了一个缓冲区溢出,让你访问你想要的东西,这就是你要做的。我们不可能创造出这样的东西,而更好的质量控制工具和更好的设计范式有助于防止这种情况的发生。在这些复杂的软件系统中,要设计出保证没有漏洞的东西是非常非常困难的。”

库尔特·舒勒,营销副总裁Arteris IP,同样从一开始就强调了am架构的安全性需求。“在尽可能低的水平上尽可能多地做事情,因为那是你以后拥有最大控制权的地方。如果你以后要用软件来做所有的事情,还是有办法解决的。如果你有硬件层面的东西——这是涉及到互连和防火墙的地方——如果你有物理机制来阻止在某些用例中不应该存在的流量,并且你可以在以后有新的用例时控制它,你就有了保障。但它必须构建在一个整体架构中,其中最小的部分是SoC晶体管。这就相当于防火墙,要么给可疑数据下毒,让它通过,要么向系统发出中断,告诉系统‘嘿,我被黑客攻击了。’”

其中很多都是在互联中捕获的,它可以像计算机中的防火墙一样工作。Shuler说:“每天可能有数百万人攻击你的防火墙,试图闯入你的电脑,但通常没有人能通过。”“这里的情况也一样。不是数百万,因为这是一个封闭的系统,可能只有几个,但这就是为什么你有那些防火墙。但这必须作为整体安全战略的一部分。”

从Arm的TrustZone中学到的一些东西在这个案例中非常相关。他指出:“汽车厂商可以从消费电子产品和移动电话厂商的安全角度学习一些东西,例如运行Netflix。”“你必须经过一个认证过程,因为对于数字版权管理,每个将自己的内容授权给Netflix的人都必须得到Netflix的保证,如果你在这款手机上运行它,就不会有人窃取它,并把它放在BitTorrent上。他们必须经历很多事情,以确保这些东西设计正确,更难被破解。来自消费电子产品的知识是有价值的,尽管安全漏洞的影响是不同的。一种是你赔钱了,因为有人偷了你的电影。另一种是车子出了问题。效果是不同的,但技术保障措施是相似的,因为你在硬件和软件证书中签名,以确保你上传的软件是正确的,没有人入侵它或固件。”

一个好的安全体系结构会清楚地说明什么时候不应该传输数据。随着安全在这一领域的发展,更多这类响应将需要自动处理。

“如果你看看功能安全,有ISO 26262,它定义了一种开发汽车电气系统功能安全的公式化方法,”该公司集成电气系统部技术营销工程师Brendan Morris说Mentor是西门子旗下的企业.“针对网络安全已经制定了类似的标准,采用类似的哲学方法来建立最佳实践,并确定风险评估中需要考虑的事项,以及OEM应该经历的流程步骤以及软件和系统开发的考虑因素。SAE已经发布了类似的标准。ISO标准更多地介绍了您需要采取的正式流程步骤,但并没有明确规定您需要做什么。对于OEM来说,它具有移动的自由,可以解释为他们的生产开发过程。我们开始看到越来越多的正式流程融入其中,原始设备制造商现在拥有专业知识,因此他们可以自信地完成自己需要做的事情,即车辆上的哪些功能确实需要严格保护,哪些功能在发生故障时只需停止。”

解决问题
归根结底,CAN最大的安全问题是它在协议中没有对身份验证的内在支持。接收者不知道信息的真正来源。

Canis Automotive Labs首席技术官Ken Tindell表示:“任何劫持ECU或直接访问线路的人都可以欺骗信息,让ECU做几乎任何事情。“到目前为止,人们关注的焦点一直是身份验证的加密解决方案与安全网关相结合,试图从一开始就让黑客远离CAN。但这也带来了一系列次要问题,比如安全密钥分发,以及一系列新的弱点,比如网关软件中的漏洞。真正需要的是通过使用硬件直接解决CAN协议级别的安全性,并避开软件漏洞问题。”

恩智浦已经通过其安全CAN收发器做到了这一点,该收发器包含CAN id的允许/拒绝列表,Canis汽车实验室已经设计了硬件,将真实源的详细信息注入CAN帧的带外空间,以便可以直接检测和停止欺骗帧。

另一种方法是消除车内不同ecu之间的通信需求,以实现更高级别的功能。OneSpin的Marchese表示:“麦肯锡最近的一份报告指出了汽车电子领域的一个关键趋势,即很少有dcu(域控制单元)取代大量的ecu。“这意味着从许多独立的、专门的组件(ecu),它们自己的软件通过CAN总线连接到一个更集中的架构,在这个架构中,软件可能会以完全不同的方式获得。”

结论
尽管有这些新想法,但今天道路上的许多车辆并不安全。

Tindall说,线束和电子设备都是固定的。“汽车中最大的两个安全漏洞是信息娱乐系统和OBD-II连接器,OBD-II连接器直接连接到主车辆CAN总线是非常常见的。今天,我们甚至有保险公司敦促客户安装他们的OBD加密狗,从理论上讲,某种安全网关可以进行改造,以限制通过连接器可以做的事情。但我不认为司机会有足够的动力去安装它。这实际上只是物联网安全问题的一个案例研究。任何人都没有动力去制造安全的产品。虽然CAN是一种早在我们将汽车连接到互联网之前就设计好的旧协议,但我们有可能加强它的防御,并在相当长一段时间内继续使用它。”

与此同时,人们越来越认识到,安全与保障日益紧密地联系在一起。

博尔扎说:“这是一个重大转变。“这个行业花了很长时间才走到这一步,但他们终于开始朝着更好的汽车安全方法和联网车辆的安全影响迈进。如果我们要进入下一阶段,朝着半自动和自动驾驶汽车的方向前进,这是至关重要的。这是唯一能让我们所有人都有一个安全环境的方法。”



1评论

Holger Zeltwanger 说:

你好,安,非营利性CiA(自动化中的CAN)协会正在开发带有嵌入式身份验证的CAN XL安全协议。这部分是第三CAN数据链路层协议,昵称为CAN XL。第一代现在被称为经典CAN,第二代是CAN FD协议。如需更多信息,您可以与我联系。

留下回复


(注:此名称将公开显示)

Baidu