0x00 Abstract
基于通信的列车控制(CBTC)系统利用连续的、大容量和双向的列车到路边(train-to-wayside)无线通信来确保安全和高效的操作,其中主要采用基于802.11协议的无线局域网(WLAN)。WLAN以公共频率工作,不可避免地会受到恶意干扰和攻击,这可能严重影响CBTC系统的性能。由于CBTC系统的故障安全机制,恶意攻击会导致列车紧急制动,从而降低运营效率。
本文考虑了对基于WLAN的火车到路边通信的多通道中间人(MitM)攻击,提出的攻击方法可以操纵802.11帧,并带来延迟、丢包、甚至可以修改火车与路边设备之间传输的消息。根据CBTC系统的运行原理,根据受到攻击的列车轨迹与预设的最优列车运行曲线之间的比较量化了MitM攻击的影响,仿真结果证明了MitM攻击的原理和后果。
0x01 Introduction
由于开放标准和可用的商用现成设备,基于802.11协议的WLAN通常被用作火车到路边通信的主要方法。在过去的几年中,轨道交通中的信息安全引起了越来越多的关注。
考虑到WLAN的固有特性,本文考虑了针对列车到路边无线通信的多通道MitM攻击。攻击者可以操纵特定的802.11帧以执行诸如延迟、丢包甚至修改之类的操作,这可能导致不必要的牵引、行车制动、甚至是火车的紧急制动。因此分析了MitM攻击对CBTC系统的影响,并衡量了系统性能的下降。
0x02 CBTC System
CBTC系统由五部分组成:控制中心设备、车站设备、路边设备、车辆车载设备和数据通信系统(DCS),上如图所示。控制中心设备主要是火车自动监控(ATS)子系统。工作站设备包括区域控制器(ZC),计算机联锁(CI),数据存储单元(DSU)和工作站ATS扩展。路边设备主要包括扶手和计轴设备。车载设备主要包括ATP,ATO和人机界面(MMI),其中ATP和ATO构成了车载控制器(VOBC)。 DCS由有线网络和火车到路边的无线通信网络组成。
基于WLAN的火车到路边无线通信网络由路边接入点(AP)和移动无线站(STA)组成。基于冗余设计,在不同通道上工作的两个AP沿着磁道部署在同一位置。同样,在列车的前后分别安装了两个STA 。AP和STA之间的无线链路可以在ZC和VOBC之间提供火车到路边的数据通道。
在CBTC系统中,通过列车到路边的通信,列车可以基于移动块模式有效而安全地运行。列车需要始终根据前一列列车的相关数据来改变驾驶策略,以在两列相邻列车之间保持一定的安全距离。 VOBC定期将火车的位置,行进方向和速度发送到ZC。 ZC根据来自ATS,CI和DSU的信息计算火车的移动权限(MA),并定期发送给火车。通常,MA可以是前一列火车尾部的位置。
根据MA的要求,ATP计算速度/位置曲线,以确保火车的安全运行。当速度超过极限速度时,ATP触发紧急制动,直到火车停止。当通信时间延迟达到最大允许中断时间时,火车将触发紧急制动,以确保火车的安全运行。如果火车在一段时间内未收到更新的MA,则上一个周期中收到的旧MA将用作当前周期的MA。
0x03 Multi-channel MitM Attack
MitM攻击采用了多通道技术,该技术将真实AP克隆到与真实通道不同的非法通道上的非法AP中,并迫使STA与非法AP连接。攻击者通过将真实AP发送的所有帧复制到STA的工作信道来充当真实AP。同时,攻击者通过将STA发送的所有帧复制到真实AP的工作信道来充当STA。通过在两个通道之间转发帧,STA和真实AP可以进行通信。
为了可靠地拦截所有流量,攻击者会在真实通道和恶意通道之间转发流量,这需要两个特殊的无线网络适配器,如上图所示,其中一个在真实通道上运行,而另一个在非法通道上运行。一旦启动了rouge AP,攻击者就想强制STA连接到它。攻击者可以在信标内伪造信道切换公告(CSA)元素或探测响应,以迫使STA切换到恶意信道。当AP更改为新频道时,AP使用CSA通告新频道的频道号。 STA切换到rouge信道后,它不会与实际AP断开连接,因此不需要身份验证和关联。 STA切换后,攻击者开始在STA与真实AP之间转发帧。
攻击者可以操纵流量,并可以延迟、丢弃或修改STA与真实AP之间传输的特定帧。攻击者可以在收到帧后将其保存一段时间,然后转发或有选择地丢弃它,以增加VOBC和ZC之间的通信时间延迟。由于CBTC系统的安全要求,当通信时间延迟达到阈值时,可以将其视为通信中断。在以上攻击中,对手操纵加密的帧。在CBTC系统中,AP采用基于CCMP的WPA2保护机制。
如果攻击者想要修改加密的帧,则他必须将帧解密为纯文本,然后对其进行修改,然后进行加密并发送,如上图所示。要解密加密的帧或对纯文本进行加密,攻击者必须具有AP的预共享密钥,AP和STA的MAC地址以及通过四次握手生成的Anonce和Snonce来导出用于加密和解密的TK,可以从该帧中获取AP和STA的MAC地址。
为了获得Anonce和Snonce,攻击者需要在STA切换后向STA发送伪造的取消关联帧,这将导致重新开始四次握手。使用pyDot11库来解密和加密802.11帧,该库可以即时加密和解密802.11帧。通过修改帧,可以修改在VOBC和ZC之间传输的列车控制数据和列车状态数据
由于火车到路边的无线通信网络是冗余的双网络设计,因此仅攻击一个网络是无效的。同时攻击两个网络非常困难,因为两个攻击者必须严格同步。考虑以下情形:攻击者不断通过连续解除关联一直攻击STA,以使其与AP脱离关联,而另一攻击者则进行多通道MitM攻击。
0x04 Impacts and Simulations
通过多通道MitM攻击,攻击者可以增加通信时间延迟,中断通信并修改VOBC和ZC之间的数据。在本节中分析这三种攻击类型对CBTC系统的影响。根据CBTC系统的运行原理,通过比较受攻击列车轨迹与预设的最优列车运行曲线之间的比较来量化MitM攻击的影响,比较了不同情况下的列车行程时间,并使用了两个包围的区域速度/位置曲线除以行驶距离即可表示火车每米的速度差。差异越大,攻击对火车的影响越大。仿真参数如上表所示。
a)通信延迟攻击
通过通信延迟攻击,可以增加列车的MA更新间隔,但小于最大允许中断时间。将MA更新间隔定义为Tinterval。当没有攻击时,该间隔大约等于通信周期T。假设的情况如上图所示,火车与目标点之间的距离为L,刹车指示点与目标点之间的距离为X。如果连续n个通信周期中火车未接收到更新后的MA,两个相邻的不同MA之间的时间间隔Tinterval为(n +1)·T。当间隔满足:
其中vf是跟随列车的速度,并且跟随列车将应用行车制动以保持与领先列车的安全距离。当下一列火车最终接收到更新的MA时,它将停止行车制动并施加牵引力以加速行驶。
模拟方案配置如下,两列性能相同的火车从Station 0(0m)开始。攻击使通信延迟增加了3s。如上图所示,火车经常应用牵引力和行车制动。发生攻击时火车在接近刹车指示点的位置行驶,从600减速到680m,其速度从27.78下降到25.38m/s。攻击后,火车接收更新的MA,并从680m加速到760m,直到速度回到27.78 m/s。在这种攻击下,Station 0和Station 1(2000m)之间的每米速度差为0.275 m/s。
b)通信终端攻击
通过通信中断攻击,列车到路边通信的时间间隔大于最大允许中断时间,列车将触发紧急制动,如上图所示。当速度降至0时,即使恢复了通讯,火车也无法在CBTC模式下重新运行。火车的位置不正确,因为在紧急制动过程中车轮打滑并锁死了。为了在CBTC模式下重新运行,列车必须首先在限制模式(RM)下运行,速度限制为下一个平衡台的25 km/h,以进行位置校准。
在仿真中,出发间隔为90s。攻击始于领先的火车行进至1000m,并在领先的火车停止后90s结束。如上图所示,在Station 0和Station 1之间,有和没有攻击的领先列车的时间分别为106s和232s。在Station 0和Station 4(8000m)之间,有和没有攻击的领先列车的时间分别为455s和581s。尽管后续列车没有受到攻击,但基于CBTC系统的运行原理,其时间也会相应增加。当领先列车未受到攻击时,下一列火车在Station 0和Station 1之间的行驶时间为106和176 s。当领先列车未受到攻击或受到攻击时,在Station 0和Station 4之间下一列列车的时间为455s和530s。
上图展示了有和没有攻击时两列火车的速度/位置曲线。发生攻击后,领先列车会在1000m处触发紧急制动,然后以RM运行,直到在1500m恢复至CBTC模式。因此,下一列火车在Station 0和在Station 1之间频繁应用牵引力和行车制动。领先火车的每米速度差在Station 0和Station 1之间为4.446 m/s。Station 0和Station 1之间的下一列火车每米速度差为7.022 m/s。另外,当领先列车受到攻击时,领先列车和后继列车之间的距离太近。为了保持一定的安全距离,下一列火车要比未攻击前列火车提前3412m进行行车制动。在Station 1和Station 4之间,后续列车每米的速度差为0.772 m/s。
c)数据修改攻击
通过数据修改攻击,篡改了VOBC和ZC之间传输的列车控制数据和列车状态数据。这使他们可以获取彼此有关的错误数据。修改ZC生成的MA后,攻击者可能会使火车行驶到错误的位置。修改由火车发送的火车的位置后,由于连续两次接收到的火车位置之间的巨大差异,ZC会下降,这意味着ZC辖区内的所有火车都会触发紧急情况,制动显示为上图。重新启动ZC需要人工确认,并且需要很长时间。
由于修改火车控制数据可能仅影响一列火车,而修改火车状态数据将导致ZC下降并影响多列火车,因此仅考虑修改火车状态数据的情况。假设ZC的恢复时间为120s。上图显示两列火车减速到0的速度并在站点之间停了很长时间,因此与没有受到攻击相比,火车的旅行时间显着增加。在Station 1和Station 2(4000 m)之间,领先列车在没有和有攻击的情况下的行驶时间分别为106s和268s。在Station 0和Station 4之间,领先列车在没有受到攻击的情况下的时间分别为455s和616s。在Station 0和Station 1之间,后续列车在没有攻击和受到攻击的情况下的列车行驶时间分别为106s和286s,后续列车在Station 0和Station 4之间的行驶时间分别为455s和634s。
如上图所示,两列火车都触发紧急制动,然后以RM运行,直到它们恢复到CBTC模式。受到攻击后,Station 1和Station 2之间的领先列车每米速度差异为4.422 m/s,而Station 0和Station 1之间的后续列车每米速度差异为6.701 m/s。
0x05 Conclution
CBTC系统中的火车到路边无线通信网络在确保火车安全高效运行中发挥着重要作用。基于WLAN的漏洞,认为攻击者使用多通道MitM攻击列车到路边的无线通信网络。通过这种攻击,攻击者可以获得MitM的位置并执行诸如延迟,丢弃甚至修改之类的操作,这将导致不必要的牵引,行车制动,甚至是火车的紧急制动。将这些攻击分为三类:通信延迟攻击,通信中断攻击和数据修改攻击。根据CBTC系统的工作原理,通过对受攻击的列车轨迹与预设的最优列车运行状况的比较,量化了MitM攻击的影响。结果表明与无攻击相比,攻击增加了火车的行进时间和每米速度差。