车载操作系统信息安全架构

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
访问控制,不限时长
简介: 本次分享的主题是车载操作系统信息安全架构,由中兴通讯操作系统产品部张兵分享。主要分为以下四个部分:1. 背景2. 现状3. 实践4. 展望

车载操作系统信息安全架构

内容分析

1. 背景

2. 现状

3. 实践

4. 展望

 

各位领导,各位专家,下午好,今天非常荣幸的给大家汇报团队在车载操作系统信息安全方面所做的工作。

分享主要分为四个部分,第一部分是车载操作系统目前在信息安全方面的背景情况,第二部分是现状,第三部分是团队在车载操作系统信息安全方面所做的工作,最后介绍安全方面的展望.

 

01.背景

 

1.1汽车信息安全威胁

从智能化和网络化发展来看,信息安全方面威胁非常多。

首先是2015年两个美国的白帽黑客成功入侵了一辆吉普车,通过网络入侵系统之后向发动机、变速箱自动转向系统发送错误指令,最终让车驶入错误方向。这个事件引起的后果非常严重。达州克莱斯勒公司召回了140多万辆汽车。

第二个入侵的例子是荷兰的两个研究员对大众、奥迪进行漏洞挖掘,发现车载移动系统存在着漏洞,可以利用漏洞通过网络发送 CAN 报文,实现了对车上的零部件,包括中央屏幕、扬声器和麦克风等装置的控制。

最近的例子是2023年法国的研究员在黑客比赛中对特斯拉 Module 3入侵,利用特斯拉的漏洞,实现了对特斯拉一些部件的控制,最终一系列安全事件。车的操作系统的安全尤其重要,除了引起经济上的损失之外,最重要的是会引起大众的生命安全。

 

1.2汽车信息安全态势

图中是去年对目前汽车信息安全方面的分析。

第一个是攻击事件的类型分布,绝大部分是通过扫描探测系统有无漏洞,对漏洞的应用处理。

第二个方向是立马爆破,对系统的密码爆破,获取密码之后,通过密码入侵系统。

第三个是远程连接攻击。通过网络远程连接实施贡献。第四个是强制访问控制防火墙。车载漏洞方面,高危漏洞发现408个,超危漏洞29个,中危漏洞400多个。每年操作系统上暴露的漏洞很多。攻击事件占比方面,系统漏洞的攻击最多。车载攻击方面,主要对整车业务的攻击占了绝大部分。

 

1.3汽车安全标准法规

汽车安全标准法规是最早的一个是2155汽车信息安全法,联合国车辆法规论坛发布,2020年颁布了草案,2155是针对汽车网络安全的法规,主要是对汽车网络安全方面的风险管理,危险评估以及相关的技术标准。22156是对汽车的软件更新升级的标准,主要是保证软件的更新安全。22157是对前面两个法规的安全测试过程的描述。通过以上三个法规说明了汽车在信息安全上的标准。法规在2021年正式生效。ISO以及美国汽车工程协会发布的道路汽车安全21434,最终发布是2021年。国家标准的汽车整车的信息安全技术在2024年正式发布,这是国家对汽车整车的安全要求。汽车网联和智能化是一整套安全技术。最后的法规是汽车工程与协会的,主要针对车控操作系统,主要是功能安全也包含信息安全的法规,在2022年正式发布。

 

02.现状

 

2.1车载操作系统信息安全概念

所有的操作系统对车载操作系统安全主要是指哪方面?操作系统安全和车载操作系统安全有什么差别?先介绍操作系统,保护整个操作系统面对恶意软件、黑客攻击和数据恶意泄露。

操作系统的安全主要是三方面:

第一方面是机密性;

第二方面是完整性;第三个方面是可用性。

车载最主要的有四大部分:

第一部分是未授权的访问和控制,介绍威胁时大部分都是通过对漏洞的技术,取得非法授权,控制汽车导致一系列安全事件。本身操作系统的身份验证和权限管理机制不够完善,存在漏洞,所以会导致未经授权的控制和访问,攻击者利用这方面对汽车进行非法操作。

第二部分是恶意软件和垃圾软件,通过各种途径进入操作系统,一旦被激活之后,主要导致数据泄漏、系统瘫痪、数据异常,严重时可能导致车辆失控。

