资产识别与分类:找到你要保护的东西

做 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 分析的上限。

知识体系总览

下面这张图把资产识别与分类的核心逻辑串起来了。你可以把它当成一个检查清单,做项目时对着走一遍,基本不会漏。

资产识别与分类知识体系 资产识别与分类知识体系 网络安全资产定义 硬件资产识别 软件资产识别 通信链路资产识别 资产分类方法(三个维度) 按功能域分类 动力/底盘/车身/信息娱乐/ADAS/网联 按安全属性分类 C/I/A/Au/NR 按攻击面分类 物理/无线/远程/内部 产出:资产清单(Asset Inventory) → 输入威胁场景分析(TARA 下一步)

这张图从左到右展示了资产识别与分类的完整链路。你可以在做项目时把它打印出来,对着每个节点逐一确认。

资产识别这件事,做得越细,后面的威胁分析就越轻松。我见过太多项目因为资产清单漏项,导致 TARA 分析返工。嗯,花在资产识别上的时间,永远不会白费。