APP下载

城轨交通列控系统渗透测试方法研究

2019-03-22罗铭张日新李祥步兵

中国铁路 2019年2期
关键词:控系统攻击者网关

罗铭,张日新,李祥,步兵

(1.交控科技股份有限公司,北京 100070;2.城市轨道交通列车通信与运行控制国家工程实验室,北京 100070;3.北京交通大学 轨道交通控制与安全国家重点实验室,北京 100044)

1 渗透测试研究现状

渗透测试(Penetration Test)是测试人员从攻击者的角度出发以成功渗入系统为目的,模拟攻击者的行为模式,利用攻击者的漏洞发现技术和攻击手段对被测系统进行深入的探测,以暴露系统信息安全薄弱环节,并针对测试结果给出信息安全解决方案或建议的过程[1]。

渗透测试领域研究主要集中在渗透测试技术研究、渗透测试模型研究和自动化渗透测试工具研究,Web渗透测试是目前渗透测试的热门方向[2]。工业控制系统渗透测试是另一个重要领域,包括电力、化工、冶金等在内的大量工业控制系统正越来越重视自身系统的信息安全性。根据测试人员对被测系统的了解程度,渗透测试可分为白盒、灰盒和黑盒测试[3]。白盒测试是指测试人员具有系统的全部信息,可以从源代码层次对系统进行测试和分析;灰盒测试和黑盒测试指测试人员不具备系统所有信息,测试难度更大。

复杂的渗透测试需要合理的指导框架。目前渗透测试领域的指南、框架、规范大部分来自欧美发达国家,如美国国家标准与技术研究院(NIST)发布的渗透测试流程标准,其测试流程见图1。该测试规范虽然划分出宏观阶段,但缺乏实际指导,难以真正指导渗透测试。

图1 NIST渗透测试流程

开放信息系统安全小组(OISSG)发布了信息系统安全评估框架(ISSAF),其测试流程见图2。该测试方法较详细,利于测试实施,缺点是不具有普遍性。对于列控系统的渗透测试,不能或者没有必要进行全部9个步骤。

图2 ISSAF渗透测试流程

在城市轨道交通领域,针对常用的CBTC系统,普遍的做法是雇佣第三方信息安全从业机构,为系统配备简单、通用的信息安全防护软硬件,在运营之前进行安全部署,由于缺少真实系统或模拟系统的渗透测试,因此对系统在遭受信息安全攻击时的表现没有合理、准确的认识和估计。

综合以上信息安全渗透测试流程,并考虑列控系统业务特点,提出精简、优化的列控系统渗透测试流程。

2 列控系统渗透测试概述

分析研究以上渗透测试规范和指南,将列控系统渗透测试流程确定为4个阶段(见图3)。

图3 列控系统渗透测试流程

(1)信息收集和准备阶段。从书籍、文献中了解列控系统公开的信息,如系统功能模块、网络架构、操作系统、通信制式、系统特点和安全防护手段等;根据了解到的信息制定渗透测试计划,确定重点关注对象;准备测试所需的软件和硬件。

(2)扫描阶段。从有线或无线的方式接入系统,通过监听获取网络相关信息;进一步对所在网络进行扫描,确认存活主机及其操作系统;选取个别主机进行更加详细的扫描,收集主机开放端口、运行服务等信息;利用商用漏洞扫描工具对系统所有漏洞进行扫描;确定重点关注主机或系统。

(3)渗透攻击阶段。根据扫描阶段得到的信息分析主机存在的隐患和漏洞,分析攻击手段和漏洞利用的可行性;选取可行的攻击手段和可利用的漏洞对重点关注对象进行攻击和漏洞利用,分析攻击结果。

(4)总结阶段。循环进行第2和第3步,直到没有新的信息发现;总结渗透测试的整个过程,分析入侵系统的难易程度,对系统在攻击下的表现进行评价,提出改善措施。

3 信息收集和准备阶段

列控系统渗透测试不同于传统IT行业和其他工控领域的渗透测试,需要充分考虑列控系统结构和功能特点,分析列控系统的薄弱环节。

3.1 列控系统接入方式分析

