CN115186255B - 工业主机白名单提取方法、装置、终端设备以及存储介质 - Google Patents

工业主机白名单提取方法、装置、终端设备以及存储介质 Download PDF

Info

Publication number
CN115186255B
CN115186255B CN202211107085.4A CN202211107085A CN115186255B CN 115186255 B CN115186255 B CN 115186255B CN 202211107085 A CN202211107085 A CN 202211107085A CN 115186255 B CN115186255 B CN 115186255B
Authority
CN
China
Prior art keywords
file
white list
information
extracting
ntfs
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.)
Active
Application number
CN202211107085.4A
Other languages
English (en)
Other versions
CN115186255A (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.)
Beijing 6Cloud Technology Co Ltd
Beijing 6Cloud Information Technology Co Ltd
Original Assignee
Beijing 6Cloud Technology Co Ltd
Beijing 6Cloud Information Technology 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 Beijing 6Cloud Technology Co Ltd, Beijing 6Cloud Information Technology Co Ltd filed Critical Beijing 6Cloud Technology Co Ltd
Priority to CN202211107085.4A priority Critical patent/CN115186255B/zh
Publication of CN115186255A publication Critical patent/CN115186255A/zh
Application granted granted Critical
Publication of CN115186255B publication Critical patent/CN115186255B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file 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/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种工业主机白名单提取方法、装置、终端设备以及存储介质,属于工业控制安全领域,其工业主机白名单提取方法包括:读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类;读取分类得到的NTFS文件系统中的主文件表,获取所述NTFS文件系统中文件的第一文件信息;根据所述第一文件信息获取所述NTFS文件系统中的白名单文件;根据所述白名单文件提取工业主机的白名单。本申请解决了工业主机提取白名单时占用大量系统资源问题,避免了大量系统资源占用可能对工业主机执行正常生产作业任务造成的不利影响。

Description