第三方面是软件供应链。现在车载智能化、无人驾驶会引入很多第三方软件中间平台,在车载操作系统中提供了很多潜在的工具入口。如果在第三方的软件和恶意软件提供了恶意代码,整个操作系统安全将受到威胁。

最后介绍到安全系统的恶意漏洞,操纵系统每年出现很多漏洞,攻击都是利用安全漏洞进行攻击。

 

2.2车载操作系统信息安全演进

车载操作系统的安全演进分为以下阶段。

最早是整个操作系统的主机安全,基本的安全机制比如用户权限的管理、登录、认证、健全、 DAC 文件的访问控制权限、日志记录等等最基本的安全手段。

第二阶段是网络安全,主要是建立安全网络架构,使用安全协议,保证数据传输安全,防火墙技术,网络身份的健全和访问控制。

第三部分是整个系统的安全,从开机启动到运行,从底层硬件到上层业务。整个系统从底层的安全启动、精密计算、加密存储、访问控制,扩展到整个系统模块。第四个阶段是全生命周期,操作系统不仅限于操作系统的启动和运行,扩张到整个链路包括版本发布、运行、后期维护,升级,整个生命周期模型都涉及到安全。随着大数据,云计算和人工智能的发展为工具提供了很多手段。工具的智能化把安全也相应智能化。利用技术发展出新的手段保证操作系统的安全。

 

2.3车载操作系统发展趋势

这是车载操作系统的发展趋势。

最早,汽车是一个独立的 mcu  ,它的系统也是相互独立的,比如自驾的OS可能是一个单独的操作系统,座舱是专门的OS,车辆控制是专门的OS,这些OS之间相互独立,通过中央网关通信。独立的OS经过发展2.0阶段,比如仓驾合一就是智能座舱和驾驶合成一个操作系统,但是车控还是专门的操作系统。

随着硬件发展,现在的异构芯片超高性能常规处理器,在一个芯片可以控制整辆车。随着硬件的发展,操作系统也朝这样的形态发展。最下面是虚拟化底座,在虚拟化上跑不同的操作系统,一个是车控方面,另一个是车载方面。车控更强调功能安全,车载对功能安全要求不高,但是对信息安全有高要求。

随着操作系统的发展,信息安全要根据操作系统的形态发展来设计不同措施,不同的形态面临的不同的外部实体不一样,面临的攻击和威胁都不一样,所以设计的安全方案不一样。

 

2.4车载操作系统信息安全设计

对于车载操作系统信息安全设计一般从以下方面进行信息安全设计。

首先要对操作系统所处环境和范围分析,操作系统的环境不同,面向外部工具实体不同,分析清楚再制定相应的方案。对环境和范围分析清楚之后,对整个操作系统的业务视图,主要描述操作系统的应用场景和功能需求。

第二步是要清楚系统最终提供给用户的服务,把服务抽象出来,进行功能分析,通过这一步能够清楚描述出系统所具有的功能特点和应用场景。

第三步是逻辑视图,把操作系统的整体的逻辑盘发出来,下图是车载操作系统的基本逻辑视图的划分。逻辑视图出来之后可以很清晰操作系统的安全边界的位置,外部实体。操作系统内部的服务,比如系统服务边界位置,容器服务的边界,把安全边界描述清楚。

在安全边界确定之后,每一个边界对应的外部的实体和数据流都比较清晰,威胁建模对整个系统分析,分析完了,得出一个攻击者攻击路径和存在的漏洞,由此引出安全架构和安全方案。这是整个操作系统进行信息安全的设计流程。

 

03.实践

 

3.1 Safety Linux 信息安全架构

在车载方面有一个Safety Linux 信息安全架构,和一些车厂合作。信息安全的基本架构从下面底层的硬件、内核、服务、应用,分层介绍了部分安全方案。最底层的车载异构多合平台列出了目前支持的芯片厂家。硬件层主要是可信计算环境,在此环境下所做的安全启动、安全刷新、硬件加密引擎,都是硬件层的安全渠道所提供的基础的环境和手段。

内核层的安全机制主要有两大部分:

第一大部分是强制访问控制。很多安全措施都基于访问控制LSM安全框架,自主访问控制和强制访问控制在此基础上的文件管控的保护、程序执行的控制。现在在电讯系统上做的三权分立,今后有可能会用到车载操作系统上,都由强制访问控制实施。

