【技术干货】融安网络在船舶制造工业控制系统网络攻防的仿真建设项目(上)

2022-08-19 17:46:15来源:

一、船舶工业的发展趋势


随着新一代信息通信技术的快速发展,数字化、网络化、智能化日益成为未来制造业发展的主要趋势,世界主要造船国家纷纷加快智能制造步伐。近年来,我国船舶工业实现了快速发展,骨干造船企业建立起以中间产品组织生产为特征的现代总装造船模式,并不同程度开展了智能化转型探索工作,取得了一定成效。但总体上我国船舶制造业仍处于数字化制造起步阶段,存在基础工艺数据缺乏积累、网络化水平不高、信息孤岛现象大量存在、工控安全管理及防护存在较多空白等突出问题亟待解决。而伴随船舶制造行业的日益发展,为了造船厂生产有序进行,相关配套的工业网络安全保障也是刻不容缓。

根据2018年工业互联网创新发展工程(网络和安全方向)项目“面向船舶行业的工业控制系统主动安全防护技术集成与推广”的要求,围绕船舶行业工业控制系统信息安全需求,搭建船舶行业工业控制系统信息安全测试环境,开展船舶行业工业控制系统安全性进行测试评估,开展内置安全功能工业控制系统产品、工业信息安全新技术及系统安全解决方案在模拟生产环境下的可靠性、安全性测试,评估验证新产品、新技术、新应用等在行业推广的可行性与实用价值。

在建立船舶行业工业控制系统信息安全技术及系统安全解决方案研发的基础上,推进船舶工控安全研究,攻防演练研究,面向船舶工业生产过程中的材料加工、分段建造、舾装、合拢等关键环节和材料预处理流水线、管线生产线、装焊平台等核心装备设计建设工业控制系统信息安全测试验证环境。围绕船舶行业工业控制系统信息安全需求,联合产、学、研、用机构,集成推广具备主动安全防护技术的行业典型系统和装备,实现对常见工业控制系统信息安全威胁的防御。

船舶制造工业控制系统网络攻防仿真项目建设完成后,不仅可以完成现场环境、技术研究成果的展示,更主要的体现在对工业控制系统网络安全的攻防演示,教育培训,挖掘工控网络的薄弱环节,进而采取必要的加固方案,进而保障工业生产的安全和稳定性。项目主要建设目标有以下几点:

(1)实现对工业控制系统网络的研究以及对最新的网络攻防技术的跟踪;

(2)寻找可能的网络攻击切入点,模拟网络攻击,深入分析攻击途径、攻击方式以及攻击对系统的影响;

(3)加强人员培训,为国家船舶行业培养出更多优秀的工业网络安全技术人才;

(4)针对网络攻击技术测试安全防护手段,向工业控制系统厂商提供产品改进建议;

(5)增加网络及设备威胁发现能力及手段,对入网的工业控制系统进行安全测评。


二、项目整体设计思路


随着计算机网络的不断发展,全球信息化已成为人类发展的大趋势;给政府机关、工厂企业的生产带来了革命性的改革。但由于计算机网络具有联结形式多样性、终端分布不均匀性和网络的开放性、互连性等特征,致使工控网络易受黑客、病毒、恶意软件和其他意图不轨的攻击,近年来,频繁出现的工控安全事件事实证明,工控安全是一个关系到国家安全的至关重要的的问题。

船舶制造仿真实训项目的宗旨在于为社会培养工控安全技能型人才,服务对象是政府、企业和高校,倾向于走政企结合、校企合作、产学研一体化的科学道路。融安网络结合实际工业环境和市场需求,开发编写了针对船舶制造行业工控安全的实训课程,能够满足政府机关、工厂企业、高校等相关单位的网络安全人才培训要求。

船舶制造仿真实训项目采用模块化教学实训平台结构、船舶行业案例式的教学实训内容,通过有效开展基础理论教学、实训教学、攻防演练等一系列的实训授课与工业网络安全人才培养,支撑船舶制造仿真实训项目的工控网络安全特色教学建设。项目包括仿真实训、基础课程、技术实训、综合提升、按需培训等模块组成,其中,仿真实训模块包含了船舶生产仿真、工控网络仿真和工控安全防护平台。整体设计如下图所示:

图:平台功能架构图


三、攻防实训场景


实训场景一:船舶制造网络流量监听攻击


该场景模拟黑客通过监听船舶制造网络环境中操作员站和PLC之间的数据通信包,从而获得生产系统关键的数据,达到窃取生产信息的目的。

攻击路径示意图:

攻击原理

数据传输是依靠数据报文中的MAC地址来寻找目的主机。而网卡构造了硬件的“过滤器”,可过滤掉不是发给自己的数据帧。

监听网络中的数据报文也被称为“嗅探”,所以Wireshark等软件也被称为“网络嗅探器”。嗅探程序只需关闭“过滤器”,将网卡设置为“混杂模式”就可以进行嗅探。不但可以用于黑客攻击中的信息收集,对于系统管理员来说,也可以用于分析网络性能和故障。

系统管理员通过Wireshark可以诊断出通过常规工具难以解决的网络疑难问题,包括计算机之间的异常通信、不同网络协议的通信流量、每个数据报文的源地址和目的地址等。

攻击所用工具及软件

本实验使用工具及软件如下:

Wireshark数据监听软件一套;

攻击电脑一台。

Wireshark

Wireshark(前称Ethereal)是一个网络数据报文分析软件。网络数据报文分析软件的功能是截取网络数据报文,并尽可能显示出最为详细的网络数据报文信息。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。

网络管理员使用Wireshark来检测网络问题,网络安全工程师使用Wireshark来检查信息安全相关问题,开发者使用Wireshark来为新的通讯协议除错,普通使用者使用Wireshark来学习网络协议的相关知识。当然,黑客也会“居心叵测”地用它来寻找一些敏感信息。

攻击步骤

步骤一

攻击者修改工业交换机的设置,将所接入的端口设置为镜像端口,为实施监听攻击做准备。

步骤二

攻击电脑打开Wireshark软件,如下图,选择捕获端口为“本地连接”,则Wireshark自动开始捕获数据报文。

此时Wireshark已经开始进行数据报文的捕获了,图中可以见到已经有通信信息被捕获到,各个功能模块介绍如下。

完成数据报文的捕获后,需要用文件保存这些数据报文。

防护方案

对传输的数据进行加密,即使攻击者获得数据也不能进行破译,数据虽然可以被监听窃取到,但是无法查看使用。


实训场景二:船舶制造工作站BadUSB攻击


该场景模拟黑客通过BadUSB工具U盘,向船舶制造网络环境中操作员站注入恶意指令,打开操作员站PC的系统后门,然后黑客通过系统后门进行远程连接,进入操作员站进行破坏。

攻击路径示意图:

攻击原理

BadUSB最早是在2014年的黑帽大会上研究人员JakobLell和Karsten Nohl提出并展示的。不同于老式的U盘病毒,它利用了USB协议中的一个漏洞,通过模拟键盘、鼠标、网卡等从而让目标电脑执行恶意代码,达到控制主机或者窃取敏感信息等目的。这种攻击也被称为HID攻击。

一般来讲针对HID的攻击主要集中在键盘鼠标上,因为只要控制了用户键盘,基本上就等于控制了用户的电脑。攻击者会把攻击隐藏在一个正常的鼠标键盘中,当用户将含有攻击向量的鼠标或键盘,插入电脑时,恶意代码会被加载并执行。

当你插入这个定制的USB设备时,电脑会识别为一个键盘,利用设备中的微处理器,与存储空间,和编程进去的攻击代码,就可以向主机发送控制命令,从而完全控制主机,无论自动播放是否开启,都可以成功。

本实验使用BadUSB工具注入指令,使其从指定的网站下载并执行木马程序,然后攻击者使用远程连接终端连接开了后门的工程师站,从而控制工程师站并进行任意操作,例如数据收集或者生产破坏。

攻击所用工具及软件

本实验使用工具及软件如下:

Digispark USB开发板一个;

Arduino IDE 开发软件一套;

开源软件Metasploit一套;

XAMPP网站搭建软件一套;

攻击电脑一台。

攻击步骤

步骤一

攻击者使用Metasploit生成控制后门木马文件。

步骤二

攻击电脑利用XMAPP软件搭建网站,将生成的木马文件放置在网站里。

步骤三

使用烧录代码的编译器Arduino IDE,将恶意代码烧录到Digispark USB开发板中,这样我们就得到了一个BadUSB。

然后将得到的BadUSB插入到工程师站的USB端口上,等待一会儿,等到木马程序被自动下载并执行。

步骤四

使用Metasploit后门服务器端,接收来自木马的连接,成功后,可以进入工程师站。然后进行系统提权、文件窃取、远程桌面连接等各种进一步操作。

防护方案

对于BadUSB攻击,普通的安全防御方式全部失效,毕竟系统不会拒绝键盘的输入,杀毒软件和终端安全软件也无法识别键盘输入的命令是来自真人还是来自恶意脚本。

