资产识别与分类:找到你要保护的东西
做 TARA 分析,第一步不是找漏洞,而是搞清楚——你到底要保护什么?
很多人一上来就翻漏洞库、查攻击路径,结果做到一半发现连分析对象都没定义清楚。嗯,这就像你要修车,却连发动机在哪都不知道。
我个人习惯,拿到一个项目,先花半天时间把资产清单拉出来。这个习惯帮我避过不少坑。
什么是网络安全资产?
ISO 21434 里对资产的定义其实很直白:凡是可能被攻击者利用,或者一旦受损会影响车辆安全、功能、数据或用户隐私的东西,都是资产。
说白了,资产就是攻击者想要的东西,或者攻击者能用来搞破坏的东西。
核心判断标准:一个元素是否属于网络安全资产,看它是否满足以下任一条件——
- 存储或处理敏感数据(密钥、用户信息、车辆识别码)
- 控制关键功能(制动、转向、动力)
- 提供通信能力(CAN、以太网、蓝牙)
- 暴露外部接口(OBD、无线充电、远程诊断)
我曾经遇到一个团队,把车机里的导航地图数据当成普通文件处理,结果 TARA 分析时才发现——地图数据里嵌着路侧单元的认证证书。这个疏忽差点导致整个 V2X 通信链路的信任模型崩塌。
资产识别:从哪下手?
识别资产不是拍脑袋,得有方法。我一般按三个维度来扫:
1. 硬件资产
ECU、传感器、执行器、网关、域控制器……这些是看得见摸得着的。但要注意,同一个硬件可能包含多个资产。比如一个智能摄像头,镜头是传感器,内部的 ISP 芯片是处理器,固件存储区是数据资产。
| 硬件类型 | 典型资产 | 关注点 |
|---|---|---|
| ECU | 发动机控制器、BCM、T-Box | 固件、诊断接口、CAN 收发器 |
| 传感器 | 摄像头、雷达、激光雷达 | 原始数据流、标定参数、触发信号 |
| 执行器 | 制动电机、转向电机、车窗电机 | 控制指令、状态反馈、安全阈值 |
| 通信模块 | 4G/5G 模组、Wi-Fi 芯片、蓝牙 SoC | 协议栈、密钥存储、空中接口 |
2. 软件资产
这个容易被忽略。你想想看,一个 ECU 里跑的代码、配置参数、诊断服务、安全启动的签名证书,哪个不是资产?
我建议把软件资产分成三类:
- 固件与操作系统:Bootloader、RTOS、Linux 内核、中间件
- 应用与数据:控制算法、标定数据、用户配置、日志文件
- 安全关键数据:私钥、证书链、安全凭证、随机数种子
一个小技巧:做软件资产识别时,把 ECU 的软件拆成「启动阶段」「运行阶段」「诊断阶段」三个时间片,每个时间片单独列资产。这样不容易漏掉安全启动链上的关键环节。
3. 通信链路资产
车里的通信链路,本质上就是数据流动的管道。管道本身可能被窃听、篡改、重放,所以它也是资产。
常见的通信链路资产包括:
- 车内总线:CAN/CAN-FD、LIN、FlexRay、车载以太网
- 无线链路:蓝牙、Wi-Fi、NFC、UWB、蜂窝网络
- 外部接口:OBD-II、USB、AUX、无线充电
- V2X 通信:DSRC、C-V2X PC5 接口
我记得有个项目,客户坚持说 CAN 总线不是资产,因为「它只是根线」。后来我们做了个简单的攻击树分析——攻击者只要在 OBD 接口上挂一个 CAN 嗅探器,就能拿到所有未加密的报文。这根「线」直接成了攻击面。
资产分类方法
识别完资产,下一步是分类。分类不是为了好看,是为了后续的威胁分析和风险评估能对号入座。
我常用的分类框架有三个维度:
维度一:按功能域分类
这是最直观的分类方式,直接对应整车架构:
- 动力域:发动机 ECU、变速箱控制器、电池管理系统
- 底盘域:制动控制器、转向控制器、悬架控制器
- 车身域:BCM、门控模块、座椅控制器
- 信息娱乐域:车机、仪表盘、HUD
- 自动驾驶域:ADAS 控制器、传感器融合单元
- 网联域:T-Box、V2X 模块、远程通信网关
维度二:按安全属性分类
这个维度直接对应 CIA(机密性、完整性、可用性)三元组,但汽车场景下我习惯加两个:
| 安全属性 | 含义 | 典型资产示例 |
|---|---|---|
| 机密性 | 防止未授权访问 | 私钥、用户隐私数据、加密算法种子 |
| 完整性 | 防止未授权修改 | 固件镜像、标定数据、安全日志 |
| 可用性 | 确保功能正常执行 | 制动控制信号、安全气囊触发信号 |
| 真实性 | 验证来源可信 | 诊断请求、OTA 更新包、V2X 消息 |
| 不可否认性 | 防止事后抵赖 | 事件数据记录、审计日志 |
维度三:按攻击面分类
这个维度是我自己总结的,用来快速判断资产暴露在什么威胁下:
- 物理可接触资产:OBD 接口、USB 口、调试串口、JTAG/SWD 调试口
- 无线可接触资产:蓝牙、Wi-Fi、蜂窝、NFC、UWB
- 远程可接触资产:云平台接口、远程诊断、OTA 服务
- 内部可接触资产:CAN 总线、以太网、域间通信
注意:同一个资产可能同时属于多个分类。比如 T-Box 既是网联域资产,又涉及机密性(存储密钥)和可用性(保证紧急呼叫功能),同时暴露在无线和远程攻击面下。分类时不要硬套一个维度,多维度标注才能覆盖全面。
资产清单的产出物
识别和分类做完,最终要输出一份资产清单。我习惯用表格来组织,每项资产至少包含以下字段:
| 字段 | 说明 | 示例 |
|---|---|---|
| 资产 ID | 唯一编号 | ASSET-0042 |
| 资产名称 | 可读名称 | T-Box 安全存储区 |
| 所属系统 | 所属 ECU 或子系统 | T-Box (TEL-01) |
| 功能域 | 动力/底盘/车身/信息娱乐/自动驾驶/网联 | 网联域 |
| 安全属性 | C/I/A/Au/NR | 机密性, 完整性 |
| 攻击面 | 物理/无线/远程/内部 | 远程, 内部 |
| 描述 | 资产功能与安全关键点 | 存储车辆与云端通信的 TLS 私钥及证书链 |
这份清单会直接喂给下一步的威胁场景分析。清单的质量,决定了 TARA 分析的上限。
知识体系总览
下面这张图把资产识别与分类的核心逻辑串起来了。你可以把它当成一个检查清单,做项目时对着走一遍,基本不会漏。
这张图从左到右展示了资产识别与分类的完整链路。你可以在做项目时把它打印出来,对着每个节点逐一确认。
资产识别这件事,做得越细,后面的威胁分析就越轻松。我见过太多项目因为资产清单漏项,导致 TARA 分析返工。嗯,花在资产识别上的时间,永远不会白费。