Page 462 - 《软件学报》2025年第4期
P. 462
1868 软件学报 2025 年第 36 卷第 4 期
最基本的要求, 任何预期之外的通信链路时延或停止服务都会对驾驶决策造成影响. 破坏可用性的关键在于使目
标车辆或主机及其通信链路拒绝服务或无法正常服务, 本节总结了 3 类攻击模式.
1) 发送“垃圾数据”, 恶意消耗目标资源
如果自动驾驶参与方耗费过量的资源处理接收的“垃圾数据”, 将使得正常信息得不到及时处理, 甚至导致自
动驾驶汽车与外界失去联系, 如拒绝服务攻击 [57] 、女巫攻击 [61] 、干扰攻击 [62] 、交火攻击 [63] 等.
2) 利用路由协议缺陷, 阻塞目标通信链路
V2X 通信是具有快速变化的动态拓扑结构的自组织网络, 必须依赖路由发现协议完成消息的发送, 但是由于
这一过程可以被欺骗, 使得恶意攻击者可以通过篡改邻居列表等方式吸收受害车辆的流量, 使其无法接受关键信
息. 如黑洞攻击 [64] 、虫洞攻击 [65] .
3) 篡改局部控制指令, 引发 Platoon 控制异常
Platoon 控制是车联网中的重要概念. “Platoon”是指在同一车道上距离很近、车速相同一组车, 将之作为一个整
体参与通信可以节省能源、提高道路容量、有效地管理交通 [72,73] . 攻击者为破坏 Platoon 的稳定性采取的任何类型
行动都被称为 Platoon 攻击. 如攻击者通过修改局部控制指令来破坏整个 Platoon 的稳定 [66] , 导致车祸、交通阻塞等.
于密码学的工作重点关注方案在时间和空间上的高效性, 如文献
4.2 破坏 V2X 通信完整性
破坏完整性的关键在于破坏 V2X 通信传输的一致性, 包括数据体的一致性以及上下文的一致性. 完整性被破
坏, 一般会使得自动驾驶汽车获取错误的交通信息、车主下载恶意软件造成汽车系统植入后门, 危及乘客或行人
安全.
破坏 V2X 通信完整性一般要先劫持通信链路, 然后通过篡改实现对链路中消息的完整性破坏. 劫持通信链路
一般通过中间人攻击 [69] 实现, 在通信节点间插入恶意节点充当第 3 人, 控制车辆间通信过程. 成功劫持链路后, 攻
击者就可以破坏通信链路的数据一致性, 如虚假数据注入攻击 [67] 、空中下载攻击 [68] 和灰洞攻击 [70] .
4.3 破坏 V2X 通信机密性
破坏机密性的目的在于非法获取自动驾驶汽车在通信过程中传输的敏感信息. 由于敏感信息不会直接造成自
动驾驶汽车的运行安全问题, 因此并未得到安全研究者足够重视. 但是获取自动驾驶汽车的敏感信息有时会对攻
击实现提供重要的辅助作用, 如获取汽车协议地址、服务器等信息, 可以有针对性地实现对通信链路劫持. 文
献 [71] 通过伪装成一个合法的网络用户, 获得对车辆及驾驶员信息的访问, 窃取身份、物理地址、域名服务器
(DNS) 信息、互联网协议 (IP) 地址等信息.
4.4 防护措施
随着自动驾驶汽车网联化进一步深化, 未来 V2X 通信将成为汽车从网络环境中获取信息的重要途径, 如通过
与其他车辆交互获取道路路况、智能寻找停车位等. V2X 通信的安全性将决定着自动驾驶汽车集群的安全性与
可靠性, 如果攻击者能够成功攻击车群内的一辆车, 以此为跳板, 攻击者可能对集群里其他车辆实现间接攻击, 从
而导致恶性大规模连环交通事故的发生. 因此保障 V2X 通信安全对于自动驾驶至关重要.
V2X 通信需要满足实时性、动态性等特点, 传统的安全保护措施例如基于密码学的加密认证等方法具有较
大的局限性, 增加了处理时间和网络开销, 如基于 PKI 的身份认证方案 [74] 、动态密钥管理方案 [75] 等. 因此现有基
[76] 提出了一种基于椭圆曲线加密的安全管理
方案, 通过密钥交换、数字签名和加密来确保车辆身份和信息交换的真实性, 提供完全前向保密性和组前后保密
性, 抵御重放攻击和中间人攻击.
由于检测方法对计算资源要求低, 不对协议进行改变, 因此目前基于机器学习或深度学习的攻击检测方法已
经成为主流, 如表 3 所示. 根据检测领域的不同, 主要有基于车辆的时间、位置、速度、加速度和加速度变化量等
数据特征, 利用 SVM 算法检测女巫攻击 [77] ; 基于车辆速度、相对位置等数据特征, 利用 CNN 检测针对 Platoon 稳
定性的攻击 [66] ; 基于数据包 ID、IP 来源、有效载荷等 15 种流量特征, 分别利用 FFNN 和 SVM 算法检测灰洞攻
击 [70] ; 基于 SUMO 交通模拟器生成目标 IP、传输和接收的字节数、丢弃的字节数等行驶轨迹流量特征, 使用