列控系统网络包括骨干网和接入网,分别对应有线接入和无线接入(见图4)。

图4 列控系统接入方式

(1)有线接入。列控系统采用专用网络,网络设备一般处于较为严密的物理防护下,但依旧存在因为管理不完善导致暴露物理网络接口的可能性;攻击者可能存在于系统内部,可直接接触到网络设备,或使用1台列控系统的功能主机作为攻击主机,从内部发起攻击。

(2)无线接入。列控系统无线制式包括WLAN和LTE两种[4-5]。WLAN的认证加密方式并不完善,近期WPA2曝出安全漏洞,使中间人监听、篡改成为可能。LTE的安全机制更为完善,密钥事先协商,存储在USIM卡中,采用的加密方式更加复杂,安全性很高[6]。列控系统无线信号沿轨道分布,乘客可在列车或站台上搜索到无线信号,鉴权与加密是网络的主要防护手段,若密钥泄露,系统容易接入。攻击者可能通过非法渠道购买密钥信息,或利用社工类手段获得密钥。

(3)其他服务系统接入。乘客信息系统(PIS)和视频监控系统(CCTV)等其他城轨系统与通信前置机存在网络连接,这意味着列控系统网络边界的进一步扩展[7]。

(4)移动存储设备。限于管理制度和信息安全意识的普及程度,目前移动存储设备(尤其是维护和检修人员持有)的接入访问没有严格控制,移动存储设备很有可能成为病毒、木马等进入列控系统的途径[8-9]。

3.2 列控系统软件平台安全分析

(1)操作系统。城轨交通列控系统主要使用Windows、Linux和VxWorks操作系统,Windows操作系统主要位于列车自动监督(ATS)子系统和维护网络中,用于各种工作站;Linux操作系统主要用于服务器和部分体量较小的嵌入式系统;VxWorks是实时操作系统,可裁剪性强,多用于进行原始数据计算的处理单元。

Windows系统漏洞种类繁杂、数量众多,主要存在于开放的各类服务中。Windows系统主要使用在列控系统的非安全设备中,对其进行渗透和攻击可能不会对列车安全运行产生显著影响,但对它们的渗透可为后续攻击提供大量的信息和便利。

VxWorks系统高度可裁剪化,大大降低了系统存在漏洞的可能性,可提高系统的工作效率和稳定性。虽然VxWorks系统安全性较高,但在低版本的系统中仍存在危害性很高的漏洞[10],鉴于VxWorks在列控系统中担任核心计算任务,对该系统的攻击可能导致列控系统功能受到严重影响。

(2)通信协议。城轨交通列控系统使用UDP协议进行列控信息传输,在应用层使用铁路信号安全通信协议(RSSP)以及信号设备厂家私有协议。针对UDP协议存在一些成熟的拒绝服务(DoS)攻击,同样适用于列控系统;应用层协议明文传输数据存在数据监听的可能;应用层协议防护机制存在漏洞,被攻击者利用可实现中间人攻击。

3.3 列控系统功能安全防护机制分析

列控系统是安全苛求系统,采取了大量的安全机制和策略,这些安全机制增强了系统可靠性和可用性,但未从信息安全的角度考虑。列控系统的安全机制主要有以下2种:

(1)双网冗余。列控系统信号安全网络、ATS网络、区域控制器(ZC)、计算机联锁(CI)等设备的内部网络等都采用双网冗余,当一张网故障通信中断后,系统会使用另一张网的数据,保证功能不受影响。该手段增强了系统的耐受性,对一些泛洪DoS攻击有很好的防护效果,然而网络数量的增加也增大了被入侵的可能;部分系统对冗余网络上的数据具有新鲜程度的判断,缺少正确性的判断,若存在数据篡改,系统从双网中选择最早到达数据,仍有一定概率使用被篡改的数据。

(2)二乘二取二安全计算机平台。ZC、CI等至关重要的设备使用二乘二取二、三取二和双机热备等结构实现其功能,常用的二乘二取二架构以2系主机保证设备的可用性,以每系中的2台主机保证计算的正确性,平台的计算、通信都具有严格的微周期限制,导致系统在遭受攻击时可能更易被攻破。