所以,要防御BadUSB攻击,要么工程师站完全禁止USB端口使用,要么就必须利用专门的安全设备,USB安全保护终端。

USB安全保护终端有独立的连接线,受保护的主机仅能通过该连线连接USB安全保护终端,所有USB外设只能连接到该USB安全保护终端。

BadUSB伪装为键盘插入安全保护终端后,安全保护终端识别为键盘后,会在液晶屏上显示出一个随机的PIN码,使用者必须输入正确的PIN码,才能让键盘连入主机,因为BadUSB无法输入PIN码,所以被拒绝连入主机,这样就可以有效地保护主机不受攻击。


实训场景三:船舶制造生产数据篡改攻击

该场景模拟黑客通过扫描船舶制造内网,识别出西门子PLC,然后直接对西门子PLC发送错误指令,令生产过程发送改变,这种行为就是数据篡改攻击。

攻击路径示意图:

攻击原理

可编程控制器,英文为Programmable Logic Controller,缩写为PLC,中文全称是可编程逻辑控制器,是一种工业自动化生产中常用的控制器。PLC刚出现时,因为只有布尔逻辑控制功能,所以被称为可编程逻辑控制器。后来随着技术的发展,PLC性能越来越强大,不仅有布尔逻辑控制能力,还具有模拟量控制能力,所以后来国内就直接称它为可编程控制器。

西门子是世界上老牌的PLC生产商,产品稳定,技术支持到位,业界地位很高。由于历史原因,PLC的安全认证功能很差,基本上任何网络上的设备都可以使用TCP 102端口和它建立连接,发送的指令都会被执行,不管发送者是合法主机还是非法主机。

西门子S7系列PLC采用以下两种通讯方式:

1)开放式的TCP\IP,可以用于连接PLC与其他非西门子硬件。

2) 西门子自己开发的S7 Protocol以太网通讯协议,用于西门子内部硬件通讯。

这两者的传输报文是不一样的,如下图:

西门子数据存储到二进制时方式是大端模式(BIG-Endian),而我们的普通电脑常常为小端模式(Liitle-Endian)。

大端模式是指数据的低位保存在内存的高地址中,而数据的高位保存在内存的低地址中。

小端模式是指数据的低位保存在内存的低地址中,而数据的高位保存在内存的高地址中。

例如:双字 DWORD 0X2F11214CPLCPC

PLC

PC

所以数据需要进行转换。

攻击所用工具及软件

本实验使用工具及软件如下:

工控设备扫描工具 - PLCScan一套;

Snap7 Client Demo数据篡改工具软件一套;

攻击电脑一台。

PLCScan

PLCScan是由国外黑客组织ScadaStrangeLove开发的一款扫描工具,用于识别网上的PLC设备和其他Modbus设备。该工具由Python编写,检测两个端口TCP/102和TCP/502,如果发现这两个端口开放,会调用其他函数来进行更深层次的检测。西门子PLC使用的就是TCP/102端口。搜集的信息如下图这种。

Snap7ClientDemo

Snap7ClientDemo是由国外黑客组织lazarus开发的一款基于Snap7协议的测试工具软件。

Snap7 是一个基于以太网与S7系列的西门子PLC通讯的开源库。支持包括S7系列的S7-200、S7-200 Smart、S7-300、S7-400、S7-1200以及S7-1500的以太网通信。

攻击步骤

步骤一

攻击者使用PLCScan对船舶制造系统网络进行扫描,确定要攻击的目标网络中存在西门子PLC。

步骤二

使用Snap7ClientDemo对目标进行攻击,输入需要更改的PLC参数,然后发送攻击命令。

观察被攻击设备的运行状态,是否按照攻击参数进行了改变。

防护方案

对于这种直接攻击PLC的数据篡改攻击,最好的防御方式就是在PLC前使用工业防火墙,防火墙会根据设置的防护策略,阻止来自未知主机的攻击。

实训场景四:中间人攻击

该场景模拟黑客通过实施中间人攻击,将船舶制造内网操作员站和PLC之间的通信信息进行流量劫持,从而获取敏感信息的行为。

攻击路径示意图:

攻击原理

所谓的MITM攻击就是通过拦截正常的网络通信数据,并进行数据篡改和嗅探,而通信的双方却毫不知情。随着计算机通信网技术的不断发展,MITM攻击也越来越多样化。发展至今,交换机代替集线器,简单的嗅探攻击已经不能成功,,必须先进行ARP欺骗才行。

ARP欺骗原理

地址解析协议是建立在网络中各个主机互相信任的基础上的,它的诞生使得网络能够更加高效的运行,但其本身也存在缺陷:

ARP地址转换表是依赖于计算机中高速缓冲存储器动态更新的,而高速缓冲存储器的更新是受到更新周期的限制的,只保存最近使用的地址的映射关系表项,这使得攻击者有了可乘之机,可以在高速缓冲存储器更新表项之前修改地址转换表,实现攻击。

ARP请求为广播形式发送的,网络上的主机可以自主发送ARP应答消息,并且当其他主机收到应答报文时不会检测该报文的真实性就将其记录在本地的MAC地址转换表,这样攻击者就可以向目标主机发送伪ARP应答报文,从而篡改本地的MAC地址表。ARP欺骗可以导致目标计算机与网关通信失败,更会导致通信重定向,所有的数据都会通过攻击者的机器,因此存在极大的安全隐患。

攻击所用工具及软件

本实验使用工具及软件如下:

中间人工具ettercap一套;

攻击电脑一台。

EtterCap

EtterCap是一个基于ARP地址欺骗方式的网络嗅探工具,主要适用于交换局域网络。借助于EtterCap嗅探软件,管理员可以检测网络内明 文数据通讯的安全性,及时采取措施,避免敏感的用户名/密码等数据以明文的方式进行传输,较新的EtterCap工具可以到http:
//ettercap.sourceforge.net站点中下载。

攻击步骤

步骤一

首先打开终端,输入ettercap -G 启动ettercap的图形界面模式,如图:

打开ettercap-NG 的图形界面之后点击"sniff",选择"unified sniffing"然后根据自己的要求选择要抓包的网卡。

步骤二

然后单击Hosts选项,选择Scan for host,待扫描完成之后再选择Scan for host,然后选择Host list,此时可以看到ettercap-NG已经扫描的主机列表,如图所示:

然后就可以选择要攻击的目标了,选择PLC的IP地址 192.168.1.106的,点击Add to Target 1(添加到目标1),然后选择操作员站的IP地址192.168.1.1,点击Add to Target 2(添加到目标2),可以看到ettercap提示成功加入目标,如图所示:

然后明确攻击方式,这里采用ARP欺骗的方式,告诉PLC控制器192.168.1.106,攻击者电脑(192.168.1.113)才是操作员站(192.168.1.1),使得 192.168.1.106的PLC把所有数据流量全部发给我,然后抓包截获通信流量。

明确攻击方式之后,选择"mitm"—"arp poisoning"— "Sniff remote connections" — "确定"

这时可以看看目标主机的ARP地址表,如图所示,ARP缓存毒化成功。

然后在攻击主机中选择"Start" — "Start sniffing" 开始监听。此时使用Wireshark抓包工具可以发现,所有流量已经都流过攻击电脑。

防护方案

对于这种直接攻击PLC的数据篡改攻击,最好的防御方式就是在PLC前使用工业防火墙,工业防火墙会根据设置的防护策略,正确识别PLC和工程师站的MAC地址,阻止ARP欺骗攻击,从而阻断基于ARP欺骗的中间人攻击。

实训场景五:永恒之蓝漏洞攻击

该场景模拟黑客通过永恒之蓝漏洞攻击操作员站,从而入侵船舶制造仿真系统,达到窃取生产信息和破坏企业正常生产制造的目的。

攻击路径示意图:

攻击原理

永恒之蓝(Eternalblue)是指2017年4月14日晚,黑客团体Shadow Brokers(影子经纪人)公布一大批网络攻击工具,其中包含“永恒之蓝”工具,“永恒之蓝”利用Windows系统的SMB漏洞可以获取系统最高权限。5月12日,不法分子通过改造“永恒之蓝”制作了wannacry勒索病毒,英国、俄罗斯、整个欧洲以及中国国内多个高校校内网、大型企业内网和政府机构专网中招,被勒索支付高额赎金才能解密恢复文件。

永恒之蓝通过TCP端口445和139来利用SMBv1和NBT中的远程代码执行漏洞,恶意代码会扫描开放445文件共享端口的Windows机器,无需用户任何操作,只要开机上网,不法分子就能在电脑和服务器中植入勒索软件、远程控制木马、虚拟货币挖矿机等恶意程序。

目前已知受影响的 Windows 版本包括但不限于:Windows NT,Windows 2000、Windows XP、Windows 2003、Windows Vista、Windows 7、Windows 8,Windows 2008、Windows 2008 R2、Windows Server 2012等。

攻击所用工具及软件

本实验使用工具及软件如下:

Nmap扫描工具软件一套;

开源软件Metasploit一套;

攻击电脑一台。

Nmap