工业主机白名单提取方法、装置、终端设备以及存储介质
技术领域
本申请涉及工业控制安全领域,尤其涉及一种工业主机白名单提取方法、装置、终端设备以及存储介质。
背景技术
随着工业互联网的快速发展,先进制造业与新一代信息技术加速融合,在工业生产迈向智能化的过程中,工业主机是实现工厂智能化改造的第一步,也是现场生产执行层与管理层之间的信息纽带。面对网络环境中的不安全因素,工业主机首当其冲,一旦工业主机遭受攻击和破坏,必然会影响正常的生产作业,导致企业经营的损失。
在工控主机的安全防护上,大部分是通过建立白名单的方式把符合安全要求的文件放入白名单中,其他任何不在白名单中的文件在执行时都会被拦截,以此隔离工业现场环境中的恶意病毒文件和阻止主机设备上的恶意病毒文件的执行。目前工业主机主要是通过遍历主机文件的方式来提取白名单,在遍历主机文件时需要占用大量CPU和内存等系统资源。然而一般工业主机的性能配置不高,在系统资源被大量占用的情况下,可能导致工业软件运行卡顿,严重时甚至可能影响工业的正常生产。
综上所述,工业主机通过遍历主机文件的方式提取白名单会导致大量系统资源的占用,而工业主机一般性能配置不高,可能会对正常的生产作业造成不利影响。
发明内容
本发明的主要目的在于提供一种工业主机白名单提取方法、装置、终端设备及存储介质,旨在降低工业主机在提取白名单时的资源占用。
为实现上述目的,本发明提供一种工业主机白名单提取方法,所述方法包括以下步骤:
读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类;
读取分类得到的NTFS文件系统中的主文件表,获取所述NTFS文件系统中文件的第一文件信息;
根据所述第一文件信息获取所述NTFS文件系统中的白名单文件;
根据所述白名单文件提取工业主机的白名单。
可选地,所述根据所述第一文件信息获取所述NTFS文件系统中的白名单文件的步骤包括:
根据所述第一文件信息判断所述NTFS文件系统中的文件是否为白名单文件类型;
若是,则确定所述NTFS文件系统中的文件为白名单文件,并将所述白名单文件记录在预处理白名单中。
可选地,所述根据所述白名单文件提取工业主机的白名单的步骤包括:
在所述工业主机处于预设闲时状态下,对所述预处理白名单进行处理,提取工业主机的白名单。
可选地,所述在所述工业主机处于预设闲时状态下,对所述预处理白名单进行处理,提取工业主机的白名单步骤包括:
基于预处理白名单,提取所述预处理白名单中文件的第一文件信息;
基于所述第一文件信息和第一预设规则提取工业主机的白名单;
基于所述第一文件信息和文件内容计算白名单文件的MD5值;
在数据库中登记所述白名单文件的MD5值。
可选地,所述在所述工业主机处于预设闲时状态下,对所述预处理白名单进行处理,提取工业主机的白名单的步骤还包括;
监控所述预处理白名单上文件的文件行为;
若所述预处理白名单上的文件出现文件变更行为,则对出现文件变更行为的文件进行标记,不提取出现文件变更行为的文件信息。
可选地,所述若所述预处理白名单上的文件出现文件变更行为,则对出现文件变更行为的文件进行标记,不提取出现文件变更行为的文件信息的步骤之后还包括:
接收对出现文件变更行为的文件作出的人工判断指令;
若所述指令判断文件变更行为可信,则重新提取所述出现文件变更行为文件的文件信息;
若所述指令判断文件变更行为不可信,则将所述出现文件变更行为的文件从白名单中剔除。
可选地,所述读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类的步骤之后还包括:
对分类得到的其他文件系统中的文件进行遍历,提取第二文件信息;
基于所述第二文件信息和第二预设规则提取其他文件系统的白名单;
根据所述第二文件信息的文件内容计算白名单文件的MD5值;
在数据库中登记所述白名单文件的MD5值。
本申请实施例还提出一种工业主机白名单提取装置,所述工业主机白名单提取装置包括:
磁盘分类模块,用于读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类;
文件信息读取模块,用于读取分类得到的NTFS文件系统中的主文件表,获取所述NTFS文件系统中文件的第一文件信息;
白名单文件获取模块,用于根据所述第一文件信息获取所述NTFS文件系统中的白名单文件;
白名单提取模块,用于根据所述白名单文件提取工业主机的白名单。
本申请实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的工业主机白名单提取程序,所述工业主机白名单提取程序被所述处理器执行时实现如上所述的工业主机白名单提取方法的步骤。
本申请实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有工业主机白名单提取程序,所述工业主机白名单提取程序被处理器执行时实现如上所述的工业主机白名单提取方法的步骤。
本申请实施例提出的工业主机白名单提取方法、装置、终端设备以及存储介质,通过读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类;读取分类得到的NTFS文件系统中的主文件表,获取所述NTFS文件系统中文件的第一文件信息;根据所述第一文件信息获取所述NTFS文件系统中的白名单文件;根据所述白名单文件提取文件白名单。由此,可以通过对工业主机磁盘根据文件系统类型分类,对NTFS文件系统和其他文件系统采取相应的白名单提取方式,针对NTFS文件系统特性,通过读取主文件表的方式获取第一文件信息,只需要占用少量系统资源,解决了遍历主机文件获取文件信息来提取白名单造成的大量占用系统资源的问题;而且,本方案针对NTFS文件系统的白名单提取采取分步处理的方式,首先提取预处理白名单,主观上极大提升了提取白名单的速度;而且,本方案通过计算白名单文件的MD5值并登记在数据库中,保证了文件的完整性和不可篡改性。
附图说明
图1为本发明工业主机白名单提取装置所属终端设备的功能模块示意图;
图2为本发明工业主机白名单提取方法一示例性实施例的流程示意图;
图3为本发明实施例中对预处理白名单进行处理,获取文件白名单的细化流程示意图;
图4为本发明实施例中在基于预处理白名单提取文件白名单过程中,对预处理白名单上文件的文件行为进行监控的流程示意图;
图5为本发明实施例中接收收人工判断指令,对发生文件变更行为的文件进行处理的示意图;
图6为本发明工业主机白名单提取方法另一示例性实施例的流程示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例的主要解决方案是:通过读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类;读取分类得到的NTFS文件系统中的主文件表,获取所述NTFS文件系统中的第一文件信息;根据所述第一文件信息获取所述NTFS文件系统中的白名单文件;根据所述白名单文件提取工业主机的白名单。由此,可以通过对工业主机磁盘根据文件系统类型分类,对NTFS文件系统和其他文件系统采取相应的白名单提取方式,针对NTFS文件系统特性,通过读取主文件表的方式获取第一文件信息,只需要占用少量系统资源,解决了遍历主机文件获取文件信息来提取白名单造成的大量占用系统资源的问题;而且,本方案针对NTFS文件系统的白名单提取采取分步处理的方式,首先提取预处理白名单,主观上极大提升了提取白名单的速度;而且,本方案通过计算白名单文件的MD5值并登记在数据库中,保证了文件的完整性和不可篡改性。
本申请实施例涉及的技术术语:
白名单:白名单(White List)可以简单地理解为设置能通过的“用户”,与黑名单相对应,白名单以外的“用户”都不能通过。白名单的基本工作原理是通过识别系统中的进程或文件是否具有经批准的属性、常见进程名称、文件名称、发行商名称、数字签名等。白名单技术能够让企业批准哪些进程是被允许在特定系统中运行的。有些供应商产品只包括可执行文件,而其他产品还包括脚本和宏,并可以阻止更广泛的文件。其中,一种越来越受欢迎的白名单方法被称为“应用控制”,这种方法专门侧重于管理端点应用的行为。白名单技术可以抵御恶意软件和有针对性的攻击,因为在默认情况下,任何未经批准的软件、工具和进程都不能在端点上运行。如果恶意软件试图在启用了白名单的端点上安装,白名单技术会确定这不是可信进程,并否定其运行权限。白名单技术不仅可以用来阻止进程的安装,还可以用来提供警报。
NTFS:NTFS(New Technology File System)是Windows NT引入的新型文件系统,它具有许多新特性。NTFS中,卷中所有存放的数据均在一个叫$MFT的文件中,叫主文件表(Master File Table)。而$MFT则由文件记录(File Record)数组构成。File Record的大小一般是固定的,通常情况下均为1KB,这个概念相当于Linux中的inode。File Record在$MFT文件中物理上是连续的,且从0开始编号。$MFT仅供File System本身组织、架构文件系统使用,这在NTFS中称为元数据(Metadata)。在NTFS文件系统里面,磁盘上的所有东西都以文件的形式出现。即使是元数据也是以一组文件的形式存储的。
$MFT:即主文件表(Master File Table)的简称,它是NTFS文件系统的核心。$MFT由一个个$MFT项(也称为文件记录)组成,每个$MFT项占用1KB的空间。每个$MFT项的前部几十个字节有着固定的头结构,用来描述本$MFT项的相关信息。后面的字节存放着“属性”。每个文件和目录的信息都包含在$MFT中,每个文件和目录至少有一个$MFT项。除了引导扇区外,访问其他任何一个文件前都需要先访问$MFT,在$MFT中找到该文件的$MFT项,根据$MFT项中记录的信息找到文件内容并对其进行访问。$MFT 中的各项包含如下数据:大小、时间及时间戳、安全属性和数据位置。
MD5:MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5由MD4、MD3、MD2改进而来,主要增强算法复杂度和不可逆性。MD5算法因其普遍、稳定、快速的特点,仍广泛应用于普通数据的加密保护领域。MD5算法的原理可简要的叙述为:MD5码以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。
MD5特性:
不可逆性,没有系统有办法知道MD5原来的文字是什么;
具有高度的离散性,MD5码具有高度的散列性,没有规律可循,哪怕原信息只有一点点的变化,比如多个空格,那么就会导致MD5发生巨大变化,也可以说产生的MD5码是不可预测的;
压缩性,任意长度的数据,算出的MD5值得长度都是固定的;
弱碰撞性,已知原数据和其MD5的值,想找到一个具有相同MD5值得数据(即伪造数据)是非常困难的。
本实施例考虑到:现有技术中,工业主机主要是通过遍历主机文件来提取白名单,然而工业主机一般性能配置不高,遍历主机文件会占用大量的系统资源,大量系统资源占用可能导致主机工业软件运行卡顿,甚至影响正常的生产作业。
为了解决以上问题,本发明提供一种解决方案,采用对磁盘根据文件系统类型进行分类分别处理的方式,针对NTFS文件系统具备的特性,通过读取主文件表的方式获取文件信息,只需要占用少量系统资源,解决了遍历主机文件获取文件信息来提取白名单造成的大量占用系统资源的问题,保证了生产作业的正常运转。
具体地,参照图1,图1为本申请工业主机白名单提取装置所属终端设备的功能模块示意图。该工业主机白名单提取装置可以为独立于终端设备的、能够进行图片处理、网络模型训练的装置,其可以通过硬件或软件的形式承载于终端设备上。该终端设备可以为手机、平板电脑等具有数据处理功能的智能移动终端,还可以为具有数据处理功能的固定终端设备或服务器等。
在本实施例中,该工业主机白名单提取装置所属终端设备至少包括输出模块110、处理器120、存储器130以及通信模块140。
存储器130中存储有操作系统以及工业主机白名单提取程序;输出模块110可为显示屏等。通信模块140可以包括WIFI模块、移动通信模块以及蓝牙模块等,通过通信模块140与外部设备或服务器进行通信。
其中,存储器130中的工业主机白名单提取程序被处理器执行时实现以下步骤:
读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类;
读取分类得到的NTFS文件系统中的主文件表,获取所述NTFS文件系统中文件的第一文件信息;
根据所述第一文件信息获取所述NTFS文件系统中的白名单文件;
根据所述白名单文件提取工业主机的白名单。
进一步地,存储器130中的工业主机白名单提取程序被处理器执行时还实现以下步骤:
根据所述第一文件信息判断所述NTFS文件系统中的文件是否为白名单文件类型;
若是,则确定所述NTFS文件系统中的文件为白名单文件,并将所述白名单文件记录在预处理白名单中。
进一步地,存储器130中的工业主机白名单提取程序被处理器执行时还实现以下步骤:
在所述工业主机处于预设闲时状态下,对所述预处理白名单进行处理,提取文件白名单。
进一步地,存储器130中的工业主机白名单提取程序被处理器执行时还实现以下步骤:
基于预处理白名单,提取所述预处理白名单中第一文件信息;
基于所述第一文件信息和第一预设规则提取工业主机的白名单;
基于所述第一文件信息和文件内容计算白名单文件的MD5值;
在数据库中登记所述白名单文件的MD5值。
进一步地,存储器130中的工业主机白名单提取程序被处理器执行时还实现以下步骤:
监控预处理白名单上的文件行为;
若所述文件出现文件变更行为,则对所述文件进行标记,不提取所述文件信息。
进一步地,存储器130中的工业主机白名单提取程序被处理器执行时还实现以下步骤:
接收对发生文件变更行为的文件作出的人工判断指令;
若所述指令判断文件变更行为可信,则重新提取所述文件信息;
若所述指令判断文件变更行为不可信,则将所述文件从白名单中剔除。
进一步地,存储器130中的工业主机白名单提取程序被处理器执行时还实现以下步骤:
对分类得到的其他文件系统中的文件进行遍历,提取第二文件信息;
基于所述第二文件信息和第二预设规则提取其他文件系统的白名单。
根据所述第二文件信息的文件内容计算白名单文件的MD5值;
在数据库中登记所述白名单文件的MD5值。
本实施例通过上述方案,具体通过;通过读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类;读取分类得到的NTFS文件系统中的主文件表,获取所述NTFS文件系统中的第一文件信息;根据所述第一文件信息获取所述NTFS文件系统中的白名单文件;根据所述白名单文件提取工业主机的白名单。由此,可以通过对工业主机磁盘根据文件系统类型分类,对NTFS文件系统和其他文件系统采取相应的白名单提取方式,针对NTFS文件系统特性,通过读取主文件表的方式获取第一文件信息,只需要占用少量系统资源,解决了遍历主机文件获取文件信息来提取白名单造成的大量占用系统资源的问题;而且,本方案针对NTFS文件系统的白名单提取采取分步处理的方式,首先提取预处理白名单,主观上极大提升了提取白名单的速度;而且,本方案通过计算白名单文件的MD5值并登记在数据库中,保证了文件的完整性和不可篡改性。
基于上述终端设备架构但不限于上述架构,提出本申请方法实施例。
本实施例方法的执行主体可以为一种工业主机白名单提取装置或终端设备等,本实施例以工业主机白名单提取装置进行举例。
参照图2,图2为本申请工业主机白名单提取方法一示例性实施例的流程示意图。所述工业主机白名单提取方法包括:
步骤S101,读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类;
操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。从系统角度来看,文件系统是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。文件系统作为磁盘空间存储数据的一套科学合理的存储和管理方法,不同文件系统在存储设备上组织文件的方法各有区别,各有其特性。一般情况下Windows系统的系统磁盘默认格式化为NTFS文件系统,但在非系统磁盘中或U盘、移动硬盘中也可能存在FAT/FAT32等其他文件系统。而目前工业主机通常是通过遍历主机文件来提取白名单,并未根据主机不同文件系统采取不同的白名单提取方式。因此通过读取磁盘属性获取磁盘的文件系统信息可以根据文件系统对磁盘进行分类,进而根据各文件系统特性对症下药,采取更符合其特性的方式来提取文件白名单。
步骤S102,读取分类得到的NTFS文件系统中的主文件表,获取所述NTFS文件系统中的第一文件信息;
在NTFS文件系统中,磁盘上的所有数据都是以文件的形式出现的,即使是文件系统的管理信息也是以一组文件的形式存储的,即元文件。16个元文件中主文件表($MFT)是一个非常重要的元文件,它由文件记录构成,每个文件记录占用2个扇区。NTFS文件系统中每个文件都有一个文件记录,包括元文件本身,而主文件表($MFT)就是专门用来存储文件记录的一个元文件,系统通过主文件表($MFT)来确定文件在磁盘上的位置以及文件的所有属性。
具体的,作为一种实施方式,由于主文件表是专门用来存储文件记录的一个元文件,可以通过读取分类得到的NTFS文件系统中的主文件表来确定文件在磁盘上的位置以及文件属性等信息。由于直接读取主文件表获取NTFS文件系统中文件的信息,对系统资源的占用远低于遍历主机文件获取系统下文件信息的方式,极大的降低了系统资源的占用率。
步骤S103,根据所述第一文件信息获取所述NTFS文件系统中的白名单文件;
主文件表($MFT)存储着系统的文件记录,系统通过读取主文件表($MFT)即可获取文件的存储位置以及文件属性信息。而白名单文件通常为某一固定格式的文件或者文件名具有相同后缀,因此从主文件表中读取的文件有关信息可以判断文件是否为白名单文件。由此,无需遍历主机文件即可提取NTFS文件系统中的白名单文件,极大的降低了获取第一文件信息时的系统资源占用。
步骤S104,根据所述白名单文件提取工业主机的白名单。
通过读取主文件表中第一文件信息,基于第一文件信息得到NTFS文件系统下的白名单文件,此时可以主观上认为文件白名单的提取结束,但是尚未由白名单文件得到完整的文件白名单,因此需要对白名单文件进一步处理,得到文件白名单。
在本实施例中,通过读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类;读取分类得到的NTFS文件系统中的主文件表,获取所述NTFS文件系统中文件的第一文件信息;根据所述第一文件信息获取所述NTFS文件系统中的白名单文件;根据所述白名单文件提取文件白名单。通过根据文件系统类型对磁盘进行分类,可以对不同类型文件系统磁盘分别处理,通过借助NTFS文件系统的特性,可以在不遍历工业主机文件的情况下,实现读取主文件表获取第一文件信息,提取白名单文件,进而完成工业主机白名单的提取,极大的降低了工业主机提取白名单时的系统资源占用,保证了工业主机有足够资源正常执行生产作业任务。
进一步的,根据所述第一文件信息获取所述NTFS文件系统中的白名单文件的步骤包括:
步骤1031,根据所述第一文件信息判断所述NTFS文件系统中的文件是否为白名单文件类型;
在工业主机中,通常白名单文件都具有固定格式或有固定后缀,因此可以预设某一或某些类型的文件为白名单文件,所得第一文件信息时可结合预设的文件类型对NTFS文件系统中的文件判断其是否为白名单文件类型。
步骤1032,若是,则确定所述NTFS文件系统中的文件为白名单文件,并将所述白名单文件记录在预处理白名单中。
根据文件类型对NTFS文件系统中的文件进行判断,可确定白名单文件,并将其记录在预处理白名单中,此时主观上可认为白名单提取完成。
在本实施例中,通过所得第一文件信息结合预设白名单文件的文件类型可得到白名单文件,并将白名单文件记录在预处理白名单中。此处仅将白名单文件登记为预处理白名单,而对预处理白名单的处理可以在其余时段进行,能够正常开展后续业务处理,并且不会影响对白名单文件的正常判断和校验。
进一步的,参照图3,图3为本发明实施例中对预处理白名单进行处理,获取文件白名单的细化流程示意图。
本实施例基于上述图2所示的实施例,在本实施例中,上述步骤S104,对预处理白名单进行处理,获取文件白名单的步骤包括:
步骤S1041,基于预处理白名单,提取所述预处理白名单中文件的第一文件信息;
其中,预处理白名单为通过读取主文件表筛选的白名单文件记录所得,需要进一步提取为文件白名单。可基于预处理白名单提取重新提取白名单文件信息,此时提取的文件信息命名为第一文件信息,基于第一文件信息实现对预处理名单的处理。
步骤S1042,基于所述第一文件信息和第一预设规则提取工业主机的白名单;
第一文件信息为基于预处理白名单重新提取所得的文件信息,结合预设规则,对预处理白名单上的文件进行第二次筛选,筛选所得的文件即可记录在文件白名单中,由此完成预处理白名单的处理,得到工业主机的白名单。所述第一预设规则可基于读取文件所能获得的信息和白名单文件特征信息进行设置。
步骤S1043,基于所述第一文件信息和文件内容计算白名单文件的MD5值;
其中,对NTFS文件系统中的白名单文件采用MD5信息摘要算法计算NTFS文件系统中白名单文件的MD5值,MD5信息摘要算法是一种被广泛使用的密码散列函数,MD5信息摘要算法将整个文件当作一个大文本信息,通过其不可逆的字符串变换算法,产生唯一的MD5信息摘要,即MD5值。MD5具备各种性质,如抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别;弱抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的;强抗碰撞:想找到两个不同的数据,使它们具有相同的MD5值,是非常困难的。
基于第一文件信息可快速定位并读取白名单文件内容,根据白名单文件内容计算白名单文件的MD5值,由于MD5信息摘要算法的不可逆行和唯一性,可产生唯一的MD5值。
步骤S1044,在数据库中登记所述白名单文件的MD5值。
采用MD5信息摘要算法计算白名单文件的MD5值后,将白名单文件的MD5值登记在数据库中,作为白名单文件的原始MD5值保存,在对白名单进行完整性校验或监控文件行为时可根据再次计算所得的MD5值与保存在数据库中的MD5值进行对比,以此检验白名单文件是否完整或者是否发生了修改,保证文件的完整性和不可篡改性。
在本实施例中,通过基于预处理白名单获取其中文件的第一文件信息,再基于第一文件信息和预设规则完成白名单文件的提取,实现了在NTFS文件系统中白名单提取的第二次筛选,使得白名单文件更加准确。完成白名单提取后,通过计算白名单文件的MD5值,并登记在数据库中,可以根据MD5值的抗修改性和抗碰撞性保证白名单文件的完整性和防止篡改。
进一步的,参照图4,图4为本发明实施例中在基于预处理白名单提取工业主机的白名单过程中,对预处理白名单上文件的文件行为进行监控的流程示意图。
本实施例基于上述图3所述的实施例,在本实施例中,上述步骤S104,所述对预处理白名单进行处理,获取文件白名单的步骤的步骤还包括:
步骤a,监控预处理白名单上的文件行为;
在对预处理白名单进行处理得到文件白名单的过程中,预处理白名单上的文件可能会发生修改,删除等文件变更行为,因此需要对预处理白名单上文件的文件行为进行监控。
步骤b,若所述文件出现文件变更行为,则对出现文件变更行为的文件进行标记,不提取出现文件变更行为的文件信息。
其中,记录在预处理白名单中的文件只是主观上作为白名单文件,但尚未提取在文件白名单中,在此期间文件仍然有可能发生变更行为,如修改、删除等,而正常状态下白名单文件是不会出现变更行为的,当出现变更行为时,大部分情况下都是异常行为,因此需要对预处理白名单上的文件行为进行监控,对出现变更行为的文件作出标记,在提取文件白名单时不提取所述文件信息。
在本实施例中,在对预处理白名单文件进行处理,提取工业主机的白名单的过程中,通过监控预处理白名单上文件的文件行为,对发生文件行为的文件进行标识,不提取其信息,保证了处理结果的纯净,防止一些恶意文件行为对工业主机造成不良影响。
进一步的,参照图5,图5为本发明实施例中接收收人工判断指令,对发生文件变更行为的文件进行处理的示意图。
本实施例基于上述图4,在本实施例中,上述步骤b,若所述文件出现文件变更行为,则对所述文件进行标记,不提取所述文件信息的步骤之后还包括:
步骤c,接收对发生文件变更行为的文件作出的人工判断指令;
由于对发生文件变更行为的文件作出了标识,并且未提取信息,需要对文件行为作出判断,将正常变更的文件提取到文件白名单中,保证文件白名单的完整性。但此时文件变更数量并不多且一般需要进行人工判断。例如,若是文件升级发生的文件行为,系统无法识别,此时需要接收人工对其作出的判断指令。
步骤d,若所述指令判断文件变更行为可信,则重新提取所述出现文件变更行为文件的文件信息;
接收到人工作出的判断指令后,需要对不同指令采取相应的操作,如果文件行为是可信的,则需要重新提取该文件信息。
步骤e,若所述指令判断文件变更行为不可信,则将所述出现文件变更行为的文件从白名单中剔除。
如果人工判断该文件行为是恶意行为,则接收到的人工判断指令为文件变更行为不可信,则需要将其从白名单中剔除,保证系统安全。
在本实施例中,由于一般情况下白名单文件不会出现文件变更行为,对出现变更行为的文件作出标记并且不提取文件信息,但仍需要对该所述文件作出处理,因此可以接收对所述文件变更行为的作出的人工判断指令,由人工判断文件变更行为是否可信。若所述文件变更行为可信,则重新提取该文件信息,若所述文件变更行为是不可信的,则将其从白名单中剔除,以保证白名单的安全性,保证系统安全。
进一步的,参照图6,图6为基于本发明实施例中的另一示例性实施例的流程示意图。基于上述图2所示逇实施例,在本实施例中,在上述步骤S101,读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类,之后还包括:
步骤S105,对分类得到的其他文件系统中的文件进行遍历,提取第二文件信息;
在工业主机中,虽然也存在其他文件系统,但该类型磁盘数量相对较少,磁盘中文件也相对较少,因此通过遍历其他文件系统中文件的方式来提取其他文件系统中的第二文件信息也不会导致大量系统资源的占用。
步骤S106,基于所述文件信息和第二预设规则提取其他文件系统的白名单;
通过遍历得到其他文件系统下的第二文件信息,可以结合第二预设规则判断所述其他文件系统中文件是否为白名单文件,将白名单文件记录在文件白名单中,统一提取其他文件系统的文件白名单,所述第二预设规则可根据白名单文件特征进行设置。
步骤S107,根据所述文件信息的文件内容计算白名单文件的MD5值;
为保证其他文件系统中白名单文件的完整性和不可篡改性,对其他文件系统中的白名单文件也需要计算其MD5值,具体计算过程在此不再赘述。
步骤S108,在数据库中登记所述白名单文件的MD5值。
将计算所得白名单文件的MD5值登记在数据库中,在对白名单文件进行完整性校验时,将校验计算所得的MD5值与数据库中该白名单文件登记的MD5值进行对比,以验证其完整性。
在本实施例中,通过将工业主机磁盘根据文件系统类型进行分类,分为NTFS文件系统和其他文件系统。在工业主机中虽然也存在其他文件系统,但该类型磁盘数量相对较少,磁盘中文件也相对较少,因此通过遍历其他文件系统中文件的方式来提取其他文件系统中的第二文件信息也不会导致大量系统资源的占用。并且,通过计算其他文件系统中白名单文件的MD5值并将其登记在数据库中,能有效保证其他文件系统中白名单文件的完整性并防止白名单文件被篡改。
此外,本发明实施例还提出一种工控主机的安全防护装置,所述工控主机的安全防护装置包括:
磁盘分类模块,用于读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类;
文件信息读取模块,用于读取分类得到的NTFS文件系统中的主文件表,获取所述NTFS文件系统中文件的第一文件信息;
白名单文件获取模块,用于根据所述文件信息获取所述NTFS文件系统中的白名单文件;
白名单提取模块,用于根据所述白名单文件提取工业主机的白名单。
本实施例实现工业主机白名单提取的原理及实施过程,请参照上述各实施例,在此不再赘述。
此外,本申请实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的工业主机白名单提取程序,所述工业主机白名单提取程序被所述处理器执行时实现如上所述的工业主机白名单提取方法的步骤。
由于本工业主机白名单提取程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
此外,本申请实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有工业主机白名单提取程序,所述工业主机白名单提取程序被处理器执行时实现如上所述的工业主机白名单提取方法的步骤。
由于本工业主机白名单提取程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
相比现有技术,本申请实施例提出的工业主机白名单提取方法、装置、终端设备以及存储介质,通过读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类;读取分类得到的NTFS文件系统中的主文件表,获取所述NTFS文件系统中的文件信息;根据所述文件信息获取所述NTFS文件系统中的白名单文件;根据所述白名单文件提取工业主机的白名单。由此,可以通过对工业主机磁盘根据文件系统类型分类,对NTFS文件系统和其他文件系统采取相应的白名单提取方式,针对NTFS文件系统特性,通过读取主文件表的方式获取文件信息,只需要占用少量系统资源,解决了遍历主机文件获取文件信息来提取白名单造成的大量占用系统资源的问题;而且,本方案针对NTFS文件系统的白名单提取采取分步处理的方式,首先提取预处理白名单,主观上极大提升了提取白名单的速度;而且,本方案通过计算白名单文件的MD5值并登记在数据库中,保证了白名单文件的完整性并防止白名单文件被篡改。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,被控终端,或者网络设备等)执行本申请每个实施例的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (10)