4 扫描阶段

扫描阶段在列控系统半实物仿真平台中进行,平台使用部分地铁线路真实设备(包括ZC、车载控制器(VOBC)等)和仿真软件搭建而成。

4.1 测试工具

测试工具主要包括扫描工具和攻击工具(见表1)。

表1 测试工具

4.2 扫描结果分析及攻击方法确定

扫描阶段的工作内容和部分结果如下:

(1)监听数据通信。使用wireshark进行抓包,在未知网络条件的情况下监听广播数据包(ARP数据包、NBNS数据包等),分析活跃的IP,确定子网掩码和网段。

(2)通信关系确立。使用omnipeek对数据包的IP和MAC地址进行分析分类,绘制设备间的通信关系图。

(3)端口扫描。对重点关注对象进行端口扫描,获取主机端口开放状态和服务开放状态,重点关注常用服务和端口,如远程桌面服务、445端口等。对真实ZC进行扫描,ZC主机端口开放情况见表2。

(4)漏洞扫描。利用漏洞扫描工具nessus对网络中存活的主机进行扫描,获得主机漏洞情况,分析漏洞的可利用性,为下一步实践攻击做准备。ATS网络主机漏洞扫描部分结果见表3。

表2 ZC主机端口开放情况

表3 ATS网络主机漏洞扫描部分结果 个

5 渗透攻击阶段

渗透攻击阶段分别进行一般网络攻击和高危漏洞利用。

5.1 Windows系统漏洞利用

(1)漏洞介绍:Windows系列操作系统中存在大量已知漏洞,系统部分服务,如SMB服务更是漏洞的高发区。利用这些漏洞可达到拒绝服务、远程代码执行等效果。

(2)漏洞利用:从ATS网络有线接入,以网关计算机为测试目标进行渗透。使用metasploit,对网关计算机进行攻击。攻击方式是缓冲区溢出,Windows系统漏洞利用流程见图5。

图5 Windows系统漏洞利用流程

(3)攻击效果分析:攻击成功获取被攻击主机管理员权限。被攻击主机向攻击者反弹会话连接,攻击者可执行任意命令。该攻击收效巨大,基本完全控制网关计算机。

攻击网关计算机可以中断信号安全网络与ATS网络的数据转发。ATS网络与信号安全网络通信中断将导致列车位置信息不能及时上报,ATS失去对列车的实时追踪;在遥控模式(中心控制)下,中心ATS通信中断,无法下发计划,CI无法排列进路,ZC计算的移动授权MA不能向前更新,列车不能进入无MA的区段,进而影响列车运行效率。

网关计算机是列控系统信号安全网络与ATS网络的连接枢纽,能够以该主机为跳板实现不同网络间的自由访问。

5.2 洪水攻击

(1)攻击原理:向被攻击者快速发送大量数据包或链接请求,占用大量的网络带宽资源或CPU资源,导致主机网络中断或因为资源占尽而产生卡顿甚至宕机。洪水攻击包括ICMP、UDP、SYN、TCP等多种方式,在此使用UDP洪水。

(2)攻击过程:从信号安全网络有线接入,使用组包工具hping3以尽可能快的速度向ZC发送UDP数据包,查看ZC和VOBC的表现。

(3)攻击效果分析:大量数据占用了VxWorks系统计算能力,导致微周期被打破,触发ZC的安全保障机制,通信控制器被ZC主动关停,需要人工按压恢复按钮。因为双网冗余,系统运行不受影响,与前期分析结果一致。

同时在2张安全信号网络中对ZC进行攻击,2个通信控制均被关闭,ZC失效,此时运行在ZC管辖范围内的列车紧急制动并且进入人工模式,严重影响行车效率和旅客乘坐的舒适性。

5.3 VxWorks系统漏洞利用

(1)漏洞介绍:部分低版本VxWorks系统默认开启17185调试端口,且无端口访问权限控制。

(2)漏洞利用:从ZC内网接入,使用metasploit中的VxWorks攻击脚本,按照特定格式发送VxWorks调试命令,攻击ZC内部处理单元或通信控制器。

