漏洞扫描系统(人工智能的应用是什么)

本文首先简要介绍了SCADA系统的组成、协议、特点和固有的脆弱性。其次,详细分析了当前SCADA系统的扫描技术、方法和工具。说明主动扫描和被动扫描各有优缺点,智

本文首先简要介绍了SCADA系统的组成、协议、特点和固有的脆弱性。其次,详细分析了当前SCADA系统的扫描技术、方法和工具。说明主动扫描和被动扫描各有优缺点,智能扫描可以综合两者的优势,是未来SCADA系统检测和扫描的发展方向。最后,通过简单的测试和分析,对SCADA系统的安全保护进行了思考并提出了建议。

关键词:SCADA;扫描漏洞;工业控制系统

1 引言

“工业4.0”时代,网络化、数字化、智能化成为新的方向。信息技术(IT)与运营技术(OT)的融合已经成为大势所趋,是工业智能化的核心。在早期的工业控制系统(ICS)中,IT和OT是相对独立的。然而,随着互联网的快速发展和集成电路对图像、信号、控制等大数据的需求,一种融合了IT和OT的新型集成电路诞生了。IT与OT的融合虽然给企业带来了更高的生产效率和控制效率,但也使OT系统面临来自IT的威胁,威胁参与者可以利用IT网络访问OT系统,从而进行攻击。一旦ICS受到攻击,将会带来巨大的经济损失,因此ICS的安全显得尤为重要。

2 SCADA系统概述

监控与数据采集(SCADA)系统是智能工业领域不可缺少的一部分。它能监视和控制现场设备,并具有数据采集、测量、信号报警等功能。广泛应用于电力、石油、化工、铁路等领域。曾经SCADA系统是一个与外网隔离的独立网络,但在今天的IT和OT集成环境下,互联网协议(IP)也与SCADA集成在一起。由于一些设备是脆弱的,威胁参与者可以通过恶意扫描与SCADA设备进行交互,并对工业设备造成损害。当受到攻击时,发电机可能会停止工作或发出异常警报。

2.1 SCADA系统的组成和结构

SCADA系统是对生产过程进行控制和调度的自动化系统,由硬件设备和软件组成。其主要组件包括一台收集过程数据并向相连设备发送控制命令的监控计算机、一台连接过程中传感器和控制器的远程终端设备(RTU)、一台通过输入和输出控制各种硬件设备的可编程逻辑控制器(PLC)、一个为操作员提供窗口的人机界面(HMI)以及通信基础设施。

2.2 SCADA协议概述

为了充分了解SCADA系统的通信技术以及对SCADA设备进行网络扫描的可行性,首先回顾了SCADA系统中两种常见的协议DNP3和ModBus。

DNP3协议是自动化系统组件之间的通信协议。它完全基于TCP/IP,在应用层实现了对传输数据的切片、检查、控制等多种功能。在工业上,常用于水利、电力公司。它提供各种SCADA系统之间的通信,在SCADA系统中起着决定性的作用。主要负责主站与RTU、IED、HMI之间的通信,支持多主站、多从站、点对点通信。它有轮询操作和静态操作模式。运营商可以通过数据包捕获的形式对DNP3协议进行监控,从而提高系统的可靠性,减少故障和停机时间,但其设计目的并不是为了保证通信安全。

ModBus是一种点对点的串行通信协议,用于提供RTU和PLC之间的通信标准。该协议可以确定控制器如何知道设备地址、识别发送给它的消息以及采取措施等。但是ModBus有很多缺点,也有很多扩展来解决和修复这些缺点,最著名的就是ModBus X扩展。在网络扫描的过程中,由于数据包的接收设备和发送设备不同,它们的指令集也不同。发送方发送以太网数据包,但接收方不一定要求SCADA设备做出正确响应。出现这种情况时,扫描可能会失去意义。如果接收过程中数据包过大或传输速度过快,SCADA设备的CPU可能无法正常解析数据。此外,扫描工具在传输数据时可能无法通过正在使用的特定介质,这可能会对串行网络造成连接中断和拒绝服务等负面影响。

SCADA和商业IT网络之间的差异

SCADA系统中的网络不同于传统的商业IT网络。一是SCADA系统中ICS网络的实现不同于商业IT网络,ICS网络对实时性要求更高;第二,每个节点和子网的架构不一样;第三,失败的严重程度不同。ICS网络一旦发生故障,将会带来严重的后果、巨大的经济损失甚至人员伤亡。工业安全事故造成严重后果的例子很多,比如美国戴维斯贝斯核电站蠕虫病毒攻击,伊朗核电站地震网病毒攻击。