1.一种工业主机白名单提取方法,其特征在于,所述工业主机白名单提取方法包括:
读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类;
读取分类得到的新型文件系统NTFS文件系统中的主文件表,获取所述NTFS文件系统中的第一文件信息;
根据所述第一文件信息获取所述NTFS文件系统中的白名单文件;
根据所述白名单文件提取工业主机的白名单;
所述读取分类得到的新型文件系统NTFS文件系统中的主文件表,获取所述NTFS文件系统中的第一文件信息的步骤包括:
读取分类得到的新型文件系统NTFS文件系统中主文件表获取文件的存储位置以及文件属性信息;
所述根据所述第一文件信息获取所述NTFS文件系统中的白名单文件的步骤包括:
根据所述存储位置以及文件属性信息,获得固定格式的文件或者文件名具有相同后缀的文件,得到所述NTFS文件系统中的白名单文件。
2.根据权利要求1所述的工业主机白名单提取方法,其特征在于,所述根据所述第一文件信息获取所述NTFS文件系统中的白名单文件的步骤还包括:
将所述白名单文件记录在预处理白名单中。
3.根据权利要求2所述的工业主机白名单提取方法,其特征在于,所述根据所述白名单文件提取工业主机的白名单的步骤包括:
在所述工业主机处于预设闲时状态下,对所述预处理白名单进行处理,提取工业主机的白名单。
4.根据权利要求3所述的主机白名单提取方法,其特征在于,所述在所述工业主机处于预设闲时状态下,对所述预处理白名单进行处理,提取工业主机的白名单步骤包括:
基于预处理白名单,提取所述预处理白名单中文件的第一文件信息;
基于所述第一文件信息和第一预设规则提取工业主机的白名单;
基于所述第一文件信息和文件内容计算白名单文件的MD5值;
在数据库中登记所述白名单文件的MD5值。
5.根据权利要求4所述的主机白名单提取方法,其特征在于,所述在所述工业主机处于预设闲时状态下,对所述预处理白名单进行处理,提取工业主机的白名单的步骤还包括;
监控所述预处理白名单上文件的文件行为;
若所述预处理白名单上的文件出现文件变更行为,则对出现文件变更行为的文件进行标记,不提取出现文件变更行为的文件信息。
6.根据权利要求5所述的主机白名单提取方法,其特征在于,所述若所述预处理白名单上的文件出现文件变更行为,则对出现文件变更行为的文件进行标记,不提取出现文件变更行为的文件信息的步骤之后还包括:
接收对出现文件变更行为的文件作出的人工判断指令;
若所述指令判断文件变更行为可信,则重新提取所述出现文件变更行为文件的文件信息;
若所述指令判断文件变更行为不可信,则将所述出现文件变更行为的文件从白名单中剔除。
7.根据权利要求1~6任一项所述的工业主机白名单提取方法,其特征在于,所述读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类的步骤之后还包括:
对分类得到的其他文件系统中的文件进行遍历,提取第二文件信息;
基于所述第二文件信息和第二预设规则提取其他文件系统的白名单;
根据所述第二文件信息的文件内容计算白名单文件的MD5值;
在数据库中登记所述白名单文件的MD5值。
8.一种工业主机白名单提取装置,其特征在于,所述工业主机白名单提取装置包括:
磁盘分类模块,用于读取磁盘属性,根据所述磁盘属性中的文件系统类型,对所述磁盘进行分类;
文件信息读取模块,用于读取分类得到的NTFS文件系统中的主文件表,获取所述NTFS文件系统中文件的第一文件信息;
白名单文件获取模块,用于根据所述第一文件信息获取所述NTFS文件系统中的白名单文件;
白名单提取模块,用于根据所述白名单文件提取工业主机的白名单;
所述文件信息读取模块,还用于读取所述主文件表获取文件的存储位置以及文件属性信息;
所述白名单提取模块,还用于根据所述存储位置以及文件属性信息,获得固定格式的文件或者文件名具有相同后缀的文件,得到所述NTFS文件系统中的白名单文件。
9.一种终端设备,其特征在于,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的主机白名单提取程序,所述工业主机白名单提取程序被所述处理器执行时实现如权利要求1-7中任一项所述的主机白名单提取方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有主机白名单提取程序,所述主机白名单提取程序被处理器执行时实现如权利要求1-7中任一项所述的工业主机白名单提取方法的步骤。
CN202211107085.4A 2022-09-13 2022-09-13 工业主机白名单提取方法、装置、终端设备以及存储介质 Active CN115186255B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211107085.4A CN115186255B (zh) 2022-09-13 2022-09-13 工业主机白名单提取方法、装置、终端设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211107085.4A CN115186255B (zh) 2022-09-13 2022-09-13 工业主机白名单提取方法、装置、终端设备以及存储介质

Publications (2)

Publication Number Publication Date
CN115186255A CN115186255A (zh) 2022-10-14
CN115186255B true CN115186255B (zh) 2022-11-29

Family

ID=83524741

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211107085.4A Active CN115186255B (zh) 2022-09-13 2022-09-13 工业主机白名单提取方法、装置、终端设备以及存储介质

Country Status (1)

Country Link
CN (1) CN115186255B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017054697A1 (zh) * 2015-09-28 2017-04-06 天津书生云科技有限公司 在sas存储系统中实现hba卡访问sata磁盘的方法及设备
CN114363018A (zh) * 2021-12-20 2022-04-15 北京六方云信息技术有限公司 工业数据传输方法、装置、设备与存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10938854B2 (en) * 2017-09-22 2021-03-02 Acronis International Gmbh Systems and methods for preventive ransomware detection using file honeypots
US11442623B2 (en) * 2019-05-02 2022-09-13 Commvault Systems, Inc. Faster browse of secondary copies of block-level data volumes

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017054697A1 (zh) * 2015-09-28 2017-04-06 天津书生云科技有限公司 在sas存储系统中实现hba卡访问sata磁盘的方法及设备
CN114363018A (zh) * 2021-12-20 2022-04-15 北京六方云信息技术有限公司 工业数据传输方法、装置、设备与存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
解析NTFS文件系统;《每周电脑报》;20060814(第30期);全文 *

