CN117610047A - 一种工控终端的安全防护方法及装置 - Google Patents

一种工控终端的安全防护方法及装置 Download PDF

Info

Publication number
CN117610047A
CN117610047A CN202311617707.2A CN202311617707A CN117610047A CN 117610047 A CN117610047 A CN 117610047A CN 202311617707 A CN202311617707 A CN 202311617707A CN 117610047 A CN117610047 A CN 117610047A
Authority
CN
China
Prior art keywords
target
detection result
program
file
white list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202311617707.2A
Other languages
English (en)
Other versions
CN117610047B (zh
Inventor
范雷
汪义舟
姜海昆
范宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Changyang Technology Beijing Co ltd
Original Assignee
Changyang Technology Beijing Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Changyang Technology Beijing Co ltd filed Critical Changyang Technology Beijing Co ltd
Priority to CN202311617707.2A priority Critical patent/CN117610047B/zh
Publication of CN117610047A publication Critical patent/CN117610047A/zh
Application granted granted Critical
Publication of CN117610047B publication Critical patent/CN117610047B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种工控终端的安全防护方法及装置,涉及网络安全技术领域,该方法包括:获取安全运行的工控终端所包括的可执行程序文件;根据可执行程序文件的权限,生成对应不同权限的程序白名单库;从可执行程序文件中提取证书特征信息,并生成证书白名单库;根据程序白名单库和证书白名单库,对待防护工控终端进行安全检测,确定目标检测结果。本方案提供的方法能提高工控终端的安全防护性能,为工控终端提供安全稳定的运行环境。

Description

一种工控终端的安全防护方法及装置
技术领域
本发明涉及网络安全技术领域,特别涉及一种工控终端的安全防护方法及装置。
背景技术
随着“工业4.0”、“两化融”、“互联网+”的趋势到来,传统的工业控制系统网络安全问题已成为企业及国家安全面临的严峻挑战,但是工业环境由于相对封闭、专用的特性,且设计之初是为了完成各种实时控制功能,并未考虑到安全防护问题,缺乏安全保护措施,因此暴露在互联网上容易遭受病毒、木马、黑客的攻击,导致工控终端存在巨大的安全风险和隐患。因此,亟需一种工控终端的安全防护方法及装置。
发明内容
为了解决上述问题,本发明实施例提供了一种工控终端的安全防护方法及装置,该方法能提高工控终端的安全防护性能,为工控终端提供安全稳定的运行环境。
第一方面,本发明实施例提供了一种工控终端的安全防护方法,包括:
获取安全运行的工控终端所包括的可执行程序文件;
根据所述可执行程序文件的权限,生成对应不同权限的程序白名单库;
从所述可执行程序文件中提取证书特征信息,并生成证书白名单库;
根据所述程序白名单库和所述证书白名单库,对待防护工控终端进行安全检测,确定目标检测结果。
可选地,所述根据所述可执行程序文件的权限,生成对应不同权限的程序白名单库,包括:
根据所述权限,将所述可执行程序文件划分为具有不同权限的子程序文件集;其中,按照所述权限由高至低将所述子程序文件集依次划分为操作系统类程序文件集、服务驱动类程序文件集、应用类程序文件集;
根据所述子程序文件集生成程序白名单库;其中,所述程序白名单包括由所述操作系统类程序文件集生成的第一程序白名单、由所述服务驱动类程序文件集生成的第二程序白名单、由所述应用类程序文件集生成的第三程序白名单。
可选地,所述根据所述程序白名单库和所述证书白名单库,对待防护工控终端进行安全检测,确定目标检测结果,包括:
获取所述待防护工控终端的目标可执行程序文件;
根据所述权限,将所述目标可执行程序文件划分为对应不同权限的目标子程序文件;
针对每种权限下的每个所述目标子程序文件,均执行:判断所述目标子程序文件是否位于对应该权限的程序白名单库中,若是,则检测结果为该目标子程序文件可信;若否,则提取所述目标子程序文件的目标证书特征信息,在所述目标证书特征信息位于所述证书白名单库中时,确定检测结果为该目标子程序文件可信;在所述目标证书特征信息不位于所述证书白名单库中时,检测结果为告警,并发出告警信息;
根据每个所述目标子程序文件的检测结果,确定所述目标检测结果。
可选地,所述根据每个所述目标子程序文件的检测结果,确定所述目标检测结果,包括:
按照所述权限由高至低,统计每种所述权限下出现的所述检测结果为告警的次数;
根据所述告警的次数和所述权限,确定所述待防护工控终端的目标检测结果;其中,所述权限、所述告警的次数均与所述目标检测结果的风险等级呈正相关。
可选地,所述程序白名单库中包括所述可执行程序文件的程序名称、进程信息以及由所述可执行程序文件计算得到的哈希值;所述进程信息包括进程ID和对应该进程ID的进程路径;
针对每种权限下的每个所述目标子程序文件,均执行:
计算所述目标子程序文件的目标哈希值,判断所述目标哈希值是否位于所述程序白名单库中,得到第一检测结果;
提取所述目标子程序文件的目标证书特征信息,判断所述目标证书特征信息是否位于所述证书白名单库中,得到第二检测结果;
判断所述目标证书特征信息中的有效期是否未超期,得到第三检测结果;
获取所述目标子程序文件的进程信息;判断所述进程ID和对应该进程ID的进程路径是否均位于所述程序白名单库中,得到第四检测结果;
获取所述进程ID的父进程ID,判断所述父进程ID是否位于所述程序白名单库中,得到第五检测结果。
可选地,所述根据每个所述目标子程序文件的检测结果,确定所述目标检测结果,包括:
统计所述待防护工控终端中所述目标子程序文件的启动总次数;
从预设信任等级表中确定所述第一检测结果、所述第二检测结果、所述第三检测结果、所述第四检测结果和所述第五检测结果的信任等级;其中,所述预设信任等级表中存储有不同判断条件下检测结果对应的信任等级;
根据所述第一检测结果及其信任等级、所述第二检测结果及其信任等级、所述第三检测结果及其信任等级、所述第四检测结果及其信任等级、所述第五检测结果及其信任等级和所述启动总次数,确定所述目标子程序文件的可信度评分;
所述可信度评分通过如下公式确定:
其中,F用于表征所述可信度评分;αi用于表征第i个检测结果对应的信任等级的权重;ci用于表征第i个检测结果的取值;N用于表征所述启动总次数;λ用于表征常数。
可选地,在所述确定目标检测结果之后,还包括:
根据所述目标检测结果,确定防护策略;其中,不同所述权限的可执行程序文件对应的防护策略不同;
在所述目标检测结果中存在权限最高的所述可执行程序文件的检测结果为告警时,停止所述安全检测,对所述待防护工控终端进行检修维护。
第二方面,本发明实施例还提供了一种工控终端的安全防护方法装置,包括:
获取模块,用于获取安全运行的工控终端所包括的可执行程序文件;
第一生成模块,用于根据所述可执行程序文件的权限,生成对应不同权限的程序白名单库;
第二生成模块,用于从所述可执行程序文件中提取证书特征信息,并生成证书白名单库;
检测模块,用于根据所述程序白名单库和所述证书白名单库,对待防护工控终端进行安全检测,确定目标检测结果。
第三方面,本发明实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现上述任一项所述的工控终端的安全防护方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行上述任一项所述的工控终端的安全防护方法。
本发明实施例提供了一种工控终端的安全防护方法及装置,该方法基于安全运行的不同权限的可执行程序文件生成不同的程序白名单库,并从该可执行程序文件中提取证书特征信息,生成证书白名单库,然后再基于不同权限的程序白名单库和证书白名单库对待防护工控终端进行安全检测,确定最终的目标检测结果。如此,程序白名单库和证书白名单库结合使用,增加了工控终端的效率,减少误报误拦截,从而进一步验证了数据文件的真实性和完整性,提升工控终端的稳定性和安全性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种工控终端的安全防护方法的流程图;
图2是本发明一实施例提供的一种计算设备的硬件架构图;
图3是本发明一实施例提供的一种工控终端的安全防护方法装置结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
以下为本发明的构思,如图1所示,本发明实施例提供了一种工控终端的安全防护方法,该方法包括:
步骤100,获取安全运行的工控终端所包括的可执行程序文件;
步骤102,根据可执行程序文件的权限,生成对应不同权限的程序白名单库;
步骤104,从可执行程序文件中提取证书特征信息,并生成证书白名单库;
步骤106,根据程序白名单库和证书白名单库,对待防护工控终端进行安全检测,确定目标检测结果。
在本发明实施例中,首先基于安全运行的不同权限的可执行程序文件生成不同的程序白名单库,并从该可执行程序文件中提取证书特征信息,生成证书白名单库,然后再基于不同权限的程序白名单库和证书白名单库对待防护工控终端进行安全检测,确定最终的目标检测结果。如此,程序白名单库和证书白名单库结合使用,增加了工控终端的效率,减少误报误拦截,从而进一步验证了数据文件的真实性和完整性,提升工控终端的稳定性和安全性能。
需要说明的是,步骤100获取到的是确认可以安全运行的可信的可执行程序文件。工控终端:指工控环境下运行各类工控软件的主机,包括工程师站、操作员站等。
下面描述图1所示的各个步骤的执行方式。
在步骤102中,根据可执行程序文件的权限,生成对应不同权限的程序白名单库,包括:
根据权限,将可执行程序文件划分为具有不同权限的子程序文件集;其中,按照权限由高至低将子程序文件集依次划分为操作系统类程序文件集、服务驱动类程序文件集、应用类程序文件集;
根据子程序文件集生成程序白名单库;其中,程序白名单包括由操作系统类程序文件集生成的第一程序白名单、由服务驱动类程序文件集生成的第二程序白名单、由应用类程序文件集生成的第三程序白名单。
需要说明的是,程序白名单库,是指工控主机或者实验室主机上,识别为安全的、允许运行的程序文件。权限包括但不限于RING等级,RING0层拥有最高的权限,RING3层拥有最低的权限。例如,操作系统类程序文件集工作在RING0层,可以访问所有层的数据,权限最高;其他服务驱动类程序文件集位于RING1层、RING2层,每一层只能访问本层以及权限更低层的数据,权限其次;而应用程序文件集工作在RING3层,只能访问RING3层的数据,权限最低。
在本发明实施例中,按照可执行程序文件的权限进行分类后,同样可以得到不同权限对应的程序白名单,由于最高的权限可以访问所有的数据,因此优先判断权限最高的可执行程序文件,有利于后续优先判断待防护工控终端的运行环境安全情况。
在一个具体的实施例中,通过如下方式生成程序白名单库:全盘扫描或选择性扫描安全运行的工控终端的操作系统,对系统PE(Portable Executable格式,是微软Win32环境可移植可执行文件,如exe、dll、vxd、sys和vdm等的标准文件格式)/ELF(Executable andLinkableFormat,可执行与可链接格式)格式的文件(即可执行程序文件),系统主要进程,应用程序,服务等进行信息收集,然后进行哈希值计算,并生成特定格式的程序白名单库。
在步骤104中,生成证书白名单库,包括:判断可执行程序文件中有包含数字签名,如果包含了数字签名,提取证书特征信息,并生成证书白名单库。
需要说明的是,证书白名单库是指数字签名认证的证书规则库。数字签名是一种数字证书,可证明代码、软件、应用程序和可执行文件是合法的。基于公钥基础设施的数字签名对代码进行签名,并保证代码在从开发人员系统到最终用户系统的过程中不会被更改或损坏。因此,代码签名可以帮助最终用户确定软件/应用程序是否可信。
具体地,数字证书的格式普遍采用的是X.509V3国际标准,一个标准的X.509数字证书包含以下一些内容:证书的版本信息;证书的序列号;证书所使用的签名算法;证书的发行机构名称;证书的有效期;证书所有人的名称;证书所有人的公开密钥;证书发行者对证书的签名。
针对步骤106,根据程序白名单库和证书白名单库,对待防护工控终端进行安全检测,确定目标检测结果,包括两种实现方式,第一种方式:
获取待防护工控终端的目标可执行程序文件;
根据权限,将目标可执行程序文件划分为对应不同权限的目标子程序文件;
针对每种权限下的每个目标子程序文件,均执行:判断目标子程序文件是否位于对应该权限的程序白名单库中,若是,则检测结果为该目标子程序文件可信;若否,则提取目标子程序文件的目标证书特征信息,在目标证书特征信息位于证书白名单库中时,确定检测结果为该目标子程序文件可信;在目标证书特征信息不位于证书白名单库中时,检测结果为告警,并发出告警信息;
根据每个目标子程序文件的检测结果,确定目标检测结果。
例如,接前例所述,将目标可执行程序文件划分为对应不同权限的目标操作系统类子程序文件、目标服务驱动类子程序文件、目标应用类子程序文件。
在本发明实施例中,针对每个目标子程序文件,先采用目标子程序文件所属权限对应的程序白名单库进行判断,若该目标子程序文件存在于程序白名单库中,则检测结果为该目标子程序文件可信,结束当前安全检测流程。若该目标子程序文件不存在于程序白名单库中,则采用证书白名单库进行判断,该目标子程序文件的目标证书特征信息位于证书白名单库中时,确定检测结果为该目标子程序文件可信,并结束当前安全检测流程。若目标证书特征信息不位于证书白名单库中时,检测结果为告警,并发出告警信息。如此,本发明在程序白名单库放过目标子程序文件时,还能基于证书白名单库快速判断安全性、完整性,优化运行效率,减少误拦截给终端带来的风险。同时进一步提高用户工作效率,在第一时间将工作置于保护系统中、省下处理不良程序所需的资源和黑名单方法无法防止的有效性问题,并且使工控终端系统可以保持最佳性能运作。
在本发明中,当工控终端设备中的软件更新升级后,仍然能基于上述方法,对更新后的程序进行安全检测,提高工控终端的稳定运行;如果仅依赖程序白名单库,更新后的程序会被拦截并阻止其运行。
在一个优选的实施方式中,根据每个目标子程序文件的检测结果,确定目标检测结果,包括:
按照权限由高至低,统计每种权限下出现的检测结果为告警的次数;
根据告警的次数和权限,确定待防护工控终端的目标检测结果;其中,权限、告警的次数均与目标检测结果的风险等级呈正相关。
在本发明实施例中,权限越高、对应该权限内告警的次数越多,则目标检测结果的风险等级也越高,则待防护工控终端的风险也越高,用户可以根据实际需求对不同风险等级采取不同的防护策略。而且权限越高,所访问的数据越多,因此一旦高权限出现告警信息,对待防护工控终端的运行影响更大,在出现与最高权限等级相关的告警信息时,应停止当前安全检测流程,直接对待防护工控终端进行检修维护,以将风险降低至最低。
在一个更具体的实施方式中,在待防护工控终端的启动过程中,按照权限高低对每种权限下的每个目标子程序文件进行安全检测,若对应最高级权限的目标子程序文件的检测结果为告警,并发出告警信息,停止启动过程,还可以直接对待防护工控终端进行检修维护,无需进行后续安全检测。
针对步骤106,根据程序白名单库和证书白名单库,对待防护工控终端进行安全检测,确定目标检测结果,包括两种实现方式,第二种方式:
获取待防护工控终端的目标可执行程序文件;
根据权限,将目标可执行程序文件划分为对应不同权限的目标子程序文件;
程序白名单库中包括可执行程序文件的程序名称、进程信息以及由可执行程序文件计算得到的哈希值;进程信息包括进程ID和对应该进程ID的进程路径;
针对每种权限下的每个目标子程序文件,均执行:
计算目标子程序文件的目标哈希值,判断目标哈希值是否位于程序白名单库中,得到第一检测结果;
提取目标子程序文件的目标证书特征信息,判断目标证书特征信息是否位于证书白名单库中,得到第二检测结果;
判断目标证书特征信息中的有效期是否未超期,得到第三检测结果;
获取目标子程序文件的进程信息;判断进程ID和对应该进程ID的进程路径是否均位于程序白名单库中,得到第四检测结果;
获取进程ID的父进程ID,判断父进程ID是否位于程序白名单库中,得到第五检测结果。
在本发明中,通过综合判断程序白名单库中的哈希值、证书白名单库中的目标证书特征信息和有效期、程序白名单库中的进程信息以及父进程信息来对目标子程序文件进行综合判断,从而减少误报拦截,进一步验证数据文件的真实性和完整性,提升工控终端的稳定性和安全性。
在一个优选的实施方式中,基于第二种方式,确定目标检测结果,包括:
统计待防护工控终端中目标子程序文件的启动总次数;
从预设信任等级表中确定第一检测结果、第二检测结果、第三检测结果、第四检测结果和第五检测结果的信任等级;其中,预设信任等级表中存储有不同判断条件下检测结果对应的信任等级;
根据第一检测结果及其信任等级、第二检测结果及其信任等级、第三检测结果及其信任等级、第四检测结果及其信任等级、第五检测结果及其信任等级和启动总次数,确定目标子程序文件的可信度评分;
可信度评分通过如下公式确定:
其中,F用于表征可信度评分;αi用于表征第i个检测结果对应的信任等级的权重;ci用于表征第i个检测结果的取值;N用于表征启动总次数;λ用于表征常数。
需要说明的是,信任等级越高,该信任等级对应的权重值越高,具体地,信任等级与权重值可由工控终端的管理人员自行设置,例如,α12345。由使用情况信息统计确定的启动总次数是指截至当前该目标子程序文件的启动成功的总次数,其中该启动总次数越高,则该目标子程序文件越可信,优选地,αi×ci>λ×N。针对每个检测结果,在判断条件成立时,检测结果为该目标子程序文件可信时,ci=1,反之判断条件不成立时,ci=0。可信度评分越高,则该目标子程序文件的可信度越高,由工控终端的管理人员根据可信度评分自行确定该目标子程序文件是否可信。
在本发明中,基于上述五种判断条件得到对应目标子程序文件的可信度评分,有利于用户根据该可信度评分进一步精确、科学地对待防护工控终端进行合理地安全控制,提高其安全性能。
在步骤106之后,还包括:
根据目标检测结果,确定防护策略;其中,不同权限的可执行程序文件对应的防护策略不同;
在目标检测结果中存在权限最高的可执行程序文件的检测结果为告警时,停止安全检测,对待防护工控终端进行检修维护。
在本发明中,用户可以根据目标检测结果对待防护工控终端的启动过程进行控制、检修维护等,基于不同的目标检测结果确定对应的防护策略,从而进一步提高当前工控终端的安全性。
如图2、图3所示,本发明实施例提供了一种工控终端的安全防护方法装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图2所示,为本发明实施例提供的一种工控终端的安全防护方法装置所在计算设备的一种硬件架构图,除了图2所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的计算设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图3所示,作为一个逻辑意义上的装置,是通过其所在计算设备的CPU将非易失性存储器中对应的计算机程序读取到内存中运行形成的。本实施例提供的一种工控终端的安全防护方法装置,包括:
获取模块300,用于获取安全运行的工控终端所包括的可执行程序文件;
第一生成模块302,用于根据可执行程序文件的权限,生成对应不同权限的程序白名单库;
第二生成模块304,用于从可执行程序文件中提取证书特征信息,并生成证书白名单库;
检测模块306,用于根据程序白名单库和证书白名单库,对待防护工控终端进行安全检测,确定目标检测结果。
在一些具体的实施方式中,获取模块300可用于执行上述步骤100,第一生成模块302可用于执行上述步骤102,第二生成模块304可用于执行上述步骤104,检测模块306可用于执行上述步骤106。
在一些具体的实施方式中,第一生成模块302用于执行如下操作:
根据权限,将可执行程序文件划分为具有不同权限的子程序文件集;其中,按照权限由高至低将子程序文件集依次划分为操作系统类程序文件集、服务驱动类程序文件集、应用类程序文件集;
根据子程序文件集生成程序白名单库;其中,程序白名单包括由操作系统类程序文件集生成的第一程序白名单、由服务驱动类程序文件集生成的第二程序白名单、由应用类程序文件集生成的第三程序白名单。
在一些具体的实施方式中,检测模块306用于执行如下操作:
获取待防护工控终端的目标可执行程序文件;
根据权限,将目标可执行程序文件划分为对应不同权限的目标子程序文件;
针对每种权限下的每个目标子程序文件,均执行:判断目标子程序文件是否位于对应该权限的程序白名单库中,若是,则检测结果为该目标子程序文件可信;若否,则提取目标子程序文件的目标证书特征信息,在目标证书特征信息位于证书白名单库中时,确定检测结果为该目标子程序文件可信;在目标证书特征信息不位于证书白名单库中时,检测结果为告警,并发出告警信息;
按照权限由高至低,统计每种权限下出现的检测结果为告警的次数;
根据告警的次数和权限,确定待防护工控终端的目标检测结果;其中,权限、告警的次数均与目标检测结果的风险等级呈正相关。
在一些具体的实施方式中,检测模块306用于执行如下操作:
获取待防护工控终端的目标可执行程序文件;
根据权限,将目标可执行程序文件划分为对应不同权限的目标子程序文件;
程序白名单库中包括可执行程序文件的程序名称、进程信息以及由可执行程序文件计算得到的哈希值;进程信息包括进程ID和对应该进程ID的进程路径;
针对每种权限下的每个目标子程序文件,均执行:
计算目标子程序文件的目标哈希值,判断目标哈希值是否位于程序白名单库中,得到第一检测结果;
提取目标子程序文件的目标证书特征信息,判断目标证书特征信息是否位于证书白名单库中,得到第二检测结果;
判断目标证书特征信息中的有效期是否未超期,得到第三检测结果;
获取目标子程序文件的进程信息;判断进程ID和对应该进程ID的进程路径是否均位于程序白名单库中,得到第四检测结果;
获取进程ID的父进程ID,判断父进程ID是否位于程序白名单库中,得到第五检测结果;
统计待防护工控终端中目标子程序文件的启动总次数;
从预设信任等级表中确定第一检测结果、第二检测结果、第三检测结果、第四检测结果和第五检测结果的信任等级;其中,预设信任等级表中存储有不同判断条件下检测结果对应的信任等级;
根据第一检测结果及其信任等级、第二检测结果及其信任等级、第三检测结果及其信任等级、第四检测结果及其信任等级、第五检测结果及其信任等级和启动总次数,确定目标子程序文件的可信度评分;
可信度评分通过如下公式确定:
其中,F用于表征可信度评分;αi用于表征第i个检测结果对应的信任等级的权重;ci用于表征第i个检测结果的取值;N用于表征启动总次数;λ用于表征常数。
在一些具体的实施方式中,该装置还包括防护模块,防护模块用于执行如下操作:
根据目标检测结果,确定防护策略;其中,不同权限的可执行程序文件对应的防护策略不同;
在目标检测结果中存在权限最高的可执行程序文件的检测结果为告警时,停止安全检测,对待防护工控终端进行检修维护。
可以理解的是,本发明实施例示意的结构并不构成对一种工控终端的安全防护方法装置的具体限定。在本发明的另一些实施例中,一种工控终端的安全防护方法装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
上述装置内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本发明任一实施例中的一种工控终端的安全防护方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序在被处理器执行时,使所述处理器执行本发明任一实施例中的一种工控终端的安全防护方法。
具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、系统或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括、但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展模块中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展模块上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种工控终端的安全防护方法,其特征在于,包括:
获取安全运行的工控终端所包括的可执行程序文件;
根据所述可执行程序文件的权限,生成对应不同权限的程序白名单库;
从所述可执行程序文件中提取证书特征信息,并生成证书白名单库;
根据所述程序白名单库和所述证书白名单库,对待防护工控终端进行安全检测,确定目标检测结果。
2.根据权利要求1所述的方法,其特征在于,所述根据所述可执行程序文件的权限,生成对应不同权限的程序白名单库,包括:
根据所述权限,将所述可执行程序文件划分为具有不同权限的子程序文件集;其中,按照所述权限由高至低将所述子程序文件集依次划分为操作系统类程序文件集、服务驱动类程序文件集、应用类程序文件集;
根据所述子程序文件集生成程序白名单库;其中,所述程序白名单包括由所述操作系统类程序文件集生成的第一程序白名单、由所述服务驱动类程序文件集生成的第二程序白名单、由所述应用类程序文件集生成的第三程序白名单。
3.根据权利要求1所述的方法,其特征在于,所述根据所述程序白名单库和所述证书白名单库,对待防护工控终端进行安全检测,确定目标检测结果,包括:
获取所述待防护工控终端的目标可执行程序文件;
根据所述权限,将所述目标可执行程序文件划分为对应不同权限的目标子程序文件;
针对每种权限下的每个所述目标子程序文件,均执行:判断所述目标子程序文件是否位于对应该权限的程序白名单库中,若是,则检测结果为该目标子程序文件可信;若否,则提取所述目标子程序文件的目标证书特征信息,在所述目标证书特征信息位于所述证书白名单库中时,确定检测结果为该目标子程序文件可信;在所述目标证书特征信息不位于所述证书白名单库中时,检测结果为告警,并发出告警信息;
根据每个所述目标子程序文件的检测结果,确定所述目标检测结果。
4.根据权利要求3所述的方法,其特征在于,所述根据每个所述目标子程序文件的检测结果,确定所述目标检测结果,包括:
按照所述权限由高至低,统计每种所述权限下出现的所述检测结果为告警的次数;
根据所述告警的次数和所述权限,确定所述待防护工控终端的目标检测结果;其中,所述权限、所述告警的次数均与所述目标检测结果的风险等级呈正相关。
5.根据权利要求3所述的方法,其特征在于,所述程序白名单库中包括所述可执行程序文件的程序名称、进程信息以及由所述可执行程序文件计算得到的哈希值;所述进程信息包括进程ID和对应该进程ID的进程路径;
针对每种权限下的每个所述目标子程序文件,均执行:
计算所述目标子程序文件的目标哈希值,判断所述目标哈希值是否位于所述程序白名单库中,得到第一检测结果;
提取所述目标子程序文件的目标证书特征信息,判断所述目标证书特征信息是否位于所述证书白名单库中,得到第二检测结果;
判断所述目标证书特征信息中的有效期是否未超期,得到第三检测结果;
获取所述目标子程序文件的进程信息;判断所述进程ID和对应该进程ID的进程路径是否均位于所述程序白名单库中,得到第四检测结果;
获取所述进程ID的父进程ID,判断所述父进程ID是否位于所述程序白名单库中,得到第五检测结果。
6.根据权利要求5所述的方法,其特征在于,所述根据每个所述目标子程序文件的检测结果,确定所述目标检测结果,包括:
统计所述待防护工控终端中所述目标子程序文件的启动总次数;
从预设信任等级表中确定所述第一检测结果、所述第二检测结果、所述第三检测结果、所述第四检测结果和所述第五检测结果的信任等级;其中,所述预设信任等级表中存储有不同判断条件下检测结果对应的信任等级;
根据所述第一检测结果及其信任等级、所述第二检测结果及其信任等级、所述第三检测结果及其信任等级、所述第四检测结果及其信任等级、所述第五检测结果及其信任等级和所述启动总次数,确定所述目标子程序文件的可信度评分;
所述可信度评分通过如下公式确定:
其中,F用于表征所述可信度评分;αi用于表征第i个检测结果对应的信任等级的权重;ci用于表征第i个检测结果的取值;N用于表征所述启动总次数;λ用于表征常数。
7.根据权利要求1至6中任一所述的方法,其特征在于,在所述确定目标检测结果之后,还包括:
根据所述目标检测结果,确定防护策略;其中,不同所述权限的可执行程序文件对应的防护策略不同;
在所述目标检测结果中存在权限最高的所述可执行程序文件的检测结果为告警时,停止所述安全检测,对所述待防护工控终端进行检修维护。
8.一种工控终端的安全防护方法装置,其特征在于,包括:
获取模块,用于获取安全运行的工控终端所包括的可执行程序文件;
第一生成模块,用于根据所述可执行程序文件的权限,生成对应不同权限的程序白名单库;
第二生成模块,用于从所述可执行程序文件中提取证书特征信息,并生成证书白名单库;
检测模块,用于根据所述程序白名单库和所述证书白名单库,对待防护工控终端进行安全检测,确定目标检测结果。
9.一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-7中任一项所述的方法。
CN202311617707.2A 2023-11-29 2023-11-29 一种工控终端的安全防护方法及装置 Active CN117610047B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311617707.2A CN117610047B (zh) 2023-11-29 2023-11-29 一种工控终端的安全防护方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311617707.2A CN117610047B (zh) 2023-11-29 2023-11-29 一种工控终端的安全防护方法及装置

Publications (2)

Publication Number Publication Date
CN117610047A true CN117610047A (zh) 2024-02-27
CN117610047B CN117610047B (zh) 2024-05-31

Family

ID=89943933

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311617707.2A Active CN117610047B (zh) 2023-11-29 2023-11-29 一种工控终端的安全防护方法及装置

Country Status (1)

Country Link
CN (1) CN117610047B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8950007B1 (en) * 2008-04-07 2015-02-03 Lumension Security, Inc. Policy-based whitelisting with system change management based on trust framework
CN105354493A (zh) * 2015-10-22 2016-02-24 中国人民解放军装备学院 基于虚拟化技术的终端可信增强方法及系统
CN106529282A (zh) * 2016-11-10 2017-03-22 广东电网有限责任公司电力科学研究院 一种基于信任链的白名单执行系统及执行方法
CN109766694A (zh) * 2018-12-29 2019-05-17 北京威努特技术有限公司 一种工控主机的程序协议白名单联动方法及装置
US20200026846A1 (en) * 2017-03-29 2020-01-23 Seung Hwan Choi System and method for authenticating safe software
US10546117B1 (en) * 2016-11-15 2020-01-28 Symantec Corporation Systems and methods for managing security programs
CN111324887A (zh) * 2020-02-25 2020-06-23 广东天波信息技术股份有限公司 一种应用程序的安装控制方法及装置
CN111935061A (zh) * 2019-12-26 2020-11-13 长扬科技(北京)有限公司 一种工控主机的网络安全防护实现方法及工控主机
CN112446033A (zh) * 2020-12-11 2021-03-05 中国科学院信息工程研究所 软件可信启动方法、装置、电子设备和存储介质
CN113779562A (zh) * 2021-09-22 2021-12-10 恒安嘉新(北京)科技股份公司 基于零信任的计算机病毒防护方法、装置、设备及介质
US20220083673A1 (en) * 2020-09-11 2022-03-17 Pc Matic, Inc. System, Method, and Apparatus for Enhanced Whitelisting
CN115879064A (zh) * 2022-10-26 2023-03-31 海光信息技术股份有限公司 一种程序运行方法、装置、处理器、芯片及电子设备

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8950007B1 (en) * 2008-04-07 2015-02-03 Lumension Security, Inc. Policy-based whitelisting with system change management based on trust framework
CN105354493A (zh) * 2015-10-22 2016-02-24 中国人民解放军装备学院 基于虚拟化技术的终端可信增强方法及系统
CN106529282A (zh) * 2016-11-10 2017-03-22 广东电网有限责任公司电力科学研究院 一种基于信任链的白名单执行系统及执行方法
US10546117B1 (en) * 2016-11-15 2020-01-28 Symantec Corporation Systems and methods for managing security programs
US20200026846A1 (en) * 2017-03-29 2020-01-23 Seung Hwan Choi System and method for authenticating safe software
CN109766694A (zh) * 2018-12-29 2019-05-17 北京威努特技术有限公司 一种工控主机的程序协议白名单联动方法及装置
CN111935061A (zh) * 2019-12-26 2020-11-13 长扬科技(北京)有限公司 一种工控主机的网络安全防护实现方法及工控主机
CN111324887A (zh) * 2020-02-25 2020-06-23 广东天波信息技术股份有限公司 一种应用程序的安装控制方法及装置
US20220083673A1 (en) * 2020-09-11 2022-03-17 Pc Matic, Inc. System, Method, and Apparatus for Enhanced Whitelisting
CN112446033A (zh) * 2020-12-11 2021-03-05 中国科学院信息工程研究所 软件可信启动方法、装置、电子设备和存储介质
CN113779562A (zh) * 2021-09-22 2021-12-10 恒安嘉新(北京)科技股份公司 基于零信任的计算机病毒防护方法、装置、设备及介质
CN115879064A (zh) * 2022-10-26 2023-03-31 海光信息技术股份有限公司 一种程序运行方法、装置、处理器、芯片及电子设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KIM, DAEYOUB ETC.: "Blacklist vs. Whitelist-Based Ransomware Solutions", 《IEEE CONSUMER ELECTRONICS MAGAZINE》, 22 April 2020 (2020-04-22), pages 22 - 28 *
曾寰: "Android平台的恶意程序检测研究", 《中国优秀硕士学位论文全文数据库(信息科技辑)》, 15 February 2017 (2017-02-15), pages 138 - 86 *

Also Published As

Publication number Publication date
CN117610047B (zh) 2024-05-31

Similar Documents

Publication Publication Date Title
US10956477B1 (en) System and method for detecting malicious scripts through natural language processing modeling
US8898775B2 (en) Method and apparatus for detecting the malicious behavior of computer program
CN111935061B (zh) 一种工控主机的网络安全防护实现方法及工控主机
US10986103B2 (en) Signal tokens indicative of malware
US20160021174A1 (en) Computer implemented method for classifying mobile applications and computer programs thereof
US20120174227A1 (en) System and Method for Detecting Unknown Malware
US7607122B2 (en) Post build process to record stack and call tree information
US20160094574A1 (en) Determining malware based on signal tokens
US8086835B2 (en) Rootkit detection
JP2014507718A (ja) 権限昇格攻撃へのコンピュータ・ソフトウェア・アプリケーションの脆弱性を判定するための方法、コンピュータ・プログラム、およびシステム
JP5779334B2 (ja) 出力制御装置、出力制御プログラム、出力制御方法および出力制御システム
JP2011525662A (ja) ソフトウェア評価を確立し監視するシステムおよび方法
JP2010182019A (ja) 異常検知装置およびプログラム
Gurulian et al. You can’t touch this: Consumer-centric android application repackaging detection
Wu et al. Detection of fake IoT app based on multidimensional similarity
CN116663005B (zh) 复合型勒索病毒的防御方法、装置、设备及存储介质
CN117610047B (zh) 一种工控终端的安全防护方法及装置
CN114866532B (zh) 端点文件安全检查结果信息上传方法、装置、设备及介质
WO2016095671A1 (zh) 一种应用程序的消息处理方法和装置
US20170171224A1 (en) Method and System for Determining Initial Execution of an Attack
CN113596044B (zh) 一种网络防护方法、装置、电子设备及存储介质
CN115168861A (zh) 数据安全验证方法、装置、设备及存储介质
CN116340929A (zh) 软件安装的管控方法、装置、存储介质和计算机设备
Jiang et al. Tracing worm break-in and contaminations via process coloring: A provenance-preserving approach
CN112528286A (zh) 终端设备安全检测方法、关联设备以及计算机程序产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant