渗透测试技术在数字化堆场改造过程中的应用研究
2020-07-06闫怀超
闫怀超
(上海工业自动化仪表研究院有限公司,上海 200233)
0 引言
近年来,渗透测试已经成为炙手可热的话题,被越来越多的人所熟知。渗透测试是为了证明网络防御按照预期计划正常运行而提供的一种机制[1]。其目的是发现和挖掘系统中存在的漏洞,然后输出渗透测试报告,并提交给网络所有者。网络所有者根据渗透人员提供的渗透测试报告,可以清晰知晓系统中存在的安全隐患和问题[2]。南通电厂通过对传统斗轮堆取料机(以下简称斗轮机)的通信方式进行改造,解决了斗轮机在运行中经常发生的因控制电缆线损坏引起通信故障和信号传输不稳定甚至中断的问题,大大提高了斗轮机通信系统的稳定性[3]。但是通信方式的改变也给通信网络带来了安全风险,暴露出的安全问题大大增加了电厂输煤控制系统网络被攻击的威胁。一旦被黑客攻击,造成的后果也是非常严重的。
从2010年伊朗的“震网病毒”(Stuxnet)攻击,到2018年中国台湾台积电的变种“WannaCry”攻击,均给国家和企业带来了巨大的损失。我国工业控制系统安全领域问题突出,工控信息安全防护体系建设滞后于工控系统建设。工控安全威胁的防护能力严重不足,给国家关键基础设施带来严重的安全隐患。2017年6月,《国家网络安全法》正式实施,将网络安全问题上升到法律层面,明确了关键基础设施必须在满足信息安全等级保护的基础上进行防护。2019年5月13日,《信息安全技术 信息系统安全等级保护基本要求》(GB/T 22239-2019)(以下简称等保2.0)正式发布,明确了 “一个中心三重防御”的思想。一个中心指安全管理中心,三重防御指安全计算环境、安全区域边界、安全网络通信。等级保护由1.0 到2.0,是被动防御向主动防御的提升。依照等级保护制度,可以做到整体防御、分区隔离[4],积极防护、内外兼防,自身防御、主动免疫,纵深防御、技管并重。这对加强中国网络安全保障工作、提升网络安全保护能力具有重要意义。
1 项目简介
南通某发电有限公司拥有2×1 050 MW超超临界燃汽轮机发电机组,于2013年全部投产。本项目中选用菲尼克斯无线模块FL WLAN 5100作为通信改造主要设备。斗轮机混合冗余系统网络架构如图1所示。
图1 斗轮机混合冗余系统网络架构图
通信系统采用“一主二从”网络架构。转运站顶部的通信装置作为主站,斗轮机上的WLAN 5100模块作为从站,通过无线接入点(access point,AP)功能实现主从站间的数据交互。为了使系统更可靠地运行,仍会保留原有的电缆,使之形成一个混合冗余系统。在上位机部分,操作员站和工程师站采用Windows 7操作系统,服务器采用Windows Server 2008操作系统[3]。
2 渗透测试与分析
渗透测试是通过模拟黑客攻击来评估计算机网络系统安全的一种评估方法[5]。这个过程会尽可能地发现系统的弱点、技术缺陷或漏洞,并在条件允许的情况下利用安全漏洞。
2.1 渗透测试概述
渗透测试流程如图2所示。渗透测试主要包含信息收集、漏洞分析、渗透攻击、后渗透攻击、报告这5个阶段。信息收集是渗透测试中非常重要的一个环节,主要关注域名信息、服务器、组件、指纹等方面。漏洞分析是针对信息收集所发现的问题,作进一步的漏洞挖掘,从而确定可以被利用的漏洞,比如弱口令、远程命令执行SQL注入等。渗透攻击和后渗透攻击是渗透测试的最后一阶段。根据不同的测试目的有不同的操作方法,针对工控系统,常用的渗透测试方法是分布式拒绝服务(distributed denial of service,DDoS)攻击和高级持续性威胁(advanced persistent threat,APT)攻击。
图2 渗透测试流程图
2.2 渗透测试环境搭建
根据电厂无线改造的实际情况,搭建一套仿真测试环境,开展本次渗透测试试验。
以WLAN5100作为主站接收数据,攻击者计算机模拟从站对主站进行网络渗透。上位机使用Windows server 2008,与传统电厂情况相似。系统改造遵循稳定性、可用性的设计原则,所以并未加入任何安全防护设备。服务器IP地址为192.168.1.54。攻击者IP为192.168.1.53。
试验仿真环境网络架构如图3所示。
图3 试验仿真环境网络架构图
2.3 渗透测试实施过程
渗透测试实施过程如图4所示。首先,使用无线破解工具暴力破解了WLAN5100 的无线密码,连接无线网后确认网络可达。使用kali-linux系统中的nmap漏洞扫描工具扫描对应存活主机开放的端口,根据开放的端口找到对应的漏洞和漏洞利用载荷(payload);启动漏洞载荷利用平台msfconsole,设置相应的参数;启动载荷(payload),获取被攻击系统的控制权。最终通过screenshot指令,获取上位机的截图,并回传攻击者计算机。
图4 渗透测试过程图
3 安全问题与防护建议
3.1 渗透测试发现的安全问题
通过渗透测试分析此网络通信系统,发现存在以下安全问题。
①无线网络设置过程中使用默认用户和弱口令密码。通过密码暴力破解工具破解无线网络(SIPAI_DLJ),破解出无线网络密码为sipai,为弱口令密码。通过查看WLAN5100模块手册,模块登录的默认密码为private,尝试登录无线模块成功。无线模块使用了默认密码。
②网络核心与车间网络的通道缺乏有效的访问控制,服务器和终端都直接连接核心交换机上,存在比较大的安全风险。
③无线网络边界无任何隔离和防护设备。渗透测试人员在连接无线网络后,可以直接扫描上位机,获取上值机开放端口并加以利用。该操作全程无任何告警信息和记录,对日志中异常行为的跟踪和分析不完善。
④对连接无线网络设备并无任何限制,对登录无线模块的账户也没有作权限分类,缺乏对监控人员的行为审计。
⑤在内部核心系统,没有网络入侵监控措施,对内外网非法用户的入侵行为以及蠕虫感染活动不能及时检测和控制
3.2 安全防护建议
最新出台的等保2.0中增加了工业控制系统安全扩展要求[6]。其中,第八章第5.3.3节中,对无线网络的使用提出了明确的要求。具体要求如下。
①应对所有参与无线通信的用户(人员、软件进程或者设备)提供唯一性标志和鉴别。
②应对所有参与无线通信的用户(人员、软件进程或者设备)进行授权,并对执行使用进行限制。
③应对无线通信采取传输加密的安全措施,以实现传输报文的机密性保护。
④对采用无线通信技术进行控制的工业控制系统,应能识别其物理环境中发射的、未经授权的无线设备,并报告未经授权试图接入或干扰控制系统的行为。
根据等保2.0,对无线网络设备的的要求,提出以下安全建议。
(1)技术层面。
①主要业务系统应对同一用户选择两种或两种以上组合的鉴别技术,以进行身份鉴别;同时,增加密码复杂度的要求[7]。在系统中部署双因素认证产品。在使用用户名、密码的同时,采用物理认证因素。双因素认证技术可抵御非法访问,提高认证的可靠性,降低来自内/外部非法访问者的身份欺诈和来自内部的更隐蔽的网络侵犯;同时,其也为安全事件的跟踪审计提供了依据[7]。
②利用网络设备所提供的功能,通过划分虚拟局域网(virtual local area network,VLAN),配合访问控制列表(access control lists,ACL)进行访问控制,划分出多个安全等级不同的区域。合理的安全域划分,以及对网络进行初步的安全防护,可以在一定程度上实现内网访问控制[8]。
③在网络边界部署传统的安全防护设备,如防火墙、入侵检测系统(intrusion detection system,IDS)、入侵防御系统(intrusion prevention system,IPS)等,加强网络边界防护,将安全风险阻挡在网络接入的边缘,能最大限度地保护计算域中核心业务系统的安全[9]。
④在网络中部署安全监控和审计设备,并能通过适当的方式,及时向信息安全管理员发出安全事件的告警。在保证业务连续性不受影响的前提下,选用带有自动响应机制的安全技术或设备,如IDS与防火墙联动、IPS、有过滤功能的内容审计系统,自动终止信息系统中发生的安全事件并保存相关记录。
(2)安全管理层面。
从技术层面、产品层面和方案层面,考虑内网安全问题。其都涉及到管理的问题。管理内容包括人员安全意识、设备管理、配置管理、审计管理、数据监控与流量管理、安全策略管理等。这样才能实现网络设备与安全功能模块或设备进行密切的配合,达到内网安全设备、方案的有效性,从而及时阻断未知网络攻击/网络滥用行为。
4 结论
渗透测试技术作为网络安全防范的一种新技术,对于网络安全组织具有实际应用价值[10]。其在传统信息安全领域的安全性分析,是许多企业开展安全防护工作的重要依据之一。但在工控安全行业,渗透测试技术的应用还不是很广泛。考虑到传统工业控制系统设备老旧、网络容量有限等实际情况,直接使用渗透测试的方法来检测系统的安全性是不切实际的。一般都是在停机系统检修或者系统维护的空档期进行渗透测试,从而尽可能降低渗透测试本身对工业控制系统的影响。本次渗透测试发现的弱口令、网络边界无防护、使用默认密码等问题符合现阶段大多数工控系统的实际情况,具有相对的普遍性。因此,在信息安全方面的工作仍然任重而道远。