3、资产识别实战:如何定义网络安全资产、资产分类方法(ECU、传感器、通信链路、数据)、资产清单模板与工具

好,我们进入TARA分析最基础、也最容易被忽视的一步——资产识别。

很多新手拿到TARA任务,上来就急着找漏洞、列威胁。我见过不少项目,分析做到一半才发现资产清单漏了关键条目,整个风险评估都得返工。说白了,资产识别就是给系统做一次彻底的“人口普查”。你连家里有什么都不知道,怎么谈得上保护它们?

3.1 什么是网络安全资产?

先定义清楚:网络安全资产,是指那些如果被攻击者破坏、篡改或泄露,会对车辆安全、用户隐私或企业运营造成影响的任何有价值的东西。

注意,它不光是硬件。我习惯把资产分成四类:

  • 硬件资产:ECU、传感器、执行器、网关、域控制器
  • 软件资产:固件、操作系统、应用程序、Bootloader
  • 数据资产:车辆VIN、用户凭证、诊断日志、CAN/LIN信号值
  • 通信链路:CAN总线、以太网、FlexRay、蓝牙、Wi-Fi、蜂窝网络

你可能会问:“一个螺丝钉算不算资产?” 嗯,理论上它也是物理部件,但TARA关注的是可被网络攻击利用的资产。螺丝钉没有网络接口,所以通常不纳入资产清单。

核心原则:资产识别的粒度,取决于攻击面。一个ECU内部的某个内存区域,如果可以被远程写入,那它就是资产。反之,一个纯机械的刹车踏板连杆,没有电子接口,就不算网络安全资产。

3.2 资产分类方法

分类是为了后续分析更高效。我个人习惯用“功能域 + 通信类型”的二维矩阵来分类。举个例子:

功能域 典型硬件 典型数据 通信链路
动力域 ECM(发动机控制模块)、TCU(变速箱控制单元) 扭矩请求、转速信号、油门踏板位置 动力CAN、私有CAN
底盘域 ESP(电子稳定程序)、EPS(电动助力转向) 轮速、横摆角速度、转向角度 底盘CAN、FlexRay
信息娱乐域 IVI(车载信息娱乐系统)、T-Box(远程通信盒) 用户账户、导航地图、媒体文件 车载以太网、Wi-Fi、蓝牙、4G/5G
ADAS域 前置摄像头、毫米波雷达、激光雷达、域控制器 目标列表、车道线数据、融合感知结果 车载以太网、CAN FD、私有高速链路

你看,每个域都有自己独特的资产组合。我在做某个L3级自动驾驶项目时,就发现ADAS域的“融合感知结果”这个数据资产,被团队遗漏了。攻击者如果篡改了这个数据,车辆会做出错误的决策。嗯,后来我们紧急补上了。

3.3 资产清单模板

别用Excel随便列几行就完事。一份合格的资产清单,至少包含以下字段:

  • 资产ID:唯一标识,比如“ADAS-CAM-001”
  • 资产名称:通俗易懂,比如“前视摄像头模组”
  • 资产类型:硬件/软件/数据/通信链路
  • 所属功能域:动力/底盘/信息娱乐/ADAS/车身
  • 网络接口:CAN/以太网/蓝牙/蜂窝/本地
  • 安全属性:机密性(C)/完整性(I)/可用性(A) 哪个受影响
  • 数据流向:谁发送、谁接收、协议是什么
  • 备注:特殊说明,比如“该ECU有调试接口”

我的小技巧:在项目启动会上,拉着系统架构师、硬件工程师、软件工程师一起过一遍系统框图。每个人负责自己熟悉的模块,现场填写资产清单。这样效率最高,也最不容易遗漏。

3.4 工具推荐

工具不在多,顺手就行。我常用的组合是:

  • Excel / Google Sheets:小项目(少于50个资产)完全够用,模板可以复用。
  • Jama / DOORS:大项目(上百个资产)需要需求管理工具,方便追溯和变更管理。
  • 专门的TARA工具:比如Medini Analyze、PREEvision(带安全模块)、Ansys medini。这些工具内置了资产库和威胁库,能自动生成部分分析结果。

我曾经在一个项目里,用Excel管理了200多个资产,结果版本混乱,有人改了没通知大家。后来换到Jama,每个资产都有变更记录,再也没出过问题。

避坑指南:我曾经见过一个团队,把“CAN总线”作为一个资产列进去,但没区分动力CAN、底盘CAN和信息娱乐CAN。结果分析时发现,三个CAN的安全等级完全不同,混在一起根本没法做风险评估。记住:每个物理或逻辑独立的通信通道,都应该单独列为资产。

3.5 资产识别流程图

下面这张图,是我在项目里反复使用的资产识别流程。你照着走一遍,基本不会漏。

资产识别流程图 资产识别流程图 获取系统架构图 识别硬件资产(ECU/传感器) 识别软件与数据资产 识别通信链路 填写资产清单模板 评审与确认 遗漏则返回补充 说明:评审发现遗漏时,沿虚线箭头返回对应步骤补充,直到所有资产确认无误

这个流程看起来简单,但实际执行时,评审环节最容易出问题。我建议至少安排两次评审:第一次是技术评审,邀请架构师和开发人员;第二次是安全评审,邀请安全专家和项目经理。两次评审侧重点不同,能最大程度保证资产清单的完整性。

3.6 实战案例:一个ADAS系统的资产识别

拿一个典型的ADAS系统举例。系统包含:1个前置摄像头、1个毫米波雷达、1个域控制器、1个T-Box。

按照我们的流程,资产清单应该长这样:

资产ID 资产名称 类型 功能域 网络接口 安全属性
ADAS-CAM-001 前视摄像头模组 硬件 ADAS 车载以太网 I, A
ADAS-RAD-001 毫米波雷达 硬件 ADAS CAN FD I, A
ADAS-DCU-001 域控制器 硬件 ADAS 以太网, CAN FD C, I, A
ADAS-TBOX-001 T-Box 硬件 信息娱乐 4G, 以太网 C, I, A
ADAS-DATA-001 目标列表(摄像头输出) 数据 ADAS 以太网 I
ADAS-DATA-002 雷达点云数据 数据 ADAS CAN FD I
ADAS-COM-001 ADAS内部以太网链路 通信链路 ADAS 车载以太网 C, I, A
ADAS-COM-002 T-Box到云端的蜂窝链路 通信链路 信息娱乐 4G C, I, A

你看,T-Box虽然属于信息娱乐域,但它和ADAS域有数据交互,所以也要列进来。这就是为什么我强调要跨域协作。单独一个域的工程师,很难看清全局。

关键提醒:资产识别不是一次性工作。随着项目迭代,系统架构会变,新功能会加,旧资产会退役。我建议每个迭代周期结束时,都重新审视一次资产清单。别等到TARA分析做完了,才发现资产清单还是三个月前的版本。

好了,资产识别这块就讲到这里。你手头如果有项目,不妨现在就拉上团队,按照这个流程走一遍。你会发现,很多之前模糊的地方,一下子就清晰了。