信息安全驱动汽车行业快速向数字化转型

news/2024/10/6 3:33:46/文章来源:https://www.cnblogs.com/hirain123/p/18285843

       开发一款安全性良好的软件是困难的,它需要专业知识的积累以及对常见编程缺陷和规则的了解,例如检查输入范围、管理内存分配和回收、寻址字符串格式、避免悬空指针等等。通常情况下,编写安全代码与开发人员编写“流畅”代码的自然愿望形成了对比,开发人员更希望将编写代码的精力集中在正确的业务逻辑上,而非集中于保证编写的每一行代码是否安全上。

 

       在日常实践中,大多数软件的漏洞源于一小部分编码错误,经过多年的开发实践均能得到改善。平均来看,每1000行代码中仍然存在40-70个错误,这些错误中的一部分将导致可利用的安全问题,而这也是行业中普遍存在的问题。但是对于部署了数千万行代码的产品而言,这可能很快就会导致系统安全性受损。

 

       漏洞通常被定义为 “一个可以被不法分子利用的缺陷”。如果把漏洞透明化的概念引入软件世界就很容易受到启发,比如在汽车产品本身安全的情况下,产品被部署到在设计上就不安全的环境中使用会发生什么情况呢?这将导致产品安全难以得到保证。作为制造商,你无法控制你的产品在哪里被使用、如何被使用、它们将与哪些系统连接、谁在使用它们、或者谁可能获得对它们的访问,无论是有意还是恶意的。在这种环境下,管理代码中的漏洞这一任务就变得至关重要。

 

那么汽车行业的安全挑战都有哪些呢?

 

· 开发惯例

       汽车软件开发大约已有50年的历史,汽车的生命周期至少是12年,汽车平台每5-7年就会更换一次,但大部分遗留的硬件和软件都是从一个平台转移到另一个平台。汽车开发人员主要使用C和C++作为开发语言,虽然这两种语言灵活性很高,但是它们从设计上就不安全,也没有提供任何可以防止将安全漏洞引入系统的保护措施。尽管通过引入编码标准(如MISRA-C)已经做了一些工作来确保编码的安全性,但这些指导方针很难强制执行,并且在一些富操作系统中遵守这些指导方针是不现实的。

 

· 供应链

       汽车行业的分布式开发实践是独特的,它有多层的供应商,每个供应商都为更高层次的系统集成提供软件集成。一辆汽车可能有50-150个不同的计算单元,由10-20个不同的供应商提供。而供应商提供的这50-150个不同的计算单元中,每个组件可能又有多个CPU、几十个外围硬件组件和大量的软件包。有了这么多第三方代码,且考虑到OEM实际上只负责实际编码的一小部分,这也就使得软件的不透明性成为常态,令制造商很难评估其安全性。

 

· 开源软件(OSS) 

       面对日益增长的客户需求,更快、更灵活的开发模式驱动成为众望所归,原始设备制造商和供应商越来越多地引入开源软件,并整合了大量的开源库。这种对开源软件的依赖导致了另一个安全问题的恶化。

 

那么面对这些问题,如何监管才有效呢?

 

       近几年来,汽车行业内相继发布了多项标准,ISO/SAE21434是SAE J3061的延伸、联合国欧洲经济委员会(UNECE)、WP.29车辆法规协调工作小组也制定了法规以满足OEM和制造商的需求:当涉及到汽车网络安全时,OEM和制造商必须满足法规要求后才能颁发汽车型号认证,否则汽车就不能出售。ISO标准和WP.29的工作都包括一项指令,即在汽车生命周期中持续管理和监测漏洞。

 

       拥有一个明确和规范的流程是推动车辆安全状况改善的一大步。但仅有流程是不够的,仍需要汽车行业自身进行安全数字化转型。在软件日益复杂的现实中,规模化管理漏洞带来了多种挑战。

 

· 可见性

       按照传统来讲,汽车工业是根据功能部件的概念来进行组织的。因此,原始设备制造商已经优化了内部资产管理系统来管理供应商的零件,但这些零件的内部软件组成却很少可见。这些系统在管理硬件组件(以及机械部件)级别的复杂供应链分配方面非常出色,但在软件级别的问题上却收效甚微。通常情况下,产品安全团队面临的最大挑战是需要深入了解系统上的漏洞和威胁,而它们很少有内部可见性。

 

· 相关性

       另一个挑战是 "去除噪音"。NVD是软件漏洞的主要来源,每年有超过16,000个CVE,其中90%以上在汽车行业没有应用。但如果没有先进的软件将数据与实际的车辆联系起来,安全团队就会花费相当多的时间来处理成千上万的漏洞,最终很有可能面对的是大部分漏洞和当前产品不相关的窘境。

 

· 可追溯性

       在一个组件或开发程序中发现的漏洞很可能与其他组件或开发程序有关,但由于团队可能是在孤军奋战,无法在多个项目之间协调程序,对于安全同事而言很难了解其整个开发范围。

 