(3)攻击效果分析:攻击单一主机,被攻击主机立即关机或重启,ZC自动切换工作系,功能不受影响;连续攻击ZC中2系设备,最终造成ZC整体失效。

该攻击条件要求较高,需要ZC等设备内网的接入权限,但攻击效果明显。ZC一旦拒绝服务,在该ZC管辖范围内的列车会进行紧急制动后请求进入人工模式,在人工模式下以较慢的速度行驶,后续车辆也会因此受到影响,都降级到人工模式,最后造成整条线路列车的积压,严重影响列车运行效率。

6 总结阶段

6.1 影响分析

通过列控系统渗透测试,发现以下问题:

(1)网关计算机疏于防护:网关计算机是信号安全网络与ATS网络信息交换的枢纽,地位重要。一旦网关计算机被攻击而拒绝服务,虽不会造成列车安全事故,但会造成命令无法下发、列车位置无法上报等后果,严重影响运营;若网关计算机被攻击者控制,攻击者就能从ATS网络接入信号安全网络,造成更严重的后果。

(2)功能安全防护机制导致系统信息安全攻击耐受性下降:列控系统中为提高可靠性而使用的二乘二取二安全计算机平台在泛洪类网络攻击下耐受性下降,攻击更易起效。

(3)Windows操作系统引入大量漏洞:Windows操作系统向列控系统引入了诸多高危漏洞,利用这些漏洞轻则导致拒绝服务、信息泄露,重则导致攻击者能够控制系统、潜伏隐藏,危害巨大。

(4)系统软件陈旧:列控系统中使用的操作系统较为陈旧,因与外网隔离也难以及时安装安全补丁,这导致大量存在很长时间的漏洞依旧能够被利用。

6.2 防护建议

目前城轨交通系统中已设置了一些信息安全防护手段,例如在系统关键位置放置防火墙,防止从系统外部发起的攻击;在功能主机上安装应用程序白名单,仅允许少量应用和进程运行,降低系统被植入木马和后门的风险。但是为了防止防护措施的误报、误杀对功能软件产生影响而进一步影响行车,已经应用的防火墙和白名单存在未激活或过滤条件过于宽松的情况。

城轨交通列控系统应满足三级等级保护的要求[11]。整体的安全保障体系包括安全技术和安全管理两大部分,安全技术又分物理、网络、主机、数据、应用5个方面。在此主要针对后4个方面给出建议[12]。

(1)网络安全:做好网络隔离、端口禁用、端口绑定等工作能防范有线方式接入网络,也能防御部分DoS攻击;增加防火墙,列控系统应当在接入交换机、网关计算机、通信前置机等系统边界处安装防火墙,阻止攻击者的渗透。

(2)主机安全:列控系统应当定期以集中发放的方式安装补丁,能够防范大部分已知的漏洞利用攻击;增加入侵检测系统,在列控系统中安装入侵检测和异常检测系统,实时检测系统状态,向系统决策者发出预警。

(3)数据安全:严格遵守安全等级保护体系中对数据存储、备份、销毁等阶段的各项要求;开发加密式通信协议,防止数据传输过程中可能发生的窃听和篡改。

(4)应用安全:应增加主机卫士或类似安全设备,使用白名单的方式对应用进行保护,防止恶意应用对关键文件的操作;增加堡垒机或类似安全设备,进一步加强身份认证。

7 结束语

结合列控系统工作原理和网络架构,分析系统存在的信息安全隐患和风险。综合各类渗透测试方案和指南,分析其优劣,结合列控系统特点,提出列控系统的渗透测试流程。以列控系统半实物仿真平台为测试对象,提出渗透测试方案,并验证列控系统真实存在的隐患,进而提出改善建议。

猜你喜欢

控系统攻击者网关
基于FPGA的工业TSN融合网关设计
一种主从冗余网关的故障模式分析与处理
关于DALI灯控系统的问答精选
联调联试中列控系统兼容性问题探讨
数字电视播控系统关键技术探究
正面迎接批判
天地一体化网络地面软网关技术及其应用
正面迎接批判
基于Arduino的智能家居灯控系统设计
基于ETC在线支付网关的停车场收费系统设计