Also Published As

Publication number Publication date
CN115186255A (zh) 2022-10-14

Similar Documents

Publication Publication Date Title
CN106302337B (zh) 漏洞检测方法和装置
US10572240B2 (en) Operating system update management for enrolled devices
US10079835B1 (en) Systems and methods for data loss prevention of unidentifiable and unsupported object types
US10521423B2 (en) Apparatus and methods for scanning data in a cloud storage service
CN107426173B (zh) 文件防护方法及装置
CN111131221B (zh) 接口校验的装置、方法及存储介质
CN110888838A (zh) 基于对象存储的请求处理方法、装置、设备及存储介质
CN104067283A (zh) 识别移动环境的木马化应用程序
CN113489713A (zh) 网络攻击的检测方法、装置、设备及存储介质
CN112769775B (zh) 一种威胁情报关联分析方法、系统、设备及计算机介质
US9519780B1 (en) Systems and methods for identifying malware
US10742668B2 (en) Network attack pattern determination apparatus, determination method, and non-transitory computer readable storage medium thereof
CN111666205A (zh) 一种数据审计的方法、系统、计算机设备和存储介质
US10511631B2 (en) Safe data access through any data channel
CN115186255B (zh) 工业主机白名单提取方法、装置、终端设备以及存储介质
CN114201370B (zh) 一种网页文件监控方法及系统
WO2023151238A1 (zh) 一种勒索病毒检测方法及相关系统
CN109218011B (zh) 一种基于md5的移动终端多媒体资源验证方法
US8397295B1 (en) Method and apparatus for detecting a rootkit
CN110826078A (zh) 数据存储方法、设备及系统
CN103971065A (zh) 用于防止篡改数据的方法和设备
US11750660B2 (en) Dynamically updating rules for detecting compromised devices
US12013943B2 (en) Data processing system and method capable of separating application processes
US11714896B2 (en) Information processing apparatus, information processing method, and computer program
CN116647412B (zh) 一种Web服务器的安全防御方法和系统

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