第二大部分主要是数据安全保护,对数据存储的安全保护,数据传输的,运行的数据安全保护,数据隔离,文件防篡改,数据加密等等,最主要是这两大部分在内核层。在服务器上最重要的是身份的认证健全。这部分涉及到用户账号安全保护和认证健全模块。认证健全和账户都是系统的非常重要的安全特性,如果这部分被攻破,系统基本上在裸奔。

最后一部分是日志的检测分析,安全审计,日志追踪的措施。端点安全在车载还没有涉及到。应用层主要是网络防火墙、漏洞升级、数据备份、强制访问策略部分。这时基本的信息安全框架。纵深防御是对底层物理层等都要有安全防御的链路,保证其中一个链条的安全。只要把工具链路给断了,也能够保证系统安全。物理安全,比如在车载系统正式发布时,会把外部的设计物理的端口全部关闭,包括窜口、调试口、SH7登录等等全部都关闭,身份证验证和安全审计等方面。

 

3.2安全启动的安全特性

车载的信息安全框架的技术非常多。

介绍几个比较关键的点。

第一个是安全启动,安全启动是操作系统最开始的安全特性。如果操作系统镜像都不能保证安全,操作系统的信息安全无从说起。安全特性可以保证图中五大特性的指标。第一个事保证真实性,确定软件版本没有篡改特性,是真实有效的。

第二个是完整性。操作系统能保证不发生任何变化。

第三个是时效性,软件版本是有效期间的版本,车载上版本的有效性。

第四个是不可抵赖性,系统是某个厂家发布的,能够证明是场景发布的。

最后是机密性,不能泄露给未授权的个人或者实体,不能被非法盗窃或者读写。这安全启动所具备的以上五大特性。

 

3.3安全启动—安全镜像生成

详细介绍安全启动的安全镜像的生成流程。

安全启动首先要对安全镜像加密签名,镜像签名分为几个步骤:

第一步是把镜像的代码铭文加密,使镜像代码变成密文。从效率上考虑,加密解密在车载系统上的效率比较低,所以不一定会做。如果镜像不能给别人看,也可以使用加密。第一步是加密,使用非对称算法的私钥加密,为了保证私钥的隐秘性,一般存储在服务器上,服务器对外不可见,把公钥注入到汽车安全的芯片中。

第二步是对加密的密文进行哈希运算,生成信息摘要,经过哈希的变换生成数字签名,数字签名也要经过加密,最终形成加密的数字签名。

它最终的安全镜像包含三个部分,第一部分是镜像代码的密文,第二部分是镜像代码密文的信息摘要,第三部分是数字签名。启动时要安全验签,保证公钥的安全性,一般注入到HSE固件的芯片的 OTP 的区域中,保证它的一次注入,不能更改,保证了公钥的合法性。

第一步是哈希比对,用硬件加密模块对数字证书的签名进行模块性能验证,通过公钥对数字签名解密,同时密文信息摘要进行哈希变换,对出来的哈希值比对,如果两个哈希值一致,说明镜像代码的密文信息摘要没有被篡改,表明安全镜像的合法性得到了保证。

第二步是对硬件加密模块的计算整个软件版本的哈希值,就是主要是为了对比信息摘要和镜像密文是否一致,如果一致,说明镜像代码的密文没有被篡改,这一步是保证数据代码数据是安全的、可靠的。

第三步是对密文解密。

通过以上步骤,保证了镜像代码是安全可靠的。在车载上的安全启动涉及到很多优化手段。加密都涉及到性能和效率问题,如何保证安全又保证效率,有以下几点优化考虑。因为镜像代码可能步涉及传输,代码不需要加密。第二步不需要对镜像信息的摘要,再进行哈希,可以直接对摘要加密,加密保存形成数据签名,可以少一个步骤。

 

3.4 Safety Linux 安全启动链

这是车厂做信息安全的整个安全启动链路。上面仅仅介绍了某个镜像文件的签名验签流程,但是对操作系统来说,涉及到很多固件,比如在M核上的固件,BootLoader,UBOOT内核,Rootfs,跑系统上的某些应用、某些容器业务都可以进行签名和验签流程,保证整体系统的安全性。大家可以看一下流程,主要流程是在安全启动时要求对哪些镜像进行签名和验签,保证整个启动链路上的安全性,形成了整个安全启链路。

 

3.5 Safety Linux 安全加密框架

这是 Safety Linux 安全加密框架。通过安全框架结合底层的HSM硬件加密模块形成了几条加密的链路。

第一个是APP直接可以调用HSE,操作系统可以通过 UIO 驱动的架构直接可以封装成 Libhse和 API 接口,供商城应用直接使用,这样效率最高。

第二台APP遵循 PKCS#11 接口,PKCS#11 通过一个库,通过UIO下来。

第三个方式主要是通过 Openssl 加密电路,Openssl 通过Libpkce11 引擎连接到底层的HSM。最后是使用最早的 Crypto 方式,通过 Crypto 的驱动,直接以硬件加密模块交付。

提供加密通道的原因第一是提高效率,第二是为了适应以前的应用、用户程序、车载的应用通过以前的加密方式提供一个兼容方案。

 

3.6 Safety Linux  强制访问控制

现在车的操作系统对强制访问控制要求非常高,特别是欧洲,如果车要出产到欧洲,强制访问控制必须要上。在国内,强制反馈控制逐渐也会提出来,但现在的强制环控制一般通过 Safety Linux 做,但是 Safety Linux 一般采用参考策略,策略的缺点是控制得太细,如果直接使用强制访问控制策略,可能会导致很多车载应用在上面适配,工作量十分巨大。

在车载上如何适应车载环境,要设计自己的强制访问控制策略。比如把服务分成三类,几乎不受限的服务,对系统进程服务可以访问所有资源。专用服务可能只需要访问某些资源,对这一类服务根据访问目的设置权限。最后一类是受限服务,一般是应用程序,对于这一类设置更严格的限制。把参考策略改造成这种策略,在保证安全性的同时提高系统效率。

 

3.7 Safety Linux  网络安全加固

网络加固主要是通过两个方面来做,对网络协议上的改造。从安全角度对网络协议栈限制配置,主要是防止报文攻击、洪水攻击、泛洪攻击。这是内核空间中。在用户空间主要是配置网络,根据不同规则,在车载上不同的应用场景配置不同网络规则。

最后是安全登录,主要依赖于现有架构 ,主要根据车载场景做安全措施。比如车厂要根文件系统只读、防暴力破解等一系列登录规则都要配置,主要是分析汽车的安全应用场景。

 

3.8 Safety Linux   安全漏洞管理

最后介绍安全漏洞管理,车载上面确实有很多漏洞,操作系统本身漏洞比较多。在漏洞扫描和治理方面主要有以下几方面。

第一方面是对系统的组件进行梳理,确定系统所使用的全部组件及版本号。

第二个是定期对漏洞扫描评估。

第三个是采用专业的漏洞扫描工具,车厂协助,对扫描结果记录细致分析和治理,高中危漏洞优先治理,确保系统安全。那边是一个安全升级策略,主要是补丁管理策略,怎么保证补丁的及时性和稳定性,对补丁的测试要求,然后对升级镜像签名,认证要求。

 

04.未来展望

最后介绍对车载操作系统,未来需要在哪些方面加强。

第一,因为车载和服务器操作系统不一样,各种场景存在的业务都呈现多样化,所以一定要根据车载的场景和业务分析,制定一个合理的安全方案。安全工具在车载上都不一定适合,针对车载的场景做适当设计。

第二,以车载的操作系统为核心,在整个汽车软件生态链上的安全要形成安全防御链。

第三,结合功能安全。因为汽车讲究功能安全,特别针对后续的智能驾驶场景,无人驾驶场景,保证功能安全的情况下,如何保证信息安全。

第四,从被动到主动。以前的防御主要都是被动方面,今后主动防御,路线检测,短点分析等等。

最后一个是智能安全。应用智能的AI的技术,结合机器学习和数据分析对研究手段更加智能化识别,防护危险。分享就到这里,谢谢大家。

