当前位置: 首页 > 科技观察

量产主控芯片的网络安全设计_0

时间:2023-03-21 15:27:20 科技观察

术语“网络安全”泛指对网络系统中硬件、软件、数据传输和存储安全、信息系统完整性和机密性的保护。由于绝大多数物联网设备和汽车ECU都以某种方式连接到网络中,网络安全的覆盖范围非常广泛。即使嵌入式系统没有连接到互联网,只要与外界进行交互,也会涉及到网络安全。网络安全有一种系统方法,芯片硬件支持的安全性是基础。1网络安全市场现状网络安全越来越受到重视。虽然各种安全芯片和算法不断被发明出来,“路在何方,魔力在何方”,即便是被普遍认为网络安全水平较高的iPhone,也有特斯拉汽车被利用的例子由发现漏洞的黑客。这时候,如果你对网络安全技术的发展过程不是很了解,你可能会陷入恐慌。特别是汽车的自动驾驶域控制器,不仅要在复杂的软硬件系统上与本地设备通信,还可能在后台通过OTA进行功能升级。网络安全基础知识。网络安全基于几个相关学科并叠加了大量的工程实践。可以一步步理解,比较,参考。让我们来看看芯片相关安全设计的基本原则。2芯片网络安全设计的基本原则网络安全设计是相关技术要素和方法的有机结合。这篇Microsoft论文:高度安全设备的七个属性(MSR-TR-2017-16)很好地阐述了这一点。基于这一原则和市场需求,结合技术实现细节,参与了AmbarellaCV系列芯片的网络安全设计。经过团队几年的努力,这些CV2x系列芯片已经在安防和汽车行业成功量产,并获得了领先客户的认可。七项基本原则是:芯片需要包含硬件保护的信任根设备机密信息,而这个信任根可以抵抗硬件设计中已知的侧信道攻击。信任根通常是不可修改存储中的一组或多组密钥,并且不允许用户直接读取它们。这里通常使用的加密算法会使用基于RSA、ECC等公钥体系的算法,其中公钥会在系统启动过程中验证启动代码的每一个环节是否被篡改。b.该芯片包含用于安全执行环境的专用加密芯片。芯片通常内置安全执行环境,如苹果手机的SecureEnclave;主流安卓手机使用ARM的TrustZone,汽车ECU和域控制器可以使用HSM。这些设计原则相似,但在功能、性能和安全级别方面有所不同。安全的执行环境意味着内部操作通常受到限制,与主要应用程序执行环境的通信也受到限制。一般来说,系统开放的功能越多,接口越丰富,潜在的安全风险点也越多,因此在满足要求的情况下,“信息安全孤岛”需要尽可能小、简单。C。芯片安全需要纵深防御纵深防御是必要的安全策略。这种“洋葱皮”设计使得即使单层系统的弱点被攻破,也不会导致系统安全性的彻底崩溃。例如,即使使用TrustZone来保护生物识别信息验证,系统仍然可以在软件层面使用SELinux来设置程序权限,以防止不需要的权限被打开。另外,系统的配置还可以考虑到防止root用户远程登录和root用户密码的保护。d.芯片安全需要对飞船的密闭舱室进行分区和隔离。图片来源于网络隔离是“密封舱”的想法。一个安全的系统可以通过硬件一个一个地建立屏障,使得单个模块带来的安全风险难以转移到其他模块。“分区隔离”的做法往往是利用软件模块的内存地址空间进行隔离。Linux系统设置了用户空间和内核空间,已经对大部分应用做了一层隔离。ARMTrustZone的SecureWorld和Normalworld也是隔离的。使用虚拟机等技术隔离整个操作系统也是分区隔离的一个例子。简单的RTOS没有实现内存隔离,不仅一个软件模块的地址越界错误可能会影响整个系统而导致死机,而且一个软件模块的安全漏洞还可能扩散到其他模块。e.基于证书链的安全认证公钥系统(PKI=PublicKeyInfrastructure)大大提高了系统认证的安全性。老办法,比如Windows默认的登录方式是用户名/密码。如果用于远程登录,一旦用户名和密码泄露,就无法辨别用户身份的真假。一般可以使用“两步验证”的方法进行改进,但还是比较麻烦。基于公钥体系的证书从机制上保证了可靠性。例如,银行的手机APP可以对用户手机的唯一标识进行数字签名,并颁发证书对数字签名进行保护,证书中包含银行APP的公钥。这样,当用户使用网上银行时,服务器接收到用户发送的签名和证书请求数据,并进行校验,确认数据是否被篡改,业务请求的来源是否真实。公钥机制要求安全芯片自带RSA/ECC等非对称加密算法引擎,或支持运行在ARM的Secureworld中,为相关密钥提供可靠的保护。F。可更新的安全密钥为了应对不断发现的新安全威胁,安全策略也需要不断更新。对于发现的安全漏洞(CVE等),需要及时弥补,包括撤销和更新密钥的机制。为什么发现安全漏洞还有升级更新的机会?这是因为前面提到的“纵深防御”和“分区隔离”,可能系统底层还没有被黑客攻破。特别是对于0day安全漏洞,及时升级可以消除安全隐患,这也是OTA的重要意义之一。G。网络安全故障上报机制系统中任何与安全相关的故障或潜在的相关异常都需要上报给后台管理。黑客通常不会通过一次攻击成功进入系统,而是通过多次尝试。如此系统化。错误日志通常包含有价值的信息,可用于增强预防策略和改进安全措施。“安全启动”如果在启动过程中遇到错误,例如密钥验证错误,通常会停止或进入功能受限的“安全状态”进行修复。该技术的一个发展趋势是向“测量启动”,也称为“可信启动”。“Measuredboot”字面意思是“可测量的启动”,但目前我还没有看到一个被广泛接受的中文翻译。实测启动要求启动不中断,但会记录启动中涉及的模块的信息和状态,包括错误,以供后续验证。通常这些测量启动的记录被写入具有安全存储的硬件,例如TPM或HSM。3网络安全在芯片中的具体实现3.1需要防范的风险采取安全防范措施,还必须考虑黑客可能如何对系统进行攻击。常见的黑客攻击方法包括:通过测试/调试硬件接口,如USB、串口等进行攻击b.通过软件调试接口进行攻击,例如某些产品的bootloader有调试命令c.利用系统中的已知漏洞进行攻击,例如Linux内核的已知CVEd。利用应用层软件漏洞进行攻击,例如利用漏洞造成缓冲区溢出攻击e.嗅探网络数据,窃取用户信息或密码f.攻击系统登录密码,一般采用穷举法或字典法尝试登录密码g.通过更换硬件模块进行攻击,如更换NAND/eMMC等系统存储h.通过硬件总线攻击,通过总线读取/篡改数据i.回滚攻击,攻击者回滚系统版本,然后利用旧版本的已知漏洞进行攻击。j.重放攻击,攻击者记录“认证通过响应”并利用它来尝试通过下一次认证3.2芯片硬件安全设计一个可靠的网络安全系统需要芯片从源头上采取安全防范措施,因此我们列出硬件的关键点芯片的安全设计:a.不可修改的SecureROM用于安全启动b.一次性写入内存OTP用于存储安全启动公钥和其他密钥c.真随机数发生器(TRNG)d.提供可信执行环境TEE(如ARMTrustZone或专用HSM独立引擎)e.安全总线设计,提供硬件接口的安全配置f.DRAM加扰(LPDDR4总线上的数据全部加密)g.DRAM硬件地址隔离,不同主内部控制器可以配置DRAM访问范围h。可以禁止JTAG、USB等调试接口访问系统,可以进入永久安全启动状态。安霸CV2x后的系列芯片均采用上述硬件设计,并不断改进以满足ARM的TSBA规范(ARMv8-A的TrustedBaseSystemArchitecture),安讯士等安防行业龙头企业,以及中国、欧洲、美国和日本已成功量产;品牌合作成功量产。3.3“Rock”网络安全架构与AmbarellaCV2x芯片安全设计通过AmbarellaCV2x系列芯片的安全设计和上层软件和工具的设计,实现了“Rock”网络安全架构。图:实现基于硬件的安全启动全过程我们在底层实现安全启动,通过上层软件协议实现隐私保护、算法加密、安全存储、安全传输等功能,为用户提供完整的套房。核心算法为用户开源。4、基于HSM的汽车控制芯片的网络安全设计较为复杂。汽车域控制器芯片采用HSM实现网络安全。主要原因是HSM是系统级的,不仅可以保护CPU上的数据,还可以保护MCU、AI引擎、图像视频引擎等多个单元,具有安全存储和加密计算单元内部,可用于存储用户的机密数据,如密钥和证书。2022年初,安霸发布了高算力自动驾驶域控芯片CV3,不仅实现了高AI算力,还实现了高级网络安全。CV3内置HSM,采用全新设计。自带可编程高性能加密引擎,支持各种常用加密算法,内置高速内存,自带OTP等安全计算硬件。不仅可以实现对各个硬件单元的数据安全保护,还可以安全启动系统,隔离内存,保存用户的重要信息。通过全程加密神经网络算法保护知识产权,并提到网络安全和用户信息保护。新的高度。