· 可操作性

       安全团队的一项关键任务是管理开发工作,以消除漏洞并不断改进系统的状态。对于不同的个人和完全不同的组织结构,如果不以有组织和可扩展的方式进行管理,管理难度会很大。

 

       以上谈到的所有挑战都强调了汽车行业安全数字化转型的必要性。从业者们逐渐认识到“人+机器”的方法对于保持安全所需的规模的重要性,同时也认识到了引入自动化技术实施标准和法规要求的信息安全活动对于推动行业安全数字化发展的利害。

 

       经纬恒润针对ISO/SAE 21434、WP.29 R155等法规进行了深入研究,结合多年功能安全、信息安全经验,可以为客户提供信息安全全流程解决方案。依托自动化工具和咨询服务,助力客户建立完备的信息安全流程体系,在信息安全设计、软件开发、硬件设计、漏洞扫描、测试验证方面为客户赋能,保证软件源码级、部件级以及整车层面的安全。

 

 

 了解更多:

       请致电 010-64840808转6116或发邮件至market_dept@hirain.com(联系时请说明来自博客园)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/738773.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java进阶:HashMap底层原理(通俗易懂篇)

1.底层结构 Java 7及之前版本 在Java 7及之前的版本中,HashMap的底层数据结构主要是数组加链表。具体实现如下:数组:HashMap的核心是一个Entry数组(Entry<K,V>[] table),这个数组的大小总是2的幂。每个数组元素是一个单一的Entry节点,或者是一个链表的头节点。链表…

各类问题p~np

可以简单用下图来表示 p类问题指的是可以在多项式时间求解的问题,例如n个数的排序问题,复杂度最多为O^2 np类问题指的是可以在多项式时间验证答案的问题,例如求n个点的图是否有哈密顿路,最坏情况需要(n-1)!,但是验证是否为哈密顿路是多项式时间 nph类问题是任意np类问题在…

面试必会之Redis篇

01- 你们项目中哪里用到了Redis ? 在我们的项目中很多地方都用到了Redis , Redis在我们的项目中主要有三个作用 :使用Redis做热点数据缓存/接口数据缓存 使用Redis存储一些业务数据 , 例如 : 验证码 , 用户信息 , 用户行为数据 , 数据计算结果 , 排行榜数据等 使用Redis实现分…

linux部署cassandra

Cassandra数据库是一个高度可扩展、分布式的NoSQL数据库系统,最初由Facebook开发,用于处理大规模数据集并提供高可用性和高性能。随着其开源和广泛应用,Cassandra已经成为Apache软件基金会的一个顶级项目。以下是关于Cassandra数据库的详细介绍: 一、基本概述类型:Cassand…

【设计模式(五)】创建型模式--建造者模式

创建型模式的主要关注点是“怎样创建对象?”,它的主要特点是“将对象的创建与使用分离”。这样可以降低系统的耦合度,使用者不需要关注对象的创建细节。概述:建造者模式注重的是部件构建的过程,意在通过一步一步地精确构造创建出一个复杂的对象。 建造者(Builder)模式包…

结合RNN与Transformer双重优点,深度解析大语言模型RWKV

RWKV在多语言处理、小说写作、长期记忆保持等方面表现出色,可以主要应用于自然语言处理任务,例如文本分类、命名实体识别、情感分析等。本文分享自华为云社区《【云驻共创】昇思MindSpore技术公开课 RWKV 模型架构深度解析》,作者:Freedom123。 一、前言 Transformer模型作…

VMware vSphere Tanzu部署_16_TKC集群节点VM密码获取

SupervisorControlPlaneVM密码获取 通过SSH方式登录vcentervcenter开启SSH服务通过SSH工具登录vcenter执行获取密码脚本在vcenter shell模式下执行/usr/lib/vmware-wcp/decryptK8Pwd.py命令WARNING! The remote SSH server rejected X11 forwarding request. Connected to serv…

空洞文件

实际上这些数据并没有被存储在磁盘上。当创建一个空洞文件时,文件系统会记录这些“空洞”,但并不会在物理介质上实际分配和保存未使用的空间,从而节省了实际的存储空间。 举例来说,如果你创建一个大小为1GB的空洞文件,其中写入了大量的零字节据,实际上只有少量的数据(例…

Box,一个字典操作python库

Box介绍 Box 是一个让字典操作变得异常简单与直观,支持通过属性访问字典内容的库。特点概述属性访问Box 允许用户像访问对象属性一样访问字典的值,提升了代码的可读性和易用性。无缝嵌套自动将嵌套的字典转换为 Box 对象,使得处理复杂字典结构变得轻而易举。灵活性强支持多种…

(四)JS逆向——中国观鸟网

爬取观鸟网的信息 有sign值,timestamp和requestid,要看这些值是怎么生成的 载荷有加密的数据 返回值也经过加密 搜索requestid,找到了eval加密的代码,通过解密,就能找到生成这些值的代码段 代码格式化后,找到了这几个值的生成位置 requestid的生成是随机值,timestamp是时…

vscode插件安装好用

本文来自博客园,作者:prince11,转载请注明原文链接:https://www.cnblogs.com/prince11/p/18285764