2.4 SCADA系统漏洞扫描的难点

由于SCADA系统一开始是相对独立于IT的,SCADA系统中的设备在设计之初就没有注意到信息安全的基本属性,不会保证SCADA设备的安全性和处理事故的能力,所以很容易受到攻击。当SCADA系统或ICS组件可能存在漏洞,为了经济利益被网络攻击或遭遇网络战时,攻击者会首先通过扫描技术发现工业设备和工业控制设备的资产,判断一个IP地址中是否有设备,是什么类型的设备。除了资产发现,在监视和控制、数据收集、漏洞扫描等方面也需要扫描技术。此类扫描技术主要包括主动扫描和被动扫描,以及最新的智能扫描。

SCADA系统的脆弱性意味着扫描技术也可能带来风险,尤其是主动扫描甚至可能对工业设备造成损害。PLC和RTU等OT设备将监控机械设备(如泵、阀门、发电机、报警器等)的运行。)和环境因素(如温度、湿度、酸碱度等。).但是这些设备太敏感,经不起主动扫描。由于以下原因,设备是敏感的:

(1) CPU的功能有限,性能不高:设备被设计成一次只做一件事,可能导致被大量的请求淹没;

(2)实时通信:他们使用实时通信协议。如果通信延迟,可能很难重新建立通信。比如全面的漏洞扫描会造成延迟;

(3)设计之初未重视网络安全:设计之初,ot设备倾向于对环境的耐受,如耐热、抗振动、抗空气体中的颗粒或抗断电等。,但对网络通信的最大承载能力没有足够的设计;

(4)使用定制操作系统和软件:很多OT设备不会使用经过广泛测试、安全性高的Windows、Linux等软件,而是使用定制操作系统和自主设计的小软件,这都意味着系统安全性能低;

(5)后期维护不到位:一台OT设备可能会使用几年甚至十几年。维护不到位导致OT设备濒临崩溃,比如灰尘堆积使设备运行接近过载点。一次完整的漏洞扫描可能会带来额外的负载,导致其崩溃超过过载点。

3 SCADA系统漏洞扫描方法与工具

3.1漏洞扫描方法

被动扫描

被动扫描也称为被动监控和被动嗅探。它通过监控网络流量来识别服务、主机和客户端。在网络上设置一个观察点,需要网络管理员或网络工程师的协助来配置这些系统,以获得最佳结果。被动扫描器可以在不中断常规网络流量或与设备本身交互的情况下长时间连续运行,因为被动扫描器的输入数据是由网络流量直接馈送的。这意味着用户可以创建算法来分析每个协议,并且有可能从每个数据包中提取重要信息和标识符。被动扫描是一种安全的扫描方法。由于它的被动性质,它无法获取设备的详细信息,也无法扫描休眠设备。

主动扫描

主动扫描是一种主动向被扫描设备发送数据包的扫描方法。它试图联系每台主机上的每个服务,向每台主机发送数据包并监控响应,但随着时间的推移或将来重复相同的扫描时,这些信息将会过时。主动扫描和被动扫描的一个显著区别:与设备的实时交互。当获得关于ICS或SCADA网络上的设备的信息时,主动方法需要与网络上的设备进行某种形式的交互,并且在网络上的“观察点”运行更长时间,从而不需要从任何连接的设备发送或接收数据。主动扫描可以扫描漏洞、发现和识别网络上的资产、操作系统和网络设备的配置评估、扫描恶意软件、检测更新等。但是主动扫描属于侵入式扫描,再加上工控设备的脆弱性,可能会损坏一些敏感的工控设备。

智能扫描

智能扫描是一种新的扫描技术。被动扫描和主动扫描都有缺点。被动扫描不能给出完美的信息,而主动扫描可以提供更多的信息,但可能会损坏敏感的工控设备。智能扫描结合了两者的优点,最大限度地减少了缺点。智能扫描通过判断设备来决定是否中断扫描。因为研究智能扫描是为了保护SCADA敏感设备不被扫描损坏,所以大多数工厂对SCADA系统的检查和保护都采用智能扫描,从而获得被扫描设备的参数,如CPU的当前负载率、设备温度的变化、安全CPU负载、设备的温度阈值等,将这些参数代入计算扫描模式的算法中,就会得到一个安全的扫描模式。性能较好的设备采用高速扫描:快速连续发送一系列数据包,不需要得到前一个数据包的结果,最后统计接收到的所有数据包。对于性能较差的设备,采用慢速扫描,甚至一次只发送一个数据包。当接收到最后一个数据包时,发送下一个数据包。如果在指定时间(可以是30秒或60秒等)内没有接收到数据包。),则认为被扫描设备有丢包,扫描器会重新发出数据包。然而,超过四个连续的分组丢失将中断扫描。此外,当接收到的数据包断断续续时,可能是因为CPU性能达到了极限。如果是敏感设备会及时中断扫描,记录设备的IP、MAC地址等信息,那么下一次扫描会默认跳过敏感设备。目前通过技术分析以及各大厂商设备的出现,智能扫描分析在未来将会得到广泛应用空。通过扫描技术,可以获得系统所有可用的参数,将用户想了解的部分提取出来,整理成数据,选出目前最佳的方案呈现给用户。或许在未来,智能扫描功能中会嵌入一个“治疗系统”,集扫描、分析、治疗于一体。我们可以拭目以待。

3.2常用扫描工具

Shodan

Shodan是一个搜索引擎,但它不同于Google的搜索引擎。Shodan用于搜索网络空中的在线设备。用户可以通过Shodan搜索指定设备或特定类型的设备,其中Shodan上最受欢迎的搜索内容有:网络摄像头、linksys、cisco、netgear、SCADA等。那么Shodan是如何工作的呢?Shodan可以通过扫描整个网络设备,并捕获和分析每个设备返回的横幅信息,了解网络中最受欢迎的Web服务器或可以匿名登录的FTP服务器的数量。Shodan常用于查看指定主机的信息,如地理位置信息、开放端口、是否存在一些漏洞等等。

漏洞扫描系统(人工智能的应用是什么)

图1 Shodan查看指定IP的SCADA设备情报及漏洞扫描结果图1 Shodan查看SCADA设备信息和指定IP的漏洞扫描结果

国家海洋测绘计划

Nmap是一款网络连接扫描软件,用于扫描在线计算机的开放网络连接。确定连接端正在运行哪些服务,并推断计算机正在运行哪个操作系统(也称为指纹识别)。它是网络管理员评估网络系统的必备软件之一。就像大多数用于网络安全的工具一样,Nmap也是很多黑客和骇客喜欢的工具。系统管理员可以使用Nmap检测工作环境中未授权的服务器,但黑客可以使用Nmap收集目标计算机的网络设置,从而策划攻击方式。

Nmap通过秘密手段避开入侵检测系统的监视,尽可能不影响目标系统的日常运行。《黑客帝国》中也使用了Nmap工具(引自电影人物:Trinity利用Nmap工具配合SSH1的32位循环冗余校验漏洞入侵电站的能量管理系统)。Nmap有很多脚本,包括各公司SCADA设备的漏洞扫描脚本。这些脚本集成了公司大部分SCADA设备的漏洞扫描,但不同公司的SCADA设备的脚本通常不具有通用性。

漏洞扫描系统(人工智能的应用是什么)

图2 Nmap扫描罗克韦尔自动化Allen-Bradley PLC图2 Nmap扫描罗克韦尔自动化艾伦-布拉德利PLC

纳苏斯

Nessus是世界上广泛使用的系统漏洞扫描和分析软件。超过75,000家机构使用Nessus作为扫描其计算机系统的软件。作为漏洞扫描中的强大工具之一,Nessus提供了完整的计算机漏洞扫描服务,并随时更新其漏洞数据库。不同于传统的漏洞扫描软件,Nessus可以远程控制电脑或同时远程对系统的漏洞进行分析和扫描。它的运行效率可以随着系统的资源进行自我调整。如果给主机添加更多的资源(比如加快CPU的速度或者增加内存大小),那么它的效率性能就可以因为资源丰富而得到提升。Nessus有很多插件,所以也可以用来扫描SCADA,但是插件需要提前安装,可以帮助用户扫描常见的SCADA设备。这些插件的安装方法简单,软件具有可视化的图形界面,对一般技术水平的工作人员极其友好。

漏洞扫描系统(人工智能的应用是什么)

图3 Nessus扫描SCADA结果图3 Nessus扫描SCADA的结果

被动漏洞扫描器

被动漏洞扫描器(PVS)是一项用于网络发现和漏洞分析的专利技术。它以非侵入的方式提供连续的实时网络分析和监控。在数据包级别,PVS漏洞监控工具监控IPv4和IPv6网络流量,以确定拓扑、服务和漏洞。您可以完整地查看用户的安全状态,并集中日志分析和漏洞管理。