相关文章
|
2月前
|
Android开发 Swift iOS开发
深入探索iOS与Android操作系统的架构差异及其对应用开发的影响
在当今数字化时代,移动设备已经成为我们日常生活和工作不可或缺的一部分。其中,iOS和Android作为全球最流行的两大移动操作系统,各自拥有独特的系统架构和设计理念。本文将深入探讨iOS与Android的系统架构差异,并分析这些差异如何影响应用开发者的开发策略和用户体验设计。通过对两者的比较,我们可以更好地理解它们各自的优势和局限性,从而为开发者提供有价值的见解,帮助他们在这两个平台上开发出更高效、更符合用户需求的应用。
|
3月前
|
存储 安全 物联网
操作系统的心脏:深入理解现代操作系统架构与核心技术
本文旨在为读者提供一个关于现代操作系统(OS)架构和核心技术的全面概述。通过分析OS的主要组件、功能以及它们如何协同工作,本文揭示了操作系统在计算机系统中的核心地位及其复杂性。我们将探讨进程管理、内存管理、文件系统和输入/输出(I/O)等关键技术,并讨论它们对系统性能的影响。此外,本文还将涵盖一些最新的操作系统趋势和技术,如云计算、虚拟化和物联网(IoT)。通过阅读本文,读者将获得对操作系统内部运作方式的深刻理解,这对于软件开发人员、IT专业人士以及对计算机科学感兴趣的任何人来说都是宝贵的知识。
|
3月前
|
安全 调度 开发者
探索操作系统的心脏:现代内核架构与挑战
【10月更文挑战第7天】 本文深入探讨了现代操作系统内核的复杂性和功能性,从微观角度剖析了内核在系统运行中的核心作用及其面临的主要技术挑战。通过浅显易懂的语言解释专业概念,旨在为读者提供一个关于操作系统内核的全面视角。
55 2
|
3月前
|
存储 人工智能 物联网
探索现代操作系统的架构与演进
【10月更文挑战第5天】 本文旨在深入探讨现代操作系统的核心架构及其在技术演进中的变革。通过对操作系统的基本概念、关键组成部分以及它们如何相互协作的分析,为读者提供一个全面且易于理解的视角。同时,本文还将回顾操作系统从单任务到多任务、从单用户到多用户的发展过程,并展望未来可能的技术趋势。
|
2月前
|
IDE 安全 Android开发
深入探索Android与iOS操作系统的架构差异
本文旨在对比分析Android和iOS两大主流移动操作系统在架构设计上的根本差异。通过详细解读两者的系统架构、开发环境、以及安全性等方面,揭示它们各自的特点及优势,为开发者选择合适的平台提供参考。
|
2月前
|
缓存 运维 网络协议
深入Linux内核架构:操作系统的核心奥秘
深入Linux内核架构:操作系统的核心奥秘
89 2
|
3月前
|
存储 资源调度 算法
操作系统的心脏:深入理解内核架构与机制####
【10月更文挑战第16天】 本文旨在揭开操作系统最神秘的面纱——内核,通过剖析其架构设计与关键机制,引领读者一窥究竟。在这篇探索之旅中,我们将深入浅出地讨论内核的基本构成、进程管理的智慧、内存分配的策略,以及那至关重要的系统调用接口,揭示它们是如何协同工作,支撑起现代计算机系统的高效运行。这既是一次技术的深潜,也是对“看不见的手”调控数字世界的深刻理解。 ####
74 3
|
3月前
|
存储 算法 安全
操作系统的心脏:深入理解现代操作系统架构与调度机制
本文将探讨现代操作系统的核心概念,包括进程管理、内存管理和 I/O 系统。通过分析这些组件如何协作以提供稳定和高效的计算环境,帮助读者更好地理解操作系统在现代计算中的重要性。我们将从宏观角度出发,逐步深入到微观细节,为读者提供全面而详细的技术解析。
|
3月前
|
安全 调度 虚拟化
探索现代操作系统的架构与优化
本文将深入探讨现代操作系统的核心架构和优化技术。从操作系统的基本定义入手,逐步解析其内核结构、进程管理、内存管理和I/O系统。同时,还将讨论现代操作系统在多核处理器支持、虚拟化技术和安全性方面的创新与优化措施。通过这些内容,读者可以全面了解操作系统的工作原理及其在实际应用中的表现与改进。
|
3月前
|
存储 算法 Linux
探索现代操作系统的架构与优化
本文深入探讨了现代操作系统的核心架构及其性能优化策略。通过对主流操作系统架构的分析,揭示其在多任务处理、内存管理和文件系统等方面的特点。同时,针对当前技术趋势,提出一系列优化措施,旨在提升系统的运行效率和用户体验。通过实例分析,展示如何在实际场景中应用这些优化技术,确保系统在高负载下的稳定运行。