Nmap,也就是Network Mapper,最早是Linux下的网络扫描和嗅探工具包。Nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。它是网络管理员必用的软件之一,以及用以评估网络系统安全。

正如大多数被用于网络安全的工具,Nmap 也是不少黑客爱用的工具 。系统管理员可以利用Nmap来探测工作环境中未经批准使用的服务器,但是黑客会利用Nmap来搜集目标电脑的网络设定,从而计划攻击的方法。

Metasploit

Metasploit是一款开源的安全漏洞检测工具,可以帮助安全和IT专业人士识别安全性问题,验证漏洞的缓解措施,并管理专家驱动的安全性进行评估,提供真正的安全风险情报。这些功能包括智能开发,代码审计,Web应用程序扫描,社会工程。

在渗透过程中,MSF漏洞利用神器是不可或缺的。更何况它是一个免费的、可下载的框架,通过它可以很容易地获取、开发并对计算机软件漏洞实施攻击。它本身附带数百个已知软件漏洞的专业级漏洞攻击工具。是信息收集、漏洞扫描、权限提升、内网渗透等集成的工具。

攻击步骤

步骤一

攻击者使用nmap对船舶制造系统网络进行扫描,确定要攻击的目标存在永恒之蓝漏洞,执行命令如下:

nmap --script smb-vuln-ms17-010 XX.XX.XX.XX (目标网络)

步骤二

使用Metasploit对目标进行攻击,输入msfconsole启动Metasploit。

在Metasploit中,输入search ms17-010查找永恒之蓝漏洞模块名称。

输入use
exploit/windows/smb/ms17_010_eternalblue选择漏洞利用模块

输入show options查看当前攻击配置

将配置中第一行的RHOST修改为目标IP地址配置完成后,输入run命令执行漏洞攻击,如果执行成功,会获得目标机器windows系统的shell终端,可对该目标机器执行任何命令。

防护方案

防护永恒之蓝漏洞,应对方式有以下三种:

1、Win7以上系统打补丁

对于Win7以上系统,微软已于2017 年 发布MS17-010补丁,修复了“永恒之蓝”攻击的系统漏洞,一定要及时更新Windows系统补丁。

2、WinXP系统开系统防火墙

Win7 以下的 WindowsXP/2003 目前没有补丁,只要开启 SMB 服务就受影响。所以最好的方式是关停系统的SMB服务,WinXP系统的处理流程如下:

1)、依次打开控制面板——>安全中心——>Windows 防火墙,选择“启用”。

2)、点击开始,运行,输入 cmd,确定执行下面三条命令

net stop rdr

net stop srv

net stop netbt

3、安装杀毒软件

主流安全防护软件(例如360安全卫士)都已经支持永恒之蓝漏洞的监测,并可以针对系统安全漏洞进行补丁下载和安装。

4、网络边界设置防火墙策略

工控网络边界加装防火墙设备,设置安全策略,禁止对受保护的内网主机的135/137/139/445端口的连接。


四、船舶制造仿真平台设计


详细设计方案

船舶制造厂工控网络仿真攻防平台不仅仅作为一个展示和基本攻防演练功能,还应该具备学习和研究能力,能对船舶制造行业各种不同设备的通信协议、漏洞进行深入挖掘,从而形成安全统一分析展示、关联性分析等强大功能。

功能架构如下:

图:平台功能架构图


工业网络产品


船舶制造行业的网络架构层通常应包含操作管理层、现场控制层、生产控制层、生产执行层等,每一层之间并非独立的,通过网络设备是连接的,所以每一层网络或设备都可能成为入侵的源头。


机柜内安装我司多款工业网络安全产品,通过部署工业网络安全产品,模拟在真实船舶制造工业环境中实现对关键设备、生产过程等的全方位智能管控与决策优化,提升生产效率,降低生产成本。


工业网络安全产品包含:统一安全监管平台、工业防火墙、工业监测审计、工业入侵检测系统、工业隔离网闸、工业终端安全卫士、USB安全管理系统、工业安全评估系统等。


安全防护


在仿真平台系统部署工业防火墙、智能工业网闸、工业监测审计系统、USB安全防御系统、统一安全监管平台等工业安全防护设备,对整个系统进行安全监测预警及安全防护。

图:攻防平台拓扑图

除了以上我司根据船舶制造行业自身特点设计的五种经典攻防场景外,还有多种可以利用该仿真系统进行其它类型测试的攻防实验,例如:应用系统登录攻击、网站口令猜测攻击、USB自动执行木马攻击、工业程序逆向等各类船舶制造工业网络环境攻防实验。将于下期分享出来,欢迎持续关注。

分享:

微博
微信公众号