4. DDS安全威胁分析

在车载DDS(Data Distribution Service)通信中,安全威胁并非抽象概念,而是直接对应到发布者、订阅者、Topic、域参与者以及底层网络报文的具体攻击面。理解这些威胁的入口、作用位置和后果,是后续配置DDS Security插件、访问控制策略和加密机制的前提。本节从攻击面出发,逐一分析六类典型威胁,并给出风险等级判断。

一、核心原理:DDS通信的攻击面在哪里

DDS采用以数据为中心的发布/订阅模型,域参与者(DomainParticipant)通过发现协议找到彼此,发布者(Publisher)和订阅者(Subscriber)围绕Topic交换数据。攻击面主要分布在四个层面:

  • 发现层:SPDP/SEDP报文暴露参与者身份、Topic名称、QoS和端点信息,是身份伪造和拓扑探测的入口。
  • 数据层:用户数据以序列化样本形式传输,若未加密,窃听和篡改可直接作用于业务数据。
  • 控制层:QoS、租约、心跳、确认等控制报文影响通信状态,重放和拒绝服务常在此层生效。
  • 权限层:访问控制插件依据身份证书和权限文档决定“谁能发布/订阅什么”,权限提升攻击瞄准的就是这一层。
攻击面不等于漏洞,但每一个未受保护的攻击面都会放大威胁的成功概率。车载场景中,CAN网关、域控制器、T-Box与座舱域之间的DDS流量一旦被攻破,可能影响驾驶安全相关信号。
DDS安全威胁与攻击面映射 发现层 · 数据层 · 控制层 · 权限层 DDS 域 DomainParticipant Publisher / Subscriber Topic + QoS 窃听 抓包读取样本数据 风险:高 篡改 修改序列化载荷 风险:高 重放 重复旧报文 风险:中高 拒绝服务 泛洪/资源耗尽 风险:高 身份伪造 冒充合法参与者 风险:高 权限提升 越权发布/订阅 风险:高 风险等级参考: 高 中高 中 风险等级取决于:数据敏感度、攻击可行性、影响范围、是否可远程触发

二、六类威胁的机理与风险等级

威胁类型 攻击入口 典型后果 风险等级
窃听 未加密的RTPS报文、组播发现流量 泄露车速、刹车、位置等敏感信号 高
篡改 无完整性保护的序列化样本 伪造控制指令,导致执行器误动作 高
重放 无序列号/时间戳校验的数据报文 重复执行旧指令,状态机错乱 中高
拒绝服务 发现泛洪、大样本、QoS资源耗尽 关键Topic通信中断,节点失联 高
身份伪造 无证书校验的SPDP/SEDP发现 冒充合法节点接入域,长期潜伏 高
权限提升 权限文档过宽或未启用访问控制 低权限节点发布高安全等级Topic 高

三、方法流程:从攻击面到风险定级

工程中建议按以下流程对DDS安全威胁进行系统分析:

  1. 资产识别:列出所有DomainParticipant、Topic、数据写入者和数据读取者,标注其安全等级。
  2. 攻击面枚举:检查发现层、数据层、控制层、权限层是否启用加密、认证和访问控制。
  3. 威胁建模:对每个攻击面匹配窃听、篡改、重放、拒绝服务、身份伪造、权限提升六类威胁。
  4. 风险定级:结合数据敏感度、攻击可行性和影响范围,给出高/中高/中/低等级。
  5. 控制措施映射:将风险映射到DDS Security的认证、加密、访问控制、审计等插件能力。
风险定级不是一次性工作。当车辆新增Topic、变更QoS或开放远程诊断通道时,攻击面和风险等级都需要重新评估。

四、案例/场景:车载DDS攻击链复盘

某车载域控制器通过DDS向座舱域发布“车辆状态”Topic,包含车速、挡位和车门状态。攻击者接入车内以太网后,先通过组播发现流量获取Topic名称和参与者GUID,随后伪造一个同名参与者加入域。由于未启用身份认证,伪造节点成功订阅到车辆状态数据,完成窃听;进一步地,攻击者向“车门控制”Topic注入伪造样本,试图触发解锁动作。

# 攻击链关键步骤(示意)
1. 监听 SPDP 组播 → 获取 DomainId、Participant GUID
2. 伪造 Participant 加入域 → 无证书校验,成功
3. 订阅 VehicleStatus Topic → 窃听车速/挡位
4. 向 DoorControl Topic 写入样本 → 篡改控制指令
5. 重复发送旧样本 → 重放攻击,绕过状态校验

复盘发现,若启用DDS Security的认证插件和访问控制插件,伪造参与者无法通过证书校验,未授权Topic写入会被权限文档拒绝,窃听和篡改的成功率将大幅下降。该案例说明:六类威胁往往不是孤立出现,而是形成攻击链,风险等级应按链式影响综合判断。

五、误区与复盘

  • 误区一:只加密用户数据,忽略发现流量。发现层泄露的Topic和GUID信息足以支撑身份伪造和精准拒绝服务。
  • 误区二:认为内网可信。车载以太网并非天然可信,诊断口、无线模块和第三方应用都可能成为攻击入口。
  • 误区三:把访问控制当成可选功能。没有权限文档,任何合法参与者都可能发布高安全等级Topic,权限提升风险极高。
  • 误区四:忽略重放。重放不需要破解加密,只需重复合法报文,若缺少序列号和时间戳校验,仍可造成危害。
拒绝服务在车载场景中尤其危险:攻击者不需要读取或修改数据,只需耗尽发现或传输资源,就可能让安全关键Topic无法按时交付。风险等级应结合实时性要求单独评估。

综上,DDS安全威胁分析的核心是把“攻击面—威胁类型—风险等级—控制措施”串成一条可落地的工程链路。只有先看清窃听、篡改、重放、拒绝服务、身份伪造和权限提升分别从哪里进入、影响什么对象,后续的DDS Security配置和访问控制策略才有明确的靶点。