一种工业控制系统、安全互联系统及其处理方法
技术领域
本发明涉及数控机床生产技术领域,尤其涉及一种工业控制系统、安全互联系统及其处理方法。
背景技术
随着企业任务的日益增多和现代化制造业的飞速发展,生产车间数控机床的数量不断增多,并以一定速度持续增长,计算机辅助设计(CAD,Computer Aided Design)、计算机辅助制造(CAM,Computer Aided Manufacturing)、计算机辅助工程(CAE,ComputerAided Engineering)等相关软件的相继引进并大规模实施,数字化制造手段已日趋成熟并广泛应用,数控设备已形成DNC(Direct Numerical Control,直接数据控制)网络化的状态,DNC数控网络系统构成了工业控制层。作为一种实现数控车间信息集成和设备集成的主要形式,DNC数控网络系统在面向网络化制造的基础上,实现了数控设备的网络共享,是现代化机械加工车间实现车间自动化的重要模式,是实现制造执行系统(MES,ManufacturingExecution System)等系统的重要组成部分,DNC数控网络系统是工业控制系统在制造企业中的典型应用场景之一,其重要性已越来越受到重视。为了充分发挥数字化制造和数控设备的效率,DNC数控网络系统与涉密信息系统中的产品数据管理(PDM,Product DataManagement)、计算机辅助工艺过程设计(CAPP,Computer Aided Process Planning)等应用系统需要进行大量信息交互,提高DNC数控网络系统与涉密信息系统之间安全防护能力迫在眉睫。
当今工业控制系统(Industry Control System,ICS)应用专用控制协议、使用专属硬件和软件系统的状态有了很大改变,IP协议设备在工业控制系统中得到广泛应用。基于IP协议的设备的使用,一方面降低了系统开发、运维、升级和联网成本,极大地推动了工业生产;但另一方面也因过多采用通用计算机和网络技术,所面临的信息安全问题日益增多,遭受网络攻击破坏的门槛逐步降低。
图1为现有技术的工业控制系统的结构框图。
图1中,工业控制层(DNC数控网络系统)负责通过组态设计,完成数据采集、数模转换、设备控制和生产制造。
在制造执行层和工业控制层之间建立可信安全的访问控制机制将大大减小恶意代码泛滥的空间,提高工业控制层和制造执行层的安全防护能力。图1所示为现有工控系统架构。
制造执行层和工业控制层(DNC数控网络系统)之间经常仅通过防火墙进行简单的边界隔离和访问控制,DNC数控网络系统管理终端的安全防护技术措施十分薄弱,制造执行层和工业控制层之间可以通过各种端口、协议进行访问和通信,病毒、木马、恶意代码、黑客等攻击行为很容易利用这些安全弱点,在终端上发生、发起,并通过网络感染或破坏DNC数控网络系统,
由于DNC数控网络系统中存在多种类型的数控机床、多种通信接口、多种通用或专用操作系统,工业控制层与制造执行层之间存在不同类型的信息交互。信息交互的安全性难以检测,无论是工业级防火墙和网络隔离网关,对DNC数控网络系统中面临的木马、病毒、网络攻击等可能造成信息泄露和控制指令被篡改等安全风险和威胁均无能为力。
工业控制层中的数控设备操作系统大都采用专用操作系统,包括FANUC系统(法兰克)、SIEMENS(西门子)、Fidia(菲迪亚)等,仅少数数控设备采用Windows NT、Windows XP等通用操作系统,绝大部分数控加工设备后台均无windows操作系统。同时由于这些专用操作系统的底层代码不开放,对其功能了解不全,工业控制层中生产设备的行为是专有的特定行为,且不同的生产设备的行为不同,科学的分析和评价DNC数控网络系统生产设备行为,实现对生产设备的安全审计难度很大。
和Windows、linux等通用的操作系统的恶意代码检测与剥离技术相比,针对FANUC、SIEMENS、Fidia等数控设备专用操作系统的安全轮廓分析、漏洞分析技术、恶意代码检测还处于初步阶段,传统的病毒查杀系统和恶意代码查杀工具无法检测针对数控设备专用操作系统的恶意行为。因此,传统的防火墙并不能有效检测针对数控设备的恶意行为,因为工业防火墙是通用的计算机设备,而工业控制层中的数控设备是专用设备,并非通用的计算机设备,针对数控设备的恶意代码只对数控设备有效,而对通用计算机设备不会有任何影响。因此工业防火墙无法检测到针对数控设备的恶意代码。
发明内容
本发明要解决的技术问题在于,针对上述现有技术中工控系统中的工业防火墙无法检测到针对数控设备的恶意代码的问题,提供一种工业控制系统、安全互联系统及其处理方法。
本发明解决其技术问题所采用的技术方案是:一方面,构造一种安全互联系统,设置于工业防火墙及工业控制层之间,包括:
接收单元,用于从所述工业防火墙处接收的生产数据;
恶意代码检测单元,用于对所述生产数据进行恶意代码检测;
可信行为检测单元,用于对所述生产数据进行可信行为检测;
可信数据检测单元,用于对所述生产数据进行可信数据检测;
发送单元,用于将所述生产数据发送至工业控制层。
在本发明所述的安全互联系统中,所述恶意代码检测单元包括:
特征码检测模块,用于扫描所述生产数据,比较所述生产数据是否与预存的恶意代码的第一特征码相符,若是,则判断所述生产数据异常,若否,则判断所述生产数据正常;
校验和计算模块,用于对所述生产数据的属性信息进行校验和计算,并将其生成存储文件,当所述生产数据传输至预设节点时,比较所述生产数据与所述存储文件是否一致,若是,则判断所述生产数据正常,若否,则判断所述生产数据异常;
恶意行为检测模块,用于检测所述生产数据的行为,比较所述行为是否与预存的恶意行为的第二特征码相符,若是,则判断所述生产数据异常,若否,则判断所述生产数据正常。
在本发明所述的安全互联系统中,所述可信行为检测单元包括:
可信行为数据库,用于依据数控设备的可信行为的代码特征获取并存储可信行为的特征码;
可信行为检测模块,用于扫描所述生产数据,比较所述生产数据是否与所存储的可信行为的特征码相符,若是,则判断所述生产数据正常,若否,则判断所述生产数据异常。
在本发明所述的安全互联系统中,所述可信数据检测单元包括:
数据合法性数据库,用于设置并存储所述数控设备的可信行为的操作范围;
可信数据检测模块,用于扫描所述生产数据,判断所述生产数据是否处于所存储的操作范围之中,若是,则判断所述生产数据正常,若否,则判断所述生产数据异常。
另一方面,提供一种工业控制系统,包括依次连接的制造执行层、工业防火墙、工业控制层以及多个数控设备,还包括如上所述的安全互联系统,其连接于所述工业防火墙及所述工业控制层之间。
再一方面,提供一种安全互联系统的处理方法,包括步骤:
S1、从工业防火墙处接收的生产数据;
S2、对所述生产数据进行恶意代码检测;
S3、对所述生产数据进行可信行为检测;
S4、对所述生产数据进行可信数据检测;
S5、将所述生产数据发送至工业控制层。
在本发明所述的处理方法中,还包括步骤:
S0、当所检测的生产数据异常时,将所述生产数据丢弃和/或发出报警信息并将其写入日志。
在本发明所述的处理方法中,所述步骤S2包括以下子步骤:
S21、扫描所述生产数据,比较所述生产数据是否与预存的恶意代码的第一特征码相符,若是,则判断所述生产数据异常并转至步骤S0,若否,则判断所述生产数据正常并转至步骤S22;
S22、对所述生产数据的属性信息进行校验和计算,并将其生成存储文件,当所述生产数据传输至预设节点时,比较所述生产数据与所述存储文件是否一致,若是,则判断所述生产数据正常并转至步骤S23,若否,则判断所述生产数据异常并转至步骤S0;
S23、检测所述生产数据的行为,比较所述行为是否与预存的恶意行为的第二特征码相符,若是,则判断所述生产数据异常并转至步骤S0,若否,则判断所述生产数据正常并转至步骤S3。
在本发明所述的处理方法中,所述步骤S3包括以下子步骤:
S31、依据数控设备的可信行为的代码特征获取并存储可信行为的特征码;
S32、扫描所述生产数据,比较所述生产数据是否与所存储的可信行为的特征码相符,若是,则判断所述生产数据正常并转至步骤S4,若否,则判断所述生产数据异常并转至步骤S0。
在本发明所述的处理方法中,所述步骤S4包括以下子步骤:
S41、设置并存储所述数控设备的可信行为的操作范围;
S42、扫描所述生产数据,判断所述生产数据是否处于所存储的操作范围之中,若是,则判断所述生产数据正常并转至步骤S5,若否,则判断所述生产数据异常并转至步骤S0。
上述公开的一种工业控制系统、安全互联系统及其处理方法具有以下有益效果:通过加入安全互联系统专门针对数控设备生产数据中的恶意代码,对工业防火墙无法检测到的恶意代码进行恶意代码检测、可信行为检测以及可信数据检测,降低恶意代码对数控设备的生产进行非法操作的可能性。
附图说明
图1为现有技术的工业控制系统的结构框图;
图2为本发明提供的工业控制系统的结构框图;
图3为本发明提供的安全互联系统的结构框图;
图4为本发明提供的恶意代码检测单元的结构框图;
图5为本发明提供的可信行为检测单元的结构框图;
图6为本发明提供的可信数据检测单元的结构框图;
图7为本发明一实施例提供的安全互联系统的处理方法的流程图;
图8为本发明另一实施例提供的安全互联系统的处理方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供的一种工业控制系统、安全互联系统5及其处理方法,其目的在于,在现有技术中的工业控制系统加入安全互联系统5(即“安全互联设备”),安全互联设备将接收经过工业防火墙2传递过来的生产数据并检测专门针对数控设备4的恶意代码,安全互联设备所检测的恶意代码会对数控设备4的生产进行非法操作,这些恶意代码不会对通用计算机产生任何异常影响,因此传统的工业防火墙2无法检测到这些专门针对数控设备4的恶意代码,需要引入安全互联设备进行恶意代码的检测与处理。
参见图2,图2为本发明提供的工业控制系统200的结构框图,本工业控制系统200不同于现有技术的工业控制系统100之处在于,增加了安全互联系统5,其连接于所述工业防火墙2及所述工业控制层3之间。
具体的,本工业控制系统200包括依次连接的制造执行层1、工业防火墙2、安全互联系统5、工业控制层3以及多个数控设备4。
制造执行层1用于发布生产数据。即依据数控设备4所需加工的任务,生产数字化的生产数据。
工业防火墙2用于对生产数据进行边界隔离和访问控制。
安全互联系统5用于对生产数据中可能存在的恶意代码进行恶意代码检测、可信行为检测以及可信数据检测。
工业控制层3用于将生产数据发送至各个数控设备4。
数控设备4用于依据生产数据执行生产任务。
参见图3,图3为本发明提供的安全互联系统5的结构框图,其包括接收单元51、恶意代码检测单元52、可信行为检测单元53、可信数据检测单元54以及发送单元55。其中:
接收单元51,用于从所述工业防火墙2处接收的生产数据;
恶意代码检测单元52,用于对所述生产数据进行恶意代码检测;恶意代码检测单元52的具体结构参见图4,图4为本发明提供的恶意代码检测单元52的结构框图,其包括特征码检测模块521、校验和计算模块522以及恶意行为检测模块523,其中:
特征码检测模块521,用于扫描所述生产数据,比较所述生产数据是否与预存的恶意代码的第一特征码相符,若是,则判断所述生产数据异常,若否,则判断所述生产数据正常;
校验和计算模块522,用于对所述生产数据的属性信息进行校验和计算,并将其生成存储文件,当所述生产数据传输至预设节点时,比较所述生产数据与所述存储文件是否一致,若是,则判断所述生产数据正常,若否,则判断所述生产数据异常;
恶意行为检测模块523,用于检测所述生产数据的行为,比较所述行为是否与预存的恶意行为的第二特征码相符,若是,则判断所述生产数据异常,若否,则判断所述生产数据正常。
可信行为检测单元53,用于对所述生产数据进行可信行为检测;可信行为检测单元53的具体结构参见图5,图5为本发明提供的可信行为检测单元53的结构框图,其包括可信行为数据库531以及可信行为检测模块532,其中:
可信行为数据库531,用于依据数控设备4的可信行为的代码特征获取并存储可信行为的特征码;
可信行为检测模块532,用于扫描所述生产数据,比较所述生产数据是否与所存储的可信行为的特征码相符,若是,则判断所述生产数据正常,若否,则判断所述生产数据异常。
可信数据检测单元54,用于对所述生产数据进行可信数据检测;可信数据检测单元54的具体结构参见图6,图6为本发明提供的可信数据检测单元54的结构框图,其包括数据合法性数据库541以及可信数据检测模块542,其中:
数据合法性数据库541,用于设置并存储所述数控设备4的可信行为的操作范围;
可信数据检测模块542,用于扫描所述生产数据,判断所述生产数据是否处于所存储的操作范围之中,若是,则判断所述生产数据正常,若否,则判断所述生产数据异常。
发送单元55,用于将所述生产数据发送至工业控制层3。
参见图7,图7为本发明一实施例提供的安全互联系统5的处理方法的流程图,安全互联设备接收到需要数控设备4进行生产的生产数据后进行恶意代码检测、可信行为检测和可信数据检测,只有所有检测正常后才能将生产数据发送给工业控制层3中的数控设备4进行生产,否则将对所检测的生产数据进行丢弃、报警等处理,拒绝向数控设备4传送含恶意代码的生产数据。该处理方法包括以下步骤:
S1、从工业防火墙2处接收的生产数据。
S2、对所述生产数据进行恶意代码检测;安全互联设备接收来自工业防火墙2的生产数据后需要进行恶意代码检测。恶意代码检测功能主要是防止制造执行层1网络中的恶意代码侵入到工业控制层3网络。恶意代码检测可以采用特征码检测、校验和计算和恶意行为检测技术来实现。恶意代码检测异常时,说明所检测的生产数据含有恶意代码,是不能用于数控设备4进行生产的,所检测的生产数据需要丢弃、报警并写入日志信息等。如果恶意代码检测正常时,说明所检测的生产数据不含恶意代码,需要进行可信行为检测。具体地,步骤S2包括以下子步骤:
S21、扫描所述生产数据,比较所述生产数据是否与预存的恶意代码的第一特征码相符,若是,则判断所述生产数据异常并转至步骤S0,若否,则判断所述生产数据正常并转至步骤S22;
S22、对所述生产数据的属性信息进行校验和计算,并将其生成存储文件,当所述生产数据传输至预设节点时,比较所述生产数据与所述存储文件是否一致,若是,则判断所述生产数据正常并转至步骤S23,若否,则判断所述生产数据异常并转至步骤S0;
S23、检测所述生产数据的行为,比较所述行为是否与预存的恶意行为的第二特征码相符,若是,则判断所述生产数据异常并转至步骤S0,若否,则判断所述生产数据正常并转至步骤S3。
S3、对所述生产数据进行可信行为检测;可信行为检测是通过大量分析对数控设备4而言是有效且正确的生产数据的文件,分析了解工业控制系统的业务逻辑和操作规程,总结出针对数控设备4的可信行为代码特征,获取所得可信行为检测的特征码,并建立可信行为数据库531,数控设备4的可信行为包括旋转、向上移动、向下移动、向左移动、向右移动等行为。可信行为数据库531里存放的都是数控设备4正确行为操作的特征码,只有可信行为数据库531里存放的行为操作特征码才是正确的行为,否则将视为不正确的行为,这样可以提高发现工业控制系统未知攻击威胁的可能性。安全互联设备对生产数据以字节为单位进行扫描,比较生产数据是否和可信行为数据库531里存放的可信行为特征码相符。如果检测结果与可信行为特征码不相符,则表示可信行为检测异常,说明所检测的生产数据含有对数控设备4危险的恶意代码,所检测的生产数据需要丢弃、报警并写入日志信息等;如果检测结果与可信行为特征码相符,则表示可信行为检测结果正常,说明所检测的生产数据不含对数控设备4有危险的恶意代码,所检测的生产数据是符合数控设备4可信行为操作的正确数据。具体的,所述步骤S3包括以下子步骤:
S31、依据数控设备4的可信行为的代码特征获取并存储可信行为的特征码;
S32、扫描所述生产数据,比较所述生产数据是否与所存储的可信行为的特征码相符,若是,则判断所述生产数据正常并转至步骤S4,若否,则判断所述生产数据异常并转至步骤S0。
S4、对所述生产数据进行可信数据检测;进行可信数据检测,可信数据检测是对大量生产数据里可信行为的合法操作范围进行分析总结,并建立数据合法性数据库541,数据设备的可信数据包括旋转的最小角度和最大角度、向上移动的最小距离和最大距离、向下移动的最小距离和最大距离、向左移动的最小距离和最大距离、向右移动的最小距离和最大距离等数据。安全互联设备对生产数据的可信行为数据进行扫描检测,比较生产数据的可信行为数据是否具有合法性,即是否处于数据合法性数据库541里所规定可信行为的最小值和最大值之间。如果可信数据检测正常,说明所检测的生产数据不含对数控设备4有危险的恶意代码,所检测的生产数据符合数控设备4生产要求。如果可信数据检测异常,说明所检测生产数据里包含超出可信行为的正常操作的不合法数据,所检测的生产数据需要丢弃、报警并写入日志信息等。具体地,所述步骤S4包括以下子步骤:
S41、设置并存储所述数控设备4的可信行为的操作范围;
S42、扫描所述生产数据,判断所述生产数据是否处于所存储的操作范围之中,若是,则判断所述生产数据正常并转至步骤S5,若否,则判断所述生产数据异常并转至步骤S0。
S5、将所述生产数据发送至工业控制层3。如果所检测的生产数据能正常通过安全互联设备检测,那么说明该生产数据不含对数控设备4有影响的恶意代码,该数据可以经安全互联设备发送给工业控制层3进行安全生产。
S0、当所检测的生产数据异常时,将所述生产数据丢弃和/或发出报警信息并将其写入日志。
参见图8,图8为本发明另一实施例提供的安全互联系统5的处理方法的流程图,该实施例不同于上一实施例之处在于,步骤S21-S23执行顺序不分先后,也就是步骤S2中,特征码检测、校验和计算以及恶意行为检测可同时执行,也可按任意顺序先后执行。
特征码检测是当今应用得最多也最广的检测方式,通过大量分析曾经对数控设备4产生恶意行为的受感染文件,总结出针对数控设备4的恶意代码特征,获取所得恶意代码的特征码。安全互联设备对生产数据以字节为单位进行扫描,比较生产数据是否和恶意代码的特征码相符。如果检测结果与恶意代码特征码相符则恶意代码检测异常,说明所检测的生产数据含有对数控设备4危险的恶意代码;如果检测结果与恶意代码特征码不相符则恶意代码检测结果正常,说明所检测的生产数据不含对数控设备4有危险的恶意代码。
校验和计算是生产数据在制造执行层1产生前根据生产数据的信息,包括文件名称、大小、时间、日期及内容进行校验和计算,将校验和值写入文件中或写入其他文件中保存。保存校验和值的文件随同生产数据一起发送到安全互联设备,安全互联设备重新根据文件现有信息计算出校验和值与原来保存在文件中的校验和值进行比较,看结果是否一致。如果校验和值比较不一致,那么说明生产数据已含恶意代码,是不能将该生产数据发送给数控设备4进行生产的,则恶意代码检测结果异常;如果校验和值比较一致,那么说明生产数据正常,不含恶意代码,是可以将该生产数据用于数控设备4进行生产的,则恶意代码检测结果正常。
恶意行为检测是一种利用恶意代码的特有行为特征检测恶意代码的方法,一般而言,恶意代码的一些行为是恶意代码的共同行为,而且比较特殊。在正常的生产数据中,这些行为比较罕见,也是不可能出现在正常的生产数据中。通过大量分析曾经对数控设备4产生恶意行为的受感染文件,总结恶意代码的恶意行为特征,形成恶意行为特征码。生产数据的恶意行为包括盗用截流系统中断、修改内存总量和内存控制块、对可执行文件做写入操作等。安全互联设备检测生产数据的行为,如果发现了恶意行为特征码,那么说明恶意代码检测结果异常;如果没有发现恶意行为特征码,那么说明恶意代码检测结果正常。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。