CN106650435A - 一种保护系统安全的方法及装置 - Google Patents
一种保护系统安全的方法及装置 Download PDFInfo
- Publication number
- CN106650435A CN106650435A CN201611233374.3A CN201611233374A CN106650435A CN 106650435 A CN106650435 A CN 106650435A CN 201611233374 A CN201611233374 A CN 201611233374A CN 106650435 A CN106650435 A CN 106650435A
- Authority
- CN
- China
- Prior art keywords
- binary file
- request
- operation requests
- white list
- target
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
Abstract
本发明提供了一种保护系统安全的方法及装置,能够提高系统的安全性。该方法,包括:预先设置过滤驱动模块,将所述过滤驱动模块加载到系统内核中,创建白名单清单链表,还包括:获取操作请求;利用所述过滤驱动模块,判断所述白名单清单链表是否允许响应所述操作请求,如果是,则允许实现所述操作请求对应的操作,否则,禁止实现所述操作请求对应的操作。本发明提供了一种保护系统安全的方法及装置,能够提高系统的安全性。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种保护系统安全的方法及装置。
背景技术
随着云计算、大数据等新型技术的发展,对云主机和服务器等系统的安全计算环境要求越来越高。安全的计算环境是云计算发展的基础,没有安全的计算环境就不能保证云端数据的安全性,没有安全的计算环境就不能保证云端业务的可持续性。
现有技术中,通过白名单机制来保证系统的安全。没有被系统中的白名单允许的操作禁止在系统中实现。但是,现有技术的白名单机制容易被破坏,黑客或者病毒等可以绕过白名单直接对系统进行操作,安全性较低。
发明内容
本发明实施例提供了一种保护系统安全的方法及装置,能够提高系统的安全性。
一方面,本发明实施例提供了一种保护系统安全的方法,包括:预先设置过滤驱动模块,将所述过滤驱动模块加载到系统内核中,创建白名单清单链表,还包括:
获取操作请求;
利用所述过滤驱动模块,判断所述白名单清单链表是否允许响应所述操作请求,如果是,则允许实现所述操作请求对应的操作,否则,禁止实现所述操作请求对应的操作。
进一步地,所述白名单清单链表中包括:至少一个待保护的二进制文件的标识信息;
在所述利用所述过滤驱动模块,判断所述白名单清单链表是否允许响应所述操作请求之前,进一步包括:
确定所述操作请求对应的目标二进制文件的标识信息;
所述利用所述过滤驱动模块,判断所述白名单清单链表是否允许响应所述操作请求,包括:
利用所述过滤驱动模块,根据所述操作请求对应的目标操作和所述目标二进制文件的标识信息是否在所述白名单清单链表中,判断所述白名单清单链表是否允许响应所述操作请求。
进一步地,所述操作请求包括:启动目标进程的请求、加载目标动态库的请求、加载目标驱动的请求;
其中,所述启动目标进程的请求对应的目标操作为启动目标进程,所述加载目标动态库的请求对应的目标操作为加载目标动态库,所述加载目标驱动的请求对应的目标操作为加载目标驱动;
所述确定所述操作请求对应的目标二进制文件的标识信息,包括:
确定所述操作请求的待操作目标对应的二进制文件,其中,所述待操作目标包括:所述目标进程、所述目标动态库、所述目标驱动;
确定所述待操作目标对应的二进制文件的标识信息;
所述利用所述过滤驱动模块,根据所述操作请求对应的目标操作和所述目标二进制文件的标识信息是否在所述白名单清单链表中,判断所述白名单清单链表是否允许响应所述操作请求,包括:
当利用所述过滤驱动模块确定出所述目标操作为所述启动目标进程、所述加载目标动态库或所述加载目标驱动时,利用所述过滤驱动模块,判断所述白名单清单链表中是否存在所述待操作目标对应的二进制文件的标识信息,如果是,则确定所述白名单清单链表允许响应所述操作请求,否则,确定所述白名单清单链表不允许响应所述操作请求。
进一步地,所述操作请求包括:创建二进制文件的请求、写入二进制文件的请求、覆盖二进制文件的请求、替换二进制文件的请求、删除二进制文件的请求、重命名二进制文件的请求;
其中,所述创建二进制文件的请求对应的目标操作为创建二进制文件,所述写入二进制文件的请求对应的目标操作为写入二进制文件,所述覆盖二进制文件的请求对应的目标操作为覆盖二进制文件,所述替换二进制文件的请求对应的目标操作为替换二进制文件,所述删除二进制文件的请求对应的目标操作为删除二进制文件,所述重命名二进制文件的请求对应的目标操作为重命名二进制文件;
所述确定所述操作请求对应的目标二进制文件的标识信息,包括:
确定所述操作请求对应的待操作的二进制文件的标识信息;
所述利用所述过滤驱动模块,根据所述操作请求对应的目标操作和所述目标二进制文件的标识信息是否在所述白名单清单链表中,判断所述白名单清单链表是否允许响应所述操作请求,包括:
当利用所述过滤驱动模块确定出所述目标操作为所述创建二进制文件、所述写入二进制文件、所述覆盖二进制文件、所述替换二进制文件、所述删除二进制文件或所述重命名二进制文件时,利用所述过滤驱动模块,判断所述白名单清单链表中是否存在所述操作请求对应的待操作的二进制文件的标识信息,如果是,则确定所述白名单清单链表不允许响应所述操作请求,否则,确定所述白名单清单链表允许响应所述操作请求。
进一步地,每个所述待保护的二进制文件的标识信息,包括:
当前所述待保护的二进制文件的全路径和当前所述待保护的二进制文件的哈希值。
另一方面,本发明实施例提供了一种保护系统安全的装置,包括:
设置模块,用于设置过滤驱动模块,将所述过滤驱动模块加载到系统内核中;
保存模块,用于保存白名单清单链表;
获取模块,用于获取操作请求;
所述过滤驱动模块,用于判断所述白名单清单链表是否允许响应所述操作请求,如果是,则允许实现所述操作请求对应的操作,否则,禁止实现所述操作请求对应的操作。
进一步地,所述白名单清单链表中包括:至少一个待保护的二进制文件的标识信息;
进一步包括:
确定模块,用于确定所述操作请求对应的目标二进制文件的标识信息;
所述过滤驱动模块,用于根据所述操作请求对应的目标操作和所述目标二进制文件的标识信息是否在所述白名单清单链表中,判断所述白名单清单链表是否允许响应所述操作请求。
进一步地,所述操作请求包括:启动目标进程的请求、加载目标动态库的请求、加载目标驱动的请求;
其中,所述启动目标进程的请求对应的目标操作为启动目标进程,所述加载目标动态库的请求对应的目标操作为加载目标动态库,所述加载目标驱动的请求对应的目标操作为加载目标驱动;
所述确定模块,用于确定所述操作请求的待操作目标对应的二进制文件,确定所述待操作目标对应的二进制文件的标识信息;其中,所述待操作目标包括:所述目标进程、所述目标动态库、所述目标驱动;
所述过滤驱动模块,包括:
第一判断子模块,用于当确定出所述目标操作为所述启动目标进程、所述加载目标动态库或所述加载目标驱动时,判断所述白名单清单链表中是否存在所述待操作目标对应的二进制文件的标识信息,如果是,则确定所述白名单清单链表允许响应所述操作请求,否则,确定所述白名单清单链表不允许响应所述操作请求。
进一步地,所述操作请求包括:创建二进制文件的请求、写入二进制文件的请求、覆盖二进制文件的请求、替换二进制文件的请求、删除二进制文件的请求、重命名二进制文件的请求;
其中,所述创建二进制文件的请求对应的目标操作为创建二进制文件,所述写入二进制文件的请求对应的目标操作为写入二进制文件,所述覆盖二进制文件的请求对应的目标操作为覆盖二进制文件,所述替换二进制文件的请求对应的目标操作为替换二进制文件,所述删除二进制文件的请求对应的目标操作为删除二进制文件,所述重命名二进制文件的请求对应的目标操作为重命名二进制文件;
所述确定模块,用于确定所述操作请求对应的待操作的二进制文件的标识信息;
所述过滤驱动模块,包括:
第二判断子模块,用于当确定出所述目标操作为所述创建二进制文件、所述写入二进制文件、所述覆盖二进制文件、所述替换二进制文件、所述删除二进制文件或所述重命名二进制文件时,判断所述白名单清单链表中是否存在所述操作请求对应的待操作的二进制文件的标识信息,如果是,则确定所述白名单清单链表不允许响应所述操作请求,否则,确定所述白名单清单链表允许响应所述操作请求。
进一步地,每个所述待保护的二进制文件的标识信息,包括:
当前所述待保护的二进制文件的全路径和当前所述待保护的二进制文件的哈希值。
在本发明实施例中,将预先设置的过滤驱动模块加载到系统内核中,所有获取到的操作请求都需要经过过滤驱动模块的处理,而过滤驱动模块在处理时,只实现白名单清单链表允许响应的操作请求对应的操作,该过滤驱动模块是设置在系统内核中,无法被绕过,提高了系统的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种保护系统安全的方法的流程图;
图2是本发明一实施例提供的另一种保护系统安全的方法的流程图;
图3是本发明一实施例提供的又一种保护系统安全的方法的流程图;
图4是本发明一实施例提供的一种保护系统安全的装置的示意图;
图5是本发明一实施例提供的另一种保护系统安全的装置的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种保护系统安全的方法,该方法可以包括以下步骤:
步骤101:预先设置过滤驱动模块,将所述过滤驱动模块加载到系统内核中,创建白名单清单链表;
步骤102:获取操作请求;
步骤103:利用所述过滤驱动模块,判断所述白名单清单链表是否允许响应所述操作请求,如果是,则执行步骤104,否则,执行步骤105;
步骤104:允许实现所述操作请求对应的操作;
步骤105:禁止实现所述操作请求对应的操作。
在本发明实施例中,将预先设置的过滤驱动模块加载到系统内核中,所有获取到的操作请求都需要经过过滤驱动模块的处理,而过滤驱动模块在处理时,只实现白名单清单链表允许响应的操作请求对应的操作,该过滤驱动模块是设置在系统内核中,无法被绕过,提高了系统的安全性。
在本发明一实施例中,创建白名单清单链表可以通过过滤驱动模块来实现。
在本发明一实施例中,过滤驱动模块可以通过hook(钩子)技术来实现,具体地,可以通过hook函数来实现。在系统接收到操作请求时,过滤驱动模块可以通过hook函数拦截该操作请求,并对该操作请求来处理,对于白名单清单链表不允许响应的操作请求,过滤驱动模块禁止系统实现该操作请求对应的操作。
在本发明一实施例中,所述白名单清单链表中包括:至少一个待保护的二进制文件的标识信息;
在所述利用所述过滤驱动模块,判断所述白名单清单链表是否允许响应所述操作请求之前,进一步包括:
确定所述操作请求对应的目标二进制文件的标识信息;
所述利用所述过滤驱动模块,判断所述白名单清单链表是否允许响应所述操作请求,包括:
利用所述过滤驱动模块,根据所述操作请求对应的目标操作和所述目标二进制文件的标识信息是否在所述白名单清单链表中,判断所述白名单清单链表是否允许响应所述操作请求。
在本发明实施例中,通过白名单清单链表来保护系统中的待保护的二进制文件。对于操作请求是否被白名单清单链表允许响应,主要是由操作请求对应的目标操作和操作请求对应的二进制文件的标识信息是否在白名单清单链表中这两方面确定的。
在本发明一实施例中,每个所述待保护的二进制文件的标识信息,包括:
当前所述待保护的二进制文件的全路径和当前所述待保护的二进制文件的哈希值。
在本发明实施例中,通过二进制文件的全路径和哈希值两个信息来标识二进制文件,能够更加准确地标识出二进制文件。这里的二进制文件的全路径是指二进制文件所存储的位置的最全的路径,这里的二进制文件的哈希值可以是SHA 1值。
在本发明一实施例中,所述操作请求包括:启动目标进程的请求、加载目标动态库的请求、加载目标驱动的请求;
其中,所述启动目标进程的请求对应的目标操作为启动目标进程,所述加载目标动态库的请求对应的目标操作为加载目标动态库,所述加载目标驱动的请求对应的目标操作为加载目标驱动;
所述确定所述操作请求对应的目标二进制文件的标识信息,包括:
确定所述操作请求的待操作目标对应的二进制文件,其中,所述待操作目标包括:所述目标进程、所述目标动态库、所述目标驱动;
确定所述待操作目标对应的二进制文件的标识信息;
所述利用所述过滤驱动模块,根据所述操作请求对应的目标操作和所述目标二进制文件的标识信息是否在所述白名单清单链表中,判断所述白名单清单链表是否允许响应所述操作请求,包括:
当利用所述过滤驱动模块确定出所述目标操作为所述启动目标进程、所述加载目标动态库或所述加载目标驱动时,利用所述过滤驱动模块,判断所述白名单清单链表中是否存在所述待操作目标对应的二进制文件的标识信息,如果是,则确定所述白名单清单链表允许响应所述操作请求,否则,确定所述白名单清单链表不允许响应所述操作请求。
在系统中,进程、动态库和驱动都有对应的二进制文件。在本发明实施例中,只有待操作目标对应的二进制文件的标识信息存在于白名单清单链表中,该待操作目标才是安全的。举例来说,待操作目标为进程A,确定出进程A对应的二进制文件A的标识信息,如果二进制文件A的标识信息在白名单清单链表中,说明进程A是安全的,允许启动进程A,如果二进制文件A的标识信息不在白名单清单链表中,说明进程A是不安全的,禁止启动进程A。
针对启动目标进程的请求、加载目标动态库的请求、加载目标驱动的请求等操作请求,如图2所示,本发明实施例提供了一种保护系统安全的方法,包括:
步骤201:预先设置过滤驱动模块,将过滤驱动模块加载到系统内核中。
步骤202:创建白名单清单链表,该白名单清单链表中包括:至少一个待保护的二进制文件的全路径和哈希值。
步骤203:获取操作请求。
具体地,可以通过过滤驱动模块拦截系统接收到的操作请求。
操作请求可以是启动目标进程的请求、加载目标动态库的请求、加载目标驱动的请求中的任意一个。
该步骤可以通过过滤驱动模块实现。
步骤204:确定操作请求的待操作目标对应的二进制文件。
举例来说,操作请求为:启动进程A的请求,该操作请求对应的待操作目标为进程A。进程A对应的二进制文件为二进制文件A。
该步骤可以通过过滤驱动模块实现。
步骤205:确定待操作目标对应的二进制文件的全路径和哈希值。
举例来说,确定二进制文件A的全路径和哈希值。
该步骤可以通过过滤驱动模块实现。
步骤206:利用过滤驱动模块,判断白名单清单链表中是否存在待操作目标对应的二进制文件的全路径和哈希值,如果是,则执行步骤207,否则,执行步骤208。
具体地,在白名单清单链表中的每条记录中,包含一个全路径和一个哈希值,通过该一个全路径和一个哈希值来标识一个待保护的二进制文件。
举例来说,利用过滤驱动模块遍历白名单清单链表,判断白名单清单链表中是否存在二进制文件A的全路径和哈希值。具体地,在白名单清单链表是否存在一条全路径和哈希值与二进制文件A的全路径和哈希值均相同的记录,如果是,则白名单清单链表中存在二进制文件A的全路径和哈希值,否则,白名单清单链表中不存在二进制文件A的全路径和哈希值。
步骤207:允许实现操作请求对应的操作。
具体地,允许系统实现操作请求对应的操作。
举例来说,针对启动进程A的请求,允许系统实现启动进程A。
步骤208:禁止实现操作请求对应的操作。
具体地,禁止系统实现操作请求对应的操作。
举例来说,针对启动进程A的请求,禁止系统实现启动进程A。
在本发明实施例中,所述操作请求包括:创建二进制文件的请求、写入二进制文件的请求、覆盖二进制文件的请求、替换二进制文件的请求、删除二进制文件的请求、重命名二进制文件的请求;
其中,所述创建二进制文件的请求对应的目标操作为创建二进制文件,所述写入二进制文件的请求对应的目标操作为写入二进制文件,所述覆盖二进制文件的请求对应的目标操作为覆盖二进制文件,所述替换二进制文件的请求对应的目标操作为替换二进制文件,所述删除二进制文件的请求对应的目标操作为删除二进制文件,所述重命名二进制文件的请求对应的目标操作为重命名二进制文件;
所述确定所述操作请求对应的目标二进制文件的标识信息,包括:
确定所述操作请求对应的待操作的二进制文件的标识信息;
所述利用所述过滤驱动模块,根据所述操作请求对应的目标操作和所述目标二进制文件的标识信息是否在所述白名单清单链表中,判断所述白名单清单链表是否允许响应所述操作请求,包括:
当利用所述过滤驱动模块确定出所述目标操作为所述创建二进制文件、所述写入二进制文件、所述覆盖二进制文件、所述替换二进制文件、所述删除二进制文件或所述重命名二进制文件时,利用所述过滤驱动模块,判断所述白名单清单链表中是否存在所述操作请求对应的待操作的二进制文件的标识信息,如果是,则确定所述白名单清单链表不允许响应所述操作请求,否则,确定所述白名单清单链表允许响应所述操作请求。
在本发明实施例中,白名单清单链表中的标识信息对应的待保护的二进制文件是不允许操作的,具体地,不允许创建、写入、覆盖、替换、删除和重命名等操作。举例来说,待操作的二进制文件为二进制文件B,确定出二进制文件B的标识信息,如果二进制文件B的标识信息在白名单清单链表中,说明进程B是被保护的,不允许对二进制文件B进行操作。
针对创建二进制文件、写入二进制文件的请求、覆盖二进制文件的请求、替换二进制文件的请求、删除二进制文件的请求、重命名二进制文件的请求等操作请求,如图3所示,本发明实施例提供了一种保护系统安全的方法,包括:
步骤301:预先设置过滤驱动模块,将过滤驱动模块加载到系统内核中。
步骤302:创建白名单清单链表,该白名单清单链表中包括:至少一个待保护的二进制文件的全路径和哈希值。
步骤303:获取操作请求。
具体地,可以通过过滤驱动模块拦截系统接收到的操作请求。
操作请求可以是创建二进制文件的请求、写入二进制文件的请求、覆盖二进制文件的请求、替换二进制文件的请求、删除二进制文件的请求、重命名二进制文件的请求中的任意一个。
该步骤可以通过过滤驱动模块实现。
步骤304:确定操作请求对应的待操作的二进制文件的全路径和哈希值。
举例来说,操作请求为:写入二进制文件B的请求,该操作请求对应的待操作的二进制文件为二进制文件B。确定二进制文件B的全路径和哈希值。
该步骤可以通过过滤驱动模块实现。
步骤305:利用过滤驱动模块,判断白名单清单链表中是否存在操作请求对应的待操作的二进制文件的全路径和哈希值,如果是,则执行步骤306,否则,执行步骤307。
具体地,在白名单清单链表中的每条记录中,包含一个全路径和一个哈希值,通过该一个全路径和一个哈希值来标识一个待保护的二进制文件。
举例来说,利用过滤驱动模块遍历白名单清单链表,判断白名单清单链表中是否存在二进制文件B的全路径和哈希值。具体地,在白名单清单链表是否存在一条全路径和哈希值与二进制文件B的全路径和哈希值均相同的记录,如果是,则白名单清单链表中存在二进制文件B的全路径和哈希值,否则,白名单清单链表中不存在二进制文件B的全路径和哈希值。
步骤306:禁止实现操作请求对应的操作。
具体地,禁止系统实现操作请求对应的操作。
举例来说,针对写入二进制文件B的请求,禁止系统实现写入二进制文件B。
步骤307:允许实现操作请求对应的操作。
具体地,允许系统实现操作请求对应的操作。
举例来说,针对写入二进制文件B的请求,允许系统实现写入二进制文件B。
需要说明的是:在创建白名单清单链表之前进一步包括:利用白名单主服务进程扫描系统中的二进制文件,确定扫描到的二进制文件的全路径和哈希值。过滤驱动模块根据每个扫描到的二进制文件的全路径和哈希值生成白名单清单链表。其中,为了提高系统的安全性,白名单主服务进程初次启动优选在操作系统刚刚安装或配置完成且网络断开的情况下进行,也就是说,白名单清单链表优选在操作系统刚刚安装或配置完成且网络断开的情况下生成,这样能够避免白名单清单链表存在不安全的二进制文件的标识信息。
另外,白名单主服务进程退出时,可以从当前操作系统中卸载过滤驱动模块和白名单主服务进程自身。
需要说明的是:当启动目标进程、加载目标动态库或加载目标驱动时,都要由操作系统将对应的二进制文件映射到内存,在操作系统运行期间,发生二进制文件映射行为时,自动进入过滤驱动模块,由过滤驱动模块进行处理。
需要说明的是:本发明实施例可以应用与linux系统。过滤驱动模块可以通过白名单主服务进程加载到系统内核中。具体地,在白名单主服务进程在初始化时安装过滤驱动模块。在Linux操作系统中,二进制文件包括:可执行文件、动态库文件和驱动文件等。
在本发明实施例中,通过过滤驱动模块和白名单清单链表,能够保证进程启动、动态库加载、驱动加载、二进制文件创建、二进制文件写入、二进制文件覆盖、二进制文件替换、二进制文件删除、二进制文件重命名的安全,可以全面增强系统的安全性。
在本发明实施例中,白名单主服务进程在安装过滤驱动模块之后,自动扫描当前系统上的所有二进制文件,建立白名单清单链表,不需要用户进行任何干预,增加了用户极大的便利性。
如图4所示,本发明实施例提供的一种保护系统安全的装置,包括:
设置模块401,用于设置过滤驱动模块,将所述过滤驱动模块加载到系统内核中;
保存模块402,用于保存白名单清单链表;
获取模块403,用于获取操作请求;
所述过滤驱动模块404,用于判断所述白名单清单链表是否允许响应所述操作请求,如果是,则允许实现所述操作请求对应的操作,否则,禁止实现所述操作请求对应的操作。
基于图4所示的一种保护系统安全的装置,如图5所示,本发明实施例提供了一种保护系统安全的装置,包括:
所述白名单清单链表中包括:至少一个待保护的二进制文件的标识信息;
进一步包括:
确定模块501,用于确定所述操作请求对应的目标二进制文件的标识信息;
所述过滤驱动模块,用于根据所述操作请求对应的目标操作和所述目标二进制文件的标识信息是否在所述白名单清单链表中,判断所述白名单清单链表是否允许响应所述操作请求。
在本发明一实施例中,所述操作请求包括:启动目标进程的请求、加载目标动态库的请求、加载目标驱动的请求;
其中,所述启动目标进程的请求对应的目标操作为启动目标进程,所述加载目标动态库的请求对应的目标操作为加载目标动态库,所述加载目标驱动的请求对应的目标操作为加载目标驱动;
所述确定模块,用于确定所述操作请求的待操作目标对应的二进制文件,确定所述待操作目标对应的二进制文件的标识信息;其中,所述待操作目标包括:所述目标进程、所述目标动态库、所述目标驱动;
所述过滤驱动模块,包括:
第一判断子模块,用于当确定出所述目标操作为所述启动目标进程、所述加载目标动态库或所述加载目标驱动时,判断所述白名单清单链表中是否存在所述待操作目标对应的二进制文件的标识信息,如果是,则确定所述白名单清单链表允许响应所述操作请求,否则,确定所述白名单清单链表不允许响应所述操作请求。
在本发明一实施例中,所述操作请求包括:创建二进制文件的请求、写入二进制文件的请求、覆盖二进制文件的请求、替换二进制文件的请求、删除二进制文件的请求、重命名二进制文件的请求;
其中,所述创建二进制文件的请求对应的目标操作为创建二进制文件,所述写入二进制文件的请求对应的目标操作为写入二进制文件,所述覆盖二进制文件的请求对应的目标操作为覆盖二进制文件,所述替换二进制文件的请求对应的目标操作为替换二进制文件,所述删除二进制文件的请求对应的目标操作为删除二进制文件,所述重命名二进制文件的请求对应的目标操作为重命名二进制文件;
所述确定模块,用于确定所述操作请求对应的待操作的二进制文件的标识信息;
所述过滤驱动模块,包括:
第二判断子模块,用于当确定出所述目标操作为所述创建二进制文件、所述写入二进制文件、所述覆盖二进制文件、所述替换二进制文件、所述删除二进制文件或所述重命名二进制文件时,判断所述白名单清单链表中是否存在所述操作请求对应的待操作的二进制文件的标识信息,如果是,则确定所述白名单清单链表不允许响应所述操作请求,否则,确定所述白名单清单链表允许响应所述操作请求。
在本发明一实施例中,每个所述待保护的二进制文件的标识信息,包括:
当前所述待保护的二进制文件的全路径和当前所述待保护的二进制文件的哈希值。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明各个实施例至少具有如下有益效果:
1、在本发明实施例中,将预先设置的过滤驱动模块加载到系统内核中,所有获取到的操作请求都需要经过过滤驱动模块的处理,而过滤驱动模块在处理时,只实现白名单清单链表允许响应的操作请求对应的操作,该过滤驱动模块是设置在系统内核中,无法被绕过,提高了系统的安全性。
2、在本发明实施例中,通过过滤驱动模块和白名单清单链表,能够保证进程启动、动态库加载、驱动加载、二进制文件创建、二进制文件写入、二进制文件覆盖、二进制文件替换、二进制文件删除、二进制文件重命名的安全,可以全面增强系统的安全性。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个〃.....”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种保护系统安全的方法,其特征在于,预先设置过滤驱动模块,将所述过滤驱动模块加载到系统内核中,创建白名单清单链表,还包括:
获取操作请求;
利用所述过滤驱动模块,判断所述白名单清单链表是否允许响应所述操作请求,如果是,则允许实现所述操作请求对应的操作,否则,禁止实现所述操作请求对应的操作。
2.根据权利要求1所述的方法,其特征在于,
所述白名单清单链表中包括:至少一个待保护的二进制文件的标识信息;
在所述利用所述过滤驱动模块,判断所述白名单清单链表是否允许响应所述操作请求之前,进一步包括:
确定所述操作请求对应的目标二进制文件的标识信息;
所述利用所述过滤驱动模块,判断所述白名单清单链表是否允许响应所述操作请求,包括:
利用所述过滤驱动模块,根据所述操作请求对应的目标操作和所述目标二进制文件的标识信息是否在所述白名单清单链表中,判断所述白名单清单链表是否允许响应所述操作请求。
3.根据权利要求2所述的方法,其特征在于,
所述操作请求包括:启动目标进程的请求、加载目标动态库的请求、加载目标驱动的请求;
其中,所述启动目标进程的请求对应的目标操作为启动目标进程,所述加载目标动态库的请求对应的目标操作为加载目标动态库,所述加载目标驱动的请求对应的目标操作为加载目标驱动;
所述确定所述操作请求对应的目标二进制文件的标识信息,包括:
确定所述操作请求的待操作目标对应的二进制文件,其中,所述待操作目标包括:所述目标进程、所述目标动态库、所述目标驱动;
确定所述待操作目标对应的二进制文件的标识信息;
所述利用所述过滤驱动模块,根据所述操作请求对应的目标操作和所述目标二进制文件的标识信息是否在所述白名单清单链表中,判断所述白名单清单链表是否允许响应所述操作请求,包括:
当利用所述过滤驱动模块确定出所述目标操作为所述启动目标进程、所述加载目标动态库或所述加载目标驱动时,利用所述过滤驱动模块,判断所述白名单清单链表中是否存在所述待操作目标对应的二进制文件的标识信息,如果是,则确定所述白名单清单链表允许响应所述操作请求,否则,确定所述白名单清单链表不允许响应所述操作请求。
4.根据权利要求2所述的方法,其特征在于,
所述操作请求包括:创建二进制文件的请求、写入二进制文件的请求、覆盖二进制文件的请求、替换二进制文件的请求、删除二进制文件的请求、重命名二进制文件的请求;
其中,所述创建二进制文件的请求对应的目标操作为创建二进制文件,所述写入二进制文件的请求对应的目标操作为写入二进制文件,所述覆盖二进制文件的请求对应的目标操作为覆盖二进制文件,所述替换二进制文件的请求对应的目标操作为替换二进制文件,所述删除二进制文件的请求对应的目标操作为删除二进制文件,所述重命名二进制文件的请求对应的目标操作为重命名二进制文件;
所述确定所述操作请求对应的目标二进制文件的标识信息,包括:
确定所述操作请求对应的待操作的二进制文件的标识信息;
所述利用所述过滤驱动模块,根据所述操作请求对应的目标操作和所述目标二进制文件的标识信息是否在所述白名单清单链表中,判断所述白名单清单链表是否允许响应所述操作请求,包括:
当利用所述过滤驱动模块确定出所述目标操作为所述创建二进制文件、所述写入二进制文件、所述覆盖二进制文件、所述替换二进制文件、所述删除二进制文件或所述重命名二进制文件时,利用所述过滤驱动模块,判断所述白名单清单链表中是否存在所述操作请求对应的待操作的二进制文件的标识信息,如果是,则确定所述白名单清单链表不允许响应所述操作请求,否则,确定所述白名单清单链表允许响应所述操作请求。
5.根据权利要求2-4中任一所述的方法,其特征在于,
每个所述待保护的二进制文件的标识信息,包括:
当前所述待保护的二进制文件的全路径和当前所述待保护的二进制文件的哈希值。
6.一种保护系统安全的装置,其特征在于,包括:
设置模块,用于设置过滤驱动模块,将所述过滤驱动模块加载到系统内核中;
保存模块,用于保存白名单清单链表;
获取模块,用于获取操作请求;
所述过滤驱动模块,用于判断所述白名单清单链表是否允许响应所述操作请求,如果是,则允许实现所述操作请求对应的操作,否则,禁止实现所述操作请求对应的操作。
7.根据权利要求6所述的装置,其特征在于,
所述白名单清单链表中包括:至少一个待保护的二进制文件的标识信息;
进一步包括:
确定模块,用于确定所述操作请求对应的目标二进制文件的标识信息;
所述过滤驱动模块,用于根据所述操作请求对应的目标操作和所述目标二进制文件的标识信息是否在所述白名单清单链表中,判断所述白名单清单链表是否允许响应所述操作请求。
8.根据权利要求7所述的装置,其特征在于,
所述操作请求包括:启动目标进程的请求、加载目标动态库的请求、加载目标驱动的请求;
其中,所述启动目标进程的请求对应的目标操作为启动目标进程,所述加载目标动态库的请求对应的目标操作为加载目标动态库,所述加载目标驱动的请求对应的目标操作为加载目标驱动;
所述确定模块,用于确定所述操作请求的待操作目标对应的二进制文件,确定所述待操作目标对应的二进制文件的标识信息;其中,所述待操作目标包括:所述目标进程、所述目标动态库、所述目标驱动;
所述过滤驱动模块,包括:
第一判断子模块,用于当确定出所述目标操作为所述启动目标进程、所述加载目标动态库或所述加载目标驱动时,判断所述白名单清单链表中是否存在所述待操作目标对应的二进制文件的标识信息,如果是,则确定所述白名单清单链表允许响应所述操作请求,否则,确定所述白名单清单链表不允许响应所述操作请求。
9.根据权利要求7所述的装置,其特征在于,
所述操作请求包括:创建二进制文件的请求、写入二进制文件的请求、覆盖二进制文件的请求、替换二进制文件的请求、删除二进制文件的请求、重命名二进制文件的请求;
其中,所述创建二进制文件的请求对应的目标操作为创建二进制文件,所述写入二进制文件的请求对应的目标操作为写入二进制文件,所述覆盖二进制文件的请求对应的目标操作为覆盖二进制文件,所述替换二进制文件的请求对应的目标操作为替换二进制文件,所述删除二进制文件的请求对应的目标操作为删除二进制文件,所述重命名二进制文件的请求对应的目标操作为重命名二进制文件;
所述确定模块,用于确定所述操作请求对应的待操作的二进制文件的标识信息;
所述过滤驱动模块,包括:
第二判断子模块,用于当确定出所述目标操作为所述创建二进制文件、所述写入二进制文件、所述覆盖二进制文件、所述替换二进制文件、所述删除二进制文件或所述重命名二进制文件时,判断所述白名单清单链表中是否存在所述操作请求对应的待操作的二进制文件的标识信息,如果是,则确定所述白名单清单链表不允许响应所述操作请求,否则,确定所述白名单清单链表允许响应所述操作请求。
10.根据权利要求7-9中任一所述的装置,其特征在于,
每个所述待保护的二进制文件的标识信息,包括:
当前所述待保护的二进制文件的全路径和当前所述待保护的二进制文件的哈希值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611233374.3A CN106650435A (zh) | 2016-12-28 | 2016-12-28 | 一种保护系统安全的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611233374.3A CN106650435A (zh) | 2016-12-28 | 2016-12-28 | 一种保护系统安全的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106650435A true CN106650435A (zh) | 2017-05-10 |
Family
ID=58832930
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611233374.3A Pending CN106650435A (zh) | 2016-12-28 | 2016-12-28 | 一种保护系统安全的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106650435A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109299607A (zh) * | 2018-08-24 | 2019-02-01 | 珠海奔图电子有限公司 | 驱动程序安全检测方法、装置和图像形成系统 |
CN109831420A (zh) * | 2018-05-04 | 2019-05-31 | 360企业安全技术(珠海)有限公司 | 内核进程权限的确定方法及装置 |
CN110457871A (zh) * | 2019-08-13 | 2019-11-15 | 杭州安恒信息技术股份有限公司 | 一种基于文件过滤驱动框架的守护进程方法和装置 |
WO2021164166A1 (zh) * | 2020-02-20 | 2021-08-26 | 苏州浪潮智能科技有限公司 | 一种业务数据保护方法、装置、设备及可读存储介质 |
CN113688415A (zh) * | 2021-10-27 | 2021-11-23 | 湖南新云网科技有限公司 | 文件管控方法、设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130097356A1 (en) * | 2011-10-13 | 2013-04-18 | Mcafee, Inc. | System and method for kernel rootkit protection in a hypervisor environment |
CN106203073A (zh) * | 2016-07-13 | 2016-12-07 | 浪潮电子信息产业股份有限公司 | 一种基于文件系统过滤驱动的Windows白名单控制方法 |
CN106203108A (zh) * | 2016-06-29 | 2016-12-07 | 北京市国路安信息技术股份有限公司 | 基于内核模块的Linux白名单系统保护方法和装置 |
-
2016
- 2016-12-28 CN CN201611233374.3A patent/CN106650435A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130097356A1 (en) * | 2011-10-13 | 2013-04-18 | Mcafee, Inc. | System and method for kernel rootkit protection in a hypervisor environment |
CN106203108A (zh) * | 2016-06-29 | 2016-12-07 | 北京市国路安信息技术股份有限公司 | 基于内核模块的Linux白名单系统保护方法和装置 |
CN106203073A (zh) * | 2016-07-13 | 2016-12-07 | 浪潮电子信息产业股份有限公司 | 一种基于文件系统过滤驱动的Windows白名单控制方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109831420A (zh) * | 2018-05-04 | 2019-05-31 | 360企业安全技术(珠海)有限公司 | 内核进程权限的确定方法及装置 |
CN109831420B (zh) * | 2018-05-04 | 2021-10-22 | 360企业安全技术(珠海)有限公司 | 内核进程权限的确定方法及装置 |
CN109299607A (zh) * | 2018-08-24 | 2019-02-01 | 珠海奔图电子有限公司 | 驱动程序安全检测方法、装置和图像形成系统 |
CN110457871A (zh) * | 2019-08-13 | 2019-11-15 | 杭州安恒信息技术股份有限公司 | 一种基于文件过滤驱动框架的守护进程方法和装置 |
WO2021164166A1 (zh) * | 2020-02-20 | 2021-08-26 | 苏州浪潮智能科技有限公司 | 一种业务数据保护方法、装置、设备及可读存储介质 |
CN113688415A (zh) * | 2021-10-27 | 2021-11-23 | 湖南新云网科技有限公司 | 文件管控方法、设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106650435A (zh) | 一种保护系统安全的方法及装置 | |
US10032033B2 (en) | Systems and methods for protecting backed-up data from ransomware attacks | |
US9246941B1 (en) | Systems and methods for predicting the impact of security-policy changes on users | |
US9870151B1 (en) | Backup time deduplication of common virtual disks from virtual machine backup images | |
US11513910B2 (en) | Compliance as a service for multi-cloud backup systems | |
US8984027B1 (en) | Systems and methods for migrating files to tiered storage systems | |
CN103765430A (zh) | 数据泄漏防止系统和方法 | |
US9405904B1 (en) | Systems and methods for providing security for synchronized files | |
US9182968B2 (en) | Software signature discovery | |
CN102150105A (zh) | 虚拟容器的部署和管理 | |
US10204021B2 (en) | Recovery of an infected and quarantined file in a primary storage controller from a secondary storage controller | |
CN106203073A (zh) | 一种基于文件系统过滤驱动的Windows白名单控制方法 | |
CN107657170B (zh) | 支持智能修复的可信加载启动控制系统和方法 | |
CN103443762B (zh) | 用于移动软件对象的方法和装置 | |
US8856081B1 (en) | Single retention policy | |
CN105205412A (zh) | 进程间通信拦截方法及装置 | |
US20160162365A1 (en) | Storing difference information in a backup system | |
US11151274B2 (en) | Enhanced computer objects security | |
GB2515736A (en) | Controlling access to one or more datasets of an operating system in use | |
KR20190096686A (ko) | 데이터파일 접근 제어 기반의 악성 차단 시스템 및 악성 차단 방법 | |
CN108183920A (zh) | 一种工业控制系统恶意代码防御系统及其防御方法 | |
US11288361B1 (en) | Systems and methods for restoring applications | |
CN103593612B (zh) | 一种处理恶意程序的方法及装置 | |
US10521307B1 (en) | Directory selective backups | |
US9280666B2 (en) | Method and electronic device for protecting data |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170510 |
|
RJ01 | Rejection of invention patent application after publication |