3. 车载网络安全威胁 landscape
在 ECU 主机安全监测与事件响应工程中,威胁建模不是一次性的文档工作,而是贯穿整车生命周期的安全基线。要建立有效的监测与响应能力,首先必须看清车载网络的攻击面分布、理解真实攻击的杀伤链,并掌握一套可复用的威胁建模方法。本节围绕攻击面、Jeep 远程入侵案例、STRIDE 方法及其在 ECU 场景的落地展开。
一、车载网络的攻击面全景
现代汽车是一个由数十到上百个 ECU、多种总线与无线接口构成的分布式系统。攻击面可按“物理接触—短距无线—远程无线—供应链”四个层次划分,越靠上层,攻击者所需的前置条件越少,但影响范围往往越大。
- 物理接口层:OBD-II 诊断口、USB、调试口(JTAG/UART)、以太网诊断口。攻击者接入 OBD 后可直接发送 UDS 诊断请求,甚至刷写 ECU。
- 短距无线层:蓝牙、Wi-Fi、RFID/PEPS 无钥匙进入、TPMS 胎压监测。典型如中继攻击(Relay Attack)绕过无钥匙进入。
- 远程无线层:蜂窝网络(4G/5G TCU)、GNSS、V2X。这是 Jeep 案例的入口,攻击者可跨地域发起攻击。
- 供应链与云端层:OTA 升级通道、TSP 车联网平台、第三方 SDK、诊断仪与产线工具。供应链污染可一次性影响大量车辆。
从 ECU 主机视角看,攻击面最终收敛为几个关键“咽喉点”:CAN/CAN-FD 报文收发、诊断会话(UDS 0x10/0x27/0x2E/0x31)、刷写流程(0x34/0x36/0x37)、以及网关的跨域路由。监测系统应优先在这些咽喉点部署探针。
二、真实攻击案例:Jeep Cherokee 远程入侵
2015 年 Miller 与 Valasek 公开的 Jeep Cherokee 远程入侵是车载安全史上的里程碑。其杀伤链清晰展示了“远程入口—网关突破—总线控制”的典型路径:
- 远程入口:通过蜂窝网络访问车辆娱乐系统的 Uconnect 模块,利用其开放端口与固件漏洞获得代码执行。
- 横向移动:从娱乐域经内部 CAN 总线跨越到动力与底盘域,突破原本应隔离的网关。
- 总线控制:向 CAN 总线注入伪造报文,控制雨刮、空调、油门与刹车,最终在高速上远程熄火。
该案例暴露的核心问题并非单一漏洞,而是域隔离缺失、总线无认证、诊断权限过宽。对 ECU 监测而言,可提取的关键检测点包括:异常 CAN ID 频率、非诊断会话下的刷写请求、娱乐域向动力域的越权报文。
# 典型异常 CAN 报文监测规则(伪代码)
if can_id in POWER_TRAIN_IDS and src_domain == "INFOTAINMENT":
alert("跨域越权报文", severity="HIGH")
if uds_service in [0x34, 0x36, 0x37] and session != "EXTENDED":
alert("非法刷写请求", severity="CRITICAL")
if msg_rate(can_id) > baseline * 5:
alert("报文洪泛/注入嫌疑", severity="MEDIUM")
三、STRIDE 威胁建模方法及 ECU 场景映射
STRIDE 是微软提出的六类威胁分类法,适合在 ECU 主机层面逐项对照。其六类威胁与车载场景的映射如下表:
| STRIDE 类别 | 含义 | ECU 场景示例 | 监测/缓解手段 |
|---|---|---|---|
| Spoofing 仿冒 | 伪装成合法实体 | 伪造 ECU 节点发送 CAN 报文 | SecOC 消息认证、MAC 校验 |
| Tampering 篡改 | 非法修改数据或固件 | 篡改刷写镜像、修改标定数据 | 安全启动、签名校验、刷写审计 |
| Repudiation 抵赖 | 否认已发生的操作 | 诊断操作无日志,无法追溯 | 安全日志、时间戳、事件上云 |
| Information Disclosure 信息泄露 | 敏感数据被未授权获取 | 密钥、VIN、位置信息被读取 | 密钥保护、访问控制、数据脱敏 |
| Denial of Service 拒绝服务 | 资源被耗尽导致不可用 | CAN 总线洪泛、ECU 刷写阻塞 | 总线负载监测、优先级仲裁 |
| Elevation of Privilege 权限提升 | 获取更高权限 | 普通诊断会话越权进入刷写模式 | 会话状态机校验、权限最小化 |
四、威胁建模落地流程与常见误区
在工程实践中,建议按以下流程将 STRIDE 落到 ECU 主机:
- 资产识别:列出 ECU 内的关键资产(密钥、固件、诊断接口、总线通道)。
- 数据流图绘制:标注信任边界,如娱乐域与动力域之间的网关。
- STRIDE 逐项分析:对每条数据流套用六类威胁,形成威胁清单。
- 风险评级与缓解:结合 DREAD 或 CVSS 评分,确定监测规则与响应策略。
- 验证与迭代:通过渗透测试与红蓝对抗验证检测有效性,持续更新规则库。
综上,车载网络安全威胁 landscape 的核心在于:认清攻击面的层次与咽喉点,用真实案例校准风险认知,以 STRIDE 为骨架建立可迭代的威胁模型,并最终将模型转化为 ECU 主机上可运行的监测与响应能力。