完整文章点击如下链接下载:
https://download.csdn.net/download/weixin_45905610/88435302
目录
本文档主要介绍AVP项目的信息安全设计,主要介绍HAVP安全防护。
本文档用于AVP项目的ACU、TSP、SDK等产出的设备、服务的安全防护,其中需要主机厂输出的部分,会通过接口文档的形式输出。
编号 No. | 文档名称 Document Name | 文档版本 Document Version | 文档日期 Document Date |
编号 No. | 术语和缩写 Terms & Abbreviation | 解释 Explanation |
| FSBL | first stage boot loader,第一阶段启动加载器; |
| eFUSE | 一次性可编程存储器 |
| TSP | Telematics Service Provider,汽车远程服务提供商 |
| CSU | Configuration Security Unit |
| PMU | Dedicated Platform Management Unit |
| APU | Quad-core ARM Cortex-A53 based Application Processing Unit |
| PUF | physically uncloneable function |
| Nor Flash | 可擦写存储介质 |
| netfilter | Linux操作系统核心层内部的一个数据包处理模块 |
| iptables | Linux操作系统应用层配置netfilter的软件 |
| NFQUEUE | netfilter的包转发队列 |
| inode | linux下文件识别号 |
| DOIP | Diagnostic communication over Internet Protocol |
| CA | Certificate Authority,数字证书 |
| CRL | 证书吊销列表 |
| AES-GCM | 一种对称加密算法, ( Galois/Counter Mode) 指的是该对称加密采用Counter模式,并带有GMAC消息认证码。 |
| RSA | 一种非对称加密算法 |
| CSR | Certificate Signing Request,即证书注册请求。在申请SSL证书前,常常需要自己先生成证书注册请求。 |
| SSL | Secure Sockets Layer 安全套接字协议 |
| SSL双向认证 | 指的是相互校验,服务器需要校验每个 client 证书, client 也需要校验服务器证书 |
| Token | 计算机身份认证中的令牌 |
| DDos | 分布式拒绝服务攻击 |
| WAF | Web Application Firewall,Web应用防火墙 |
| IDS | intrusion detection system,入侵检测系统 |
| AVP | Automated Valet Parking,自主代客泊车 |
| HAVP/PAVP | 自动泊车系统。一个是类似商场或者写字楼的那种商业停车场,另一个是自己家或者公司那种拥有固定车位的停车场。此次官方也给出了更加细致的说明和解释,前者叫做PAVP,后者叫做HAVP。 |
| FOTA/DOTA | Firmware/Data OTA,固件、数据远程升级 |
| MES | 制造执行系统 |
AVP项目的车端、TSP端、手机端等部分相互配合,实现AVP的业务逻辑,具体结构如下:
图表 1 AVP安全分析
参考AVP的系统结构,设计了如下的多层次全面防护方案,抵御攻击,支撑AVP的安全运行:
图表 2 AVP安全方案
信息安全方案中实施的防护计划主要包括:
- 实施系统纵深防御方案,防止攻击者入侵ACU,保证控车安全;
- 依托主机厂的CA体系,实施通信的认证和加密,防止网络劫持;
- 加固泊车SDK,抵御逆向攻击;
- TSP实施云安全防护;
- ACU的安全防护
为了抵御ACU的安全威胁,需要实施纵深防御,全面保护ACU的硬件、系统、数据、网络、通信。
4.1.1 系统安全引导
系统引导过程中会依次加载和执行FSBL、Uboot、OS等。任意环节如果被篡改替换为恶意应用,则会导致整体系统被控制或植入恶意代码。因此有必要针对每个步骤进行检验,确保加载的程序是可信的。
图表 3 安全引导流程
4.1.2 密钥安全存储
AVP对关键数据、通信进行加密,防止数据泄露。一旦黑客窃取加密算法的密钥,就可以窃取数据,因此需要保护密钥,防止其泄露。另外当存储介质、文件系统异常、异常写入发生时,可能会导致密钥损坏,进而导致系统无法正常工作,影响巨大。因此设计密钥安全存储服务,实现密钥安全存储,防止泄露,实现密钥的可靠存储,防止损坏,具体结构如下图所示:
图表 4 密钥安全存储结构
4.1.3 应用防火墙
系统运行时,设备内部会有很多应用作为客户端连接网络或作为服务端等待外部访问。这些应用会包含可信的授权应用,也会包含业务的无关应用或者恶意应用,而未授权的应用访问网络,会增加系统被入侵的风险,因此,需要部署应用防火墙限制应用访问网络,同时应用防火墙的日志会输出到入侵检测模块,检测异常的网络事件。
报文处理引擎 |
解析报文 |
查找所属进程 |
策略裁决 |
规则 引擎 |
静态规则 |
进程白名单 |
进程映射管理器 |
图表 5 应用防火墙
4.1.4 入侵检测
对运行中的系统进行实时监控,检测系统运行时的文件、配置、进程、会话、网络通信等,根据规则,及时发现系统中出现的异常行为,形成安全事件,上报云端,进行事件挖掘和专家分析,确认入侵行为,并通知运维人员处理,有效避免系统入侵给系统正常运行带来更大的影响。
整体系统具体结构如下图所示:
图表 6 入侵检测结构
4.1.5 S-FOTA
ACU设备可以通过FOTA更新固件,因此需要保证FOTA 镜像的完整性及真实性,防止系统更新被恶意篡改的固件,同时由于升级包存储着程序、配置、算法、数据等知识产权文件,需要保证其机密性,防止镜像泄漏导致知识产权泄漏。
通过签名升级包,确保升级包的完整性和真实性,通过加密,确保升级包数据的机密性,具体的方案如下:
图表 7 安全升级结构
4.1.6 安全调试
在ACU内部出现问题时,可能需要RD登录ACU进行调试。而调试接口通常是一把双刃剑,在给RD带来便利的同时,也带来严重的安全隐患。一旦ACU的用户名和口令泄露后,攻击者可以利用其登录系统,严重威胁到ACU安全。
采用动态口令结合企业身份认证,实现安全调试,具体方案如下:
- RD输入一次性口令,登录ACU
一次性口令的有效时间为5分钟,因此可以有效的防止攻击者暴力破解。同时,只有通过企业认证的如流用户,才能解密口令,一旦其离职或者部门变更,将无法解密,可以确保登录ACU的用户是授权用户。
4.1.7 设备证书管理
在ACU和TSP通信时,TSP需要验证其身份,防止伪造设备攻击,因此需要为其生成设备密钥和设备证书。 借助主机厂的CA体系,为ACU生成设备证书。具体的方案如下:
图表 8 产线操作
在AVP项目中,APP、TSP、ACU之间利用TCP/IP协议传输指令和数据,而攻击者可以通过于域名伪造、中间人攻击等方式劫持网络,伪造控车指令,威胁车辆的泊车安全,或者窃取设备和TSP之间传输的数据,导致数据泄露。攻击者也可以伪造设备,窃取云端数据。
为了保护TCP/IP通信,需要对通信双方进行身份认证,防止伪造,对通信内容进行加密,防止窃听。具体的方案如下:
图表 9 通信安全方案
为了实施SSL连接,需要为ACU、TSP颁发身份证书,依托CA和主机厂CA建立如下的证书体系。
图表 10 通信安全的CA体系结构
-
- APP安全防护
用户使用车主APP、HU APP管理泊车路线,而攻击者可以逆向SDK或者HU APP,分析其实现代码,寻找逻辑漏洞,利用漏洞控制车辆,或者篡改泊车路线,从而威胁车辆的自主泊车的安全。
采用如下的方式,实现SDK、HU APP的安全防护:
图表 11 泊车SDK的安全防护
TSP安全由如下几个部分组成:
- 采用线上服务器安全防护方案;
- 服务代码Review、安全扫描、渗透测试;
- 服务器前端介入BFE(Baidu Front End);BFE具备WAF、DDoS、IDS等安全防护方案;
- 开启服务器安全审计;
- 业务层协议安全评审;业务会话使用安全令牌;
5.1密钥安全存储
5.1.1 密钥存储
接口名称 | |
接口描述 | |
参数 | |
返回值 | |
错误码 |
5.1.2 密钥获取
接口名称 | |
接口描述 | |
参数 | |
返回值
| |
错误码 |