顾名思义,这个软件是一个被动扫描软件。在ICS中,它可用于网络分析和监控,以检测是否存在异常流量。

漏洞扫描系统(人工智能的应用是什么)

图4 PVS被动扫描的数据监控页面图4 PVS被动扫描的数据监控页面

无国界医生组织

MSF是一个渗透测试框架,功能非常强大,无论是漏洞扫描、漏洞利用、远程控制等都可以实现。MSF通过加载多个模块来扫描利用,利用一个模块对SCADA系统的攻击过程如下:(1)加载模块;(2)设置目标IP;(3)扫描目标的漏洞,确定模块存在哪些漏洞;(4)如果设备易受攻击,则它可能会受到攻击。

漏洞扫描系统(人工智能的应用是什么)

图5 MSF使用模块对SCADA系统进行扫描及利用图5 MSF使用模块扫描和利用SCADA系统

测试和分析4.1 SCADA漏洞扫描和利用测试

如果SCADA系统被威胁参与者恶意扫描,威胁参与者可能利用扫描到的漏洞,从而对SCADA系统造成损害。为了观察和评估SCADA系统恶意漏洞扫描的后果,作者利用现有的ICS模拟设备进行了本次SCADA系统漏洞扫描利用实验。本实验基于西门子S7系列PLC的智能制造工业控制仿真系统。

首先,Nmap用于扫描整个SCADA系统,以找到幸存的主机。SCADA系统由PLC、HMI和RTU组成。在这个测试中,SCADA系统中的PLC是目标,ISF用于攻击目标PLC。这次使用的攻击模块是s7_300_400_PLC_control,这个脚本可以让PLC停止工作。在命令框中输入命令以运行ISF。

漏洞扫描系统(人工智能的应用是什么)

图6 ISF运行界面图6 ISF操作界面

使用模块后,设置目标的IP地址,然后运行模块后,确认目标活着后,会发送一个数据包停止PLC运行。

漏洞扫描系统(人工智能的应用是什么)

图7 利用模块进行攻击图7用模块攻击

4.2趋势分析与思考

基于SCADA的漏洞扫描可以由于工厂的自我保护提前发现风险并降低它们;也可以是通过威胁参与者破坏或获利的方式对SCADA系统进行漏洞扫描,威胁参与者通过漏洞攻击SCADA系统。由于主动扫描有一定的危害性,笔者从工厂如何进行更安全的漏洞扫描和如何防止威胁参与者的恶意扫描两个方面进行分析和思考。

工厂对SCADA系统进行安全检查时,如何进行安全漏洞扫描?笔者认为可以采用主动扫描和被动扫描相结合的方式。应采用主动扫描来确保SCADA系统的安全。对于非敏感设备,主动扫描可以获得更详细的设备信息,检测存在的漏洞,而对于敏感设备,则应该使用被动扫描来监控和分析流经敏感设备的网络流量。未来的研究方向将是智能扫描如何在保证SCADA系统安全的同时,尽可能实现更细致的扫描。

那么工厂如何防御威胁参与者的恶意扫描呢?笔者认为工厂必须有一套完整的安全政策,不仅作用于硬件设备,也作用于全体员工。从硬件设备层面,就是在系统中配置防火墙限制外部网络流量,做好态势感知和威胁检测。从员工层面来说,就是限制员工的权限。每个员工可以接触的设备和接触设备的方式都需要加以限制,这样才能最小化和细化权限,最大化安全性。

5 结语

在IT/OT融合的环境下,SCADA系统将无法避免来自IT的威胁。由于工业控制系统中的一些设备极其敏感,基于漏洞发现的扫描或者基于资产发现的扫描都可能对敏感设备造成损害,从而对整个工业生产造成损失。主动扫描和被动扫描都有明显的缺点,而智能扫描可以计算出设备的过载点并给出合适的扫描方案,从而保证SCADA系统中的敏感设备不会因为扫描而损坏、拒绝服务等不良影响。随着扫描算法的不断更新和完善,智能扫描将成为未来SCADA系统漏洞扫描的新方向。

作者简介

陈波(1992-),男,安徽安庆人,大专学历,北京天地和兴科技有限公司渗透测试工程师、安全研究员,研究方向为工业控制系统漏洞挖掘技术。

马(1999-),云南昆明人,在读本科。北京天地合兴科技有限公司渗透测试工程师、安全研究员,研究方向为工业控制系统漏洞挖掘技术。

摘自自动化博览会2020年12月刊

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。

作者:美站资讯,如若转载,请注明出处:https://www.meizw.com/n/44608.html

发表回复

登录后才能评论