CN109800576B - 未知程序异常请求的监控方法、装置、及电子装置 - Google Patents

未知程序异常请求的监控方法、装置、及电子装置 Download PDF

Info

Publication number
CN109800576B
CN109800576B CN201811640731.7A CN201811640731A CN109800576B CN 109800576 B CN109800576 B CN 109800576B CN 201811640731 A CN201811640731 A CN 201811640731A CN 109800576 B CN109800576 B CN 109800576B
Authority
CN
China
Prior art keywords
request
target
target request
behavior
stack
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
CN201811640731.7A
Other languages
English (en)
Other versions
CN109800576A (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.)
Qax Technology Group Inc
Qianxin Safety Technology Zhuhai Co Ltd
Original Assignee
360 Enterprise Security Technology Zhuhai Co ltd
Beijing Qianxin 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 360 Enterprise Security Technology Zhuhai Co ltd, Beijing Qianxin Technology Co Ltd filed Critical 360 Enterprise Security Technology Zhuhai Co ltd
Priority to CN201811640731.7A priority Critical patent/CN109800576B/zh
Publication of CN109800576A publication Critical patent/CN109800576A/zh
Application granted granted Critical
Publication of CN109800576B publication Critical patent/CN109800576B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种未知程序异常请求的监控方法、装置、及电子装置,其中,该方法包括:利用文件系统的微过滤驱动在终端设备的驱动层监听是否接收到目标请求,其中,目标请求用于请求打开文件;在监听到目标请求的情况下,利用微过滤驱动根据请求的文件对象和文件对象对应的设备对象判断目标请求是否为未知程序请求对磁盘读写的行为;在目标请求不是未知程序请求对磁盘读写的行为的情况下,允许执行目标请求;在目标请求是未知程序请求对磁盘读写的行为的情况下,拦截目标请求。通过本发明,解决了相关技术中文件级别的监控方法无法防止恶意程序直接读写磁盘的问题。

Description

未知程序异常请求的监控方法、装置、及电子装置
技术领域
本发明涉及计算机安全防护领域,具体而言,涉及一种未知程序异常请求的监控方法、装置、及电子装置。
背景技术
随着互联网日益普及,人们越来越依赖计算机来处理各种事务,防护计算机的操作系统安全越来越重要。某些恶意程序可能会通过磁盘直接读写的方式,在系统中植入一些病毒代码,特别是针对系统起始扇区MBR(Master boot record)的操作,恶意程序更改此位置的内容,就能植入rootkit。对于这种恶意程序,文件级别的监控无法捕获,因为磁盘直接读写会跳过文件级别去读写。
针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。
发明内容
本发明实施例提供了一种未知程序异常请求的监控方法、装置、及电子装置。
根据本发明的一个实施例,提供了一种未知程序异常请求的监控方法,包括:利用文件系统的微过滤驱动在终端设备的驱动层监听是否接收到目标请求,其中,目标请求用于请求打开文件;在监听到目标请求的情况下,利用微过滤驱动根据请求的文件对象和文件对象对应的设备对象判断目标请求是否为未知程序请求对磁盘读写的行为;在目标请求不是未知程序请求对磁盘读写的行为的情况下,允许执行目标请求;在目标请求是未知程序请求对磁盘读写的行为的情况下,拦截目标请求。
进一步地,根据请求的文件对象和文件对象对应的设备对象判断目标请求是否为未知程序请求对磁盘读写的行为,包括:判断文件对象的文件名是否为空;判断设备对象是否存在;判断设备对象的设备名是否符合预设正则表达式;判断发起目标请求的进程是否符合预设进程的行为特征,其中,预设进程为允许执行磁盘读写行为的进程;其中,在判断结果满足以下条件的情况下,确定目标请求是未知程序请求对磁盘读写的行为:文件对象的文件名为空,且设备对象存在,且设备对象的设备名符合预设正则表达式,且发起目标请求的进程不符合预设进程的行为特征。
进一步地,判断发起目标请求的进程是否符合预设进程的行为特征,包括:对发送目标请求的进程进行内核栈回溯,得到进程的栈信息;将栈信息与预设栈特征进行匹配,判断是否匹配成功,其中,预设栈特征为预先收集的预设进程的栈特征。
进一步地,预设栈特征为操作系统的目标进程请求磁盘读写的栈行为链。
进一步地,预设栈特征为预设进程请求磁盘读写的栈行为链,将栈信息与预设栈特征进行匹配,包括:将栈信息分别与多个预设进程的栈行为链一一匹配,其中,在栈信息与任一栈行为链匹配成功的情况下,允许执行目标请求,在栈信息与多个栈行为链均匹配失败的情况下,拦截目标请求。
进一步地,在拦截目标请求之前,该方法还包括:获取目标请求的请求内容信息;将目标请求的请求内容信息发送至目标应用;通过目标应用在应用层判断是否拦截目标请求。
进一步地,通过目标应用在应用层判断是否拦截目标请求,包括:在目标应用的界面中显示目标请求的请求内容信息;通过目标应用的界面接收输入的选择操作;根据选择操作确定是否拦截目标请求。
进一步地,在利用微过滤驱动根据请求的文件对象和文件对象对应的设备对象判断目标请求是否为未知程序请求对磁盘读写的行为之前,该方法还包括:利用微过滤驱动判断目标应用是否已开启目标防护功能;其中,在目标应用未开启目标防护功能的情况下,允许执行目标请求;在目标应用已开启目标防护功能的情况下,利用微过滤驱动根据请求的文件对象和文件对象对应的设备对象判断目标请求是否为未知程序请求对磁盘读写的行为。
根据本发明的另一个实施例,提供了一种未知程序异常请求的监控装置,包括:监听模块,用于利用文件系统的微过滤驱动在终端设备的驱动层监听是否接收到目标请求,其中,目标请求用于请求打开文件;第一判断模块,用于在监听到目标请求的情况下,利用微过滤驱动根据请求的文件对象和文件对象对应的设备对象判断目标请求是否为未知程序请求对磁盘读写的行为;第一逻辑模块,用于在目标请求不是未知程序请求对磁盘读写的行为的情况下,允许执行目标请求;拦截模块,用于在目标请求是未知程序请求对磁盘读写的行为的情况下,拦截目标请求。
根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
根据上述任一实施例提供的技术方案,通过监听打开文件的请求,在驱动层利用一定的过滤规则判断目标请求是否为未知程序读写磁盘的请求,从而根据判断结果确定允许执行目标请求或拦截目标请求,解决了相关技术中文件级别的监控方法无法防止恶意程序直接读写磁盘的问题,能够实时监控磁盘直接读写的行为,防止恶意程序跳过文件级别直接读写磁盘,特别是针对系统起始扇区的操作,与操作系统的兼容性好,运行稳定,误报率低。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种计算机设备的硬件结构框图;
图2是根据本发明实施例的一种可选的打开文件的控制方法的流程图;
图3是根据本发明实施例的一种可选的打开文件的控制装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
实施例1
本申请实施例一所提供的方法实施例可以在移动终端、计算机设备、服务器或者类似的运算装置中执行。以运行在计算机设备上为例,图1是本发明实施例的一种计算机设备的硬件结构框图。如图1所示,计算机设备可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述计算机设备还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机设备的结构造成限定。例如,计算机设备还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的打开文件的控制方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机设备的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种打开文件的控制方法,图2是根据本发明实施例的打开文件的控制方法的流程图,如图2所示,该流程包括如下步骤:
步骤201,利用文件系统的微过滤驱动在终端设备的驱动层监听是否接收到目标请求,其中,目标请求用于请求打开文件;
步骤202,在监听到目标请求的情况下,利用微过滤驱动根据请求的文件对象和文件对象对应的设备对象判断目标请求是否为未知程序请求对磁盘读写的行为;
步骤203,在目标请求不是未知程序请求对磁盘读写的行为的情况下,允许执行目标请求;
步骤204,在目标请求是未知程序请求对磁盘读写的行为的情况下,拦截目标请求。
文件系统的微过滤驱动(minifilter)可以通过在过滤管理器中注册需要过滤的一些操作,然后提供指定格式的回调函数让过滤管理器调用。对于一种操作或请求等指令,minifilter可以注册一个“过滤前”和“过滤后”被调用的回调函数。
举例而言,对于Windows操作系统,可以在监测到操作系统中发生IRP_MJ_CREATE事件时,利用微过滤驱动中的回调函数执行过滤,判断文件对象和文件对象对应的设备对象是否符合预设条件。其中,IRP_MJ_CREATE事件用于请求打开文件。
需要说明的是,在文件对象和文件对象对应的设备对象符合一定条件的情况下,能够确定目标请求是用于请求在磁盘中直接读写。
具体的,在磁盘中直接读写时,是跳过文件级别读写的,需要逐步调用应用程序编程接口(API)函数,从应用层到驱动层,其中,在应用层会牵涉到几个模块,如发起请求的进程到操作系统的kernebase、ntdll、nt、fltmgr等模块,最后进入文件系统的过滤管理器。
对于磁盘直接读写,文件对象的文件名是空的,并且,能够确定文件对象对应的设备对象的设备名,且设备名满足一定的表达规则,例如,\\DEVICE\\HARDDISK0\\DR0,其中,HARDDISK后面的数字对应不同的物理磁盘。
相应的,为了对目标请求是否是未知程序请求磁盘读写的行为进行判断,执行如下的判断操作:
(1)判断文件对象的文件名是否为空;
(2)判断设备对象是否存在;
(3)判断设备对象的设备名是否符合预设正则表达式,例如:预设正则表达式为\\DEVICE\\HARDDISK?\\DR?,其中,符号“?”表示一个字符;
(4)判断发起目标请求的进程是否符合预设进程的行为特征,其中,预设进程为允许执行磁盘读写行为的进程;
其中,只有在判断结果满足以下条件的情况下,确定目标请求是未知程序请求对磁盘读写的行为:
文件对象的文件名为空,且设备对象存在,且设备对象的设备名符合预设正则表达式,且发起目标请求的进程不符合预设进程的行为特征。
上述判断(1)~(3)是用于判断目标请求是否请求对磁盘读写,不分执行顺序,在判断(1)~(3)的判断结果均为是的情况下,确定目标请求是请求磁盘读写行为。如果不是磁盘读写行为,则可以不用执行判断(4),直接放行目标请求。进一步地,如果是磁盘读写,还需要进一步对发起目标请求的进程进行识别,进一步判断发起目标请求的进程是否被允许执行磁盘读写行为,如果不是被允许磁盘读写行为的进程,则拦截目标请求,如果是被允许磁盘读写行为的进程,则允许目标请求。
或者,也可以是先执行判断(4),如果确定发起目标请求的进程符合预设进程的行为特征,则允许执行目标请求,如果不符合,再执行判断(1)~(3)。具体的判断逻辑流程可以根据实际情况设置,本发明实施例对判断逻辑流程不做具体限定。
需要执行判断(4)的原因是,一些非恶意程序也会进行磁盘读写,比如,Windows的程序svchost.exe,SecurityHealthService.exe,CompatTelRunner.exe,vds.exe,WaaSMedic.exe,MsMpEng.exe等,因此,需要在发起磁盘读写的请求的情况中排除掉是这些程序发送的情况。
但是,如果直接利用程序名或程序路径进行检测,可能会出现利用这些程序(如在动态库中注入这些合法的程序去磁盘直接读写)的情况。因此,可以采用回溯栈行为,通过栈行为特征匹配的方式识别发起请求的进程是否是被允许磁盘读写行为的进程。具体的,对发送目标请求的进程进行内核栈回溯,得到进程的栈信息,进而将栈信息与被允许执行磁盘读写行为的预设进程的预设栈特征进行匹配,其中,在匹配成功的情况下,确定目标请求符合预设进程的行为特征,在匹配失败的情况下,确定目标请求不符合预设进程的行为特征。
上述的预设栈特征是在预设进程的栈信息中提取出的特征,预设进程是被允许执行磁盘直接读写的程序,也即白名单程序,可选的,可以是操作系统中的一些进程,例如上述的Windows操作系统的进程svchost.exe,SecurityHealthService.exe,CompatTelRunner.exe,vds.exe,WaaSMedic.exe,MsMpEng.exe等。栈特征可以使进程请求磁盘读写的栈行为链。通过发起目标请求的进程的回溯栈信息与白名单程序请求磁盘读写的栈行为链进行比对,如果匹配成功,则确定发起目标请求的进程是白名单程序的进程,如果匹配不成功,则确定发起目标请求的程序不属于白名单程序。
可选的,可以预先收集多个白名单进程(预设进程)请求磁盘读写的栈行为链,并可以存储在栈特征库中,进而,可以将发送目标请求的进程内核栈回溯得到的栈信息分别与多个预设进程的栈行为链一一匹配,其中,在栈信息与任一栈行为链匹配成功的情况下,允许执行目标请求,在栈信息与多个栈行为链均匹配失败的情况下,拦截目标请求。
在一种可选的实施例中,如果利用微过滤驱动,根据请求的文件对象和文件对象对应的设备对象,判断出目标请求是未知程序请求对磁盘读写的行为,在拦截目标请求之前,还可以继续利用目标应用进行进一步的判断。
具体而言,在本可选的实施例中,在拦截目标请求之前,获取目标请求的请求内容信息(如发起请求的进程号、线程号,请求的文件路径等)并发送至目标应用,通过目标应用判断是否拦截目标请求。也即,通过目标应用在应用层再执行一次过滤,如果在驱动层判断出目标请求是磁盘读写行为,且不符合已知的非恶意进程的行为特征,可以在应用层进行进一步的判断。
在利用目标应用判断是否拦截目标请求时,可以由用户在目标应用的界面中设置是同步或异步过滤。如果是同步过滤,则需要用户的干预,将目标请求的相关信息(如进程号、线程号、文件路径等)等显示在界面中,由用户选择放行或拦截目标请求。可选的,如果在规定的时间之内用户没有操作,则执行默认的行为,默认行为可以预先设置,也可以由用户设置或修改。如果设置为异步过滤,则每次目标请求上传至目标应用的界面时,直接执行默认的行为,如放行或拦截,同时在界面中显示目标请求的相关信息,如进程号、线程号、磁盘设备名等。
本发明实施例提供的方法可以由终端设备上安装的软件执行,可选的,可以通过开启和关闭目标防护功能来控制是否利用微过滤驱动过滤打开文件的请求。具体的,在利用微过滤驱动根据请求的文件对象和文件对象对应的设备对象判断目标请求是否为未知程序请求对磁盘读写的行为之前,利用微过滤驱动判断目标应用是否已开启目标防护功能,如果在目标应用中未开启目标防护功能,允许执行目标请求,也即,直接放过目标请求,不对目标请求是否是未知程序请求对磁盘读写的行为进行判断,反之,如果在目标应用中,目标防护功能已被开启,则利用微过滤驱动根据请求的文件对象和文件对象对应的设备对象判断目标请求是否为未知程序请求对磁盘读写的行为。
需要说明的是,本发明实施例提供的方法需要部署在具有微过滤驱动的操作系统中,如win7或win10的x86或x64环境中。本发明实施例及可选的实施方式提供的打开文件的控制方法与操作系统的兼容性好,运行稳定,能够实时监控控制磁盘直接读写的行为,误报率低,交互性好,操作方便,并且还可以通过日志详细记录行为。
需要说明的是,虽然本发明实施例提供的打开文件的控制方法需要在内核驱动层的过滤,但是也可以导出应用层的接口,例如,可以在头文件中提供定义方式,相应的,客户端应用只需要通过接口调用本发明实施例提供的时间处理方法就可以实现无缝集成。
本发明实施例提供的打开文件的控制方法通过监听打开文件的请求,在驱动层利用一定的过滤规则判断目标请求是否为未知程序读写磁盘的请求,从而根据判断结果确定允许执行目标请求或拦截目标请求,解决了相关技术中文件级别的监控方法无法防止恶意程序直接读写磁盘的问题,能够实时监控磁盘直接读写的行为,防止恶意程序跳过文件级别直接读写磁盘,特别是针对系统起始扇区的操作,与操作系统的兼容性好,运行稳定,误报率低。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
在本实施例中还提供了一种打开文件的控制装置,该装置用于实现上述实施例及优选实施方式,包括客户端、服务器等,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本发明实施例的一种可选的打开文件的控制装置的结构框图,如图3所示,该装置包括:监听模块10,第一判断模块20,第一逻辑模块30和拦截模块40。
其中,监听模块用于利用文件系统的微过滤驱动在终端设备的驱动层监听是否接收到目标请求,其中,目标请求用于请求打开文件;第一判断模块用于在监听到目标请求的情况下,利用微过滤驱动根据请求的文件对象和文件对象对应的设备对象判断目标请求是否为未知程序请求对磁盘读写的行为;第一逻辑模块用于在目标请求不是未知程序请求对磁盘读写的行为的情况下,允许执行目标请求;拦截模块用于在目标请求是未知程序请求对磁盘读写的行为的情况下,拦截目标请求。
可选的,第一判断模块包括:第一判断单元,用于判断文件对象的文件名是否为空;第二判断单元,用于判断设备对象是否存在;第三判断单元,用于判断设备对象的设备名是否符合预设正则表达式;第四判断单元,用于判断发起目标请求的进程是否符合预设进程的行为特征,其中,预设进程为允许执行磁盘读写行为的进程;逻辑单元,用于在确定判断结果满足以下条件的情况下,确定目标请求是未知程序请求对磁盘读写的行为:文件对象的文件名为空,且设备对象存在,且设备对象的设备名符合预设正则表达式,且发起目标请求的进程不符合预设进程的行为特征。
可选的,第四判断单元包括:回溯单元,用于在拦截目标请求之前,对发送目标请求的进程进行内核栈回溯,得到进程的栈信息;匹配单元,用于将栈信息与预设栈特征进行匹配;第五判断单元,用于判断是否匹配成功,其中,预设栈特征为预先收集的预设进程的栈特征。
可选的,预设栈特征为操作系统的目标进程请求磁盘读写的栈行为链。
可选的,预设栈特征为预设进程请求磁盘读写的栈行为链,匹配单元还用于,将栈信息分别与多个预设进程的栈行为链一一匹配,其中,在栈信息与任一栈行为链匹配成功的情况下,允许执行目标请求,在栈信息与多个栈行为链均匹配失败的情况下,拦截目标请求。
可选的,该装置还包括:获取模块,用于获取目标请求的请求内容信息;发送模块,用于将目标请求的请求内容信息发送至目标应用;第二判断模块,用于通过目标应用在应用层判断是否拦截目标请求。
可选的,第二判断模块包括:显示单元,用于在目标应用的界面中显示目标请求的请求内容信息;接收单元,用于通过目标应用的界面接收输入的选择操作;确定单元,用于根据选择操作确定是否拦截目标请求。
可选的,该装置还包括:第三判断模块,用于在利用微过滤驱动根据请求的文件对象和文件对象对应的设备对象判断目标请求是否为未知程序请求对磁盘读写的行为之前,利用微过滤驱动判断目标应用是否已开启目标防护功能,其中,在目标应用未开启目标防护功能的情况下,允许执行目标请求;在目标应用已开启目标防护功能的情况下,利用微过滤驱动根据请求的文件对象和文件对象对应的设备对象判断目标请求是否为未知程序请求对磁盘读写的行为。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例3
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
实施例4
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (16)

1.一种未知程序异常请求的监控方法,其特征在于,包括:
利用文件系统的微过滤驱动在终端设备的驱动层监听是否接收到目标请求,其中,所述目标请求用于请求打开文件;
在监听到所述目标请求的情况下,利用所述微过滤驱动根据请求的文件对象和所述文件对象对应的设备对象判断所述目标请求是否为未知程序请求对磁盘读写的行为,包括:判断所述文件对象的文件名是否为空;判断所述设备对象是否存在;判断所述设备对象的设备名是否符合预设正则表达式;判断发起所述目标请求的进程是否符合预设进程的行为特征,其中,所述预设进程为允许执行磁盘读写行为的进程;其中,在判断结果满足以下条件的情况下,确定所述目标请求是未知程序请求对磁盘读写的行为:所述文件对象的文件名为空,且所述设备对象存在,且所述设备对象的设备名符合预设正则表达式,且发起所述目标请求的进程不符合所述预设进程的行为特征;
在所述目标请求不是未知程序请求对磁盘读写的行为的情况下,允许执行所述目标请求;
在所述目标请求是未知程序请求对磁盘读写的行为的情况下,拦截所述目标请求。
2.根据权利要求1所述的方法,其特征在于,所述判断发起所述目标请求的进程是否符合预设进程的行为特征,包括:
对发送所述目标请求的进程进行内核栈回溯,得到所述进程的栈信息;
将所述栈信息与预设栈特征进行匹配,判断是否匹配成功,其中,所述预设栈特征为预先收集的所述预设进程的栈特征。
3.根据权利要求2所述的方法,其特征在于,所述预设栈特征为操作系统的目标进程请求磁盘读写的栈行为链。
4.根据权利要求2所述的方法,其特征在于,所述预设栈特征为所述预设进程请求磁盘读写的栈行为链,所述将所述栈信息与预设栈特征进行匹配,包括:
将所述栈信息分别与多个所述预设进程的栈行为链一一匹配,其中,在所述栈信息与任一所述栈行为链匹配成功的情况下,允许执行所述目标请求,在所述栈信息与多个所述栈行为链均匹配失败的情况下,拦截所述目标请求。
5.根据权利要求1所述的方法,其特征在于,在拦截所述目标请求之前,所述方法还包括:
获取所述目标请求的请求内容信息;将所述目标请求的请求内容信息发送至目标应用;
通过所述目标应用在应用层判断是否拦截所述目标请求。
6.根据权利要求5所述的方法,其特征在于,所述通过所述目标应用在应用层判断是否拦截所述目标请求,包括:
在所述目标应用的界面中显示所述目标请求的请求内容信息;
通过所述目标应用的界面接收输入的选择操作;
根据所述选择操作确定是否拦截所述目标请求。
7.根据权利要求1所述的方法,其特征在于,在利用所述微过滤驱动根据请求的文件对象和所述文件对象对应的设备对象判断所述目标请求是否为未知程序请求对磁盘读写的行为之前,所述方法还包括:
利用所述微过滤驱动判断目标应用是否已开启目标防护功能;
其中,在所述目标应用未开启所述目标防护功能的情况下,允许执行所述目标请求;
在所述目标应用已开启所述目标防护功能的情况下,利用所述微过滤驱动根据请求的文件对象和所述文件对象对应的设备对象判断所述目标请求是否为未知程序请求对磁盘读写的行为。
8.一种未知程序异常请求的监控装置,其特征在于,所述装置包括:
监听模块,用于利用文件系统的微过滤驱动在终端设备的驱动层监听是否接收到目标请求,其中,所述目标请求用于请求打开文件;
第一判断模块,用于在监听到所述目标请求的情况下,利用所述微过滤驱动根据请求的文件对象和所述文件对象对应的设备对象判断所述目标请求是否为未知程序请求对磁盘读写的行为;
所述第一判断模块包括:
第一判断单元,用于判断所述文件对象的文件名是否为空;
第二判断单元,用于判断所述设备对象是否存在;
第三判断单元,用于判断所述设备对象的设备名是否符合预设正则表达式;
第四判断单元,用于判断发起所述目标请求的进程是否符合预设进程的行为特征,其中,所述预设进程为允许执行磁盘读写行为的进程;
逻辑单元,用于在确定判断结果满足以下条件的情况下,确定所述目标请求是未知程序请求对磁盘读写的行为:所述文件对象的文件名为空,且所述设备对象存在,且所述设备对象的设备名符合预设正则表达式,且发起所述目标请求的进程不符合所述预设进程的行为特征;
第一逻辑模块,用于在所述目标请求不是未知程序请求对磁盘读写的行为的情况下,允许执行所述目标请求;
拦截模块,用于在所述目标请求是未知程序请求对磁盘读写的行为的情况下,拦截所述目标请求。
9.根据权利要求8所述的装置,其特征在于,所述第四判断单元包括:
回溯单元,用于在拦截所述目标请求之前,对发送所述目标请求的进程进行内核栈回溯,得到所述进程的栈信息;
匹配单元,用于将所述栈信息与预设栈特征进行匹配;
第五判断单元,用于判断是否匹配成功,其中,所述预设栈特征为预先收集的所述预设进程的栈特征。
10.根据权利要求9所述的装置,其特征在于,所述预设栈特征为操作系统的目标进程请求磁盘读写的栈行为链。
11.根据权利要求9所述的装置,其特征在于,所述预设栈特征为所述预设进程请求磁盘读写的栈行为链,所述匹配单元还用于,将所述栈信息分别与多个所述预设进程的栈行为链一一匹配,其中,在所述栈信息与任一所述栈行为链匹配成功的情况下,允许执行所述目标请求,在所述栈信息与多个所述栈行为链均匹配失败的情况下,拦截所述目标请求。
12.根据权利要求8所述的装置,其特征在于,所述装置还包括:
获取模块,用于获取所述目标请求的请求内容信息;
发送模块,用于将所述目标请求的请求内容信息发送至目标应用;
第二判断模块,用于通过所述目标应用在应用层判断是否拦截所述目标请求。
13.根据权利要求12所述的装置,其特征在于,所述第二判断模块包括:
显示单元,用于在所述目标应用的界面中显示所述目标请求的请求内容信息;
接收单元,用于通过所述目标应用的界面接收输入的选择操作;
确定单元,用于根据所述选择操作确定是否拦截所述目标请求。
14.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第三判断模块,用于在利用所述微过滤驱动根据请求的文件对象和所述文件对象对应的设备对象判断所述目标请求是否为未知程序请求对磁盘读写的行为之前,利用所述微过滤驱动判断目标应用是否已开启目标防护功能,其中,在所述目标应用未开启所述目标防护功能的情况下,允许执行所述目标请求;在所述目标应用已开启所述目标防护功能的情况下,利用所述微过滤驱动根据请求的文件对象和所述文件对象对应的设备对象判断所述目标请求是否为未知程序请求对磁盘读写的行为。
15.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1至7任一项中所述的方法。
16.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7任一项中所述的方法。
CN201811640731.7A 2018-12-29 2018-12-29 未知程序异常请求的监控方法、装置、及电子装置 Active CN109800576B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811640731.7A CN109800576B (zh) 2018-12-29 2018-12-29 未知程序异常请求的监控方法、装置、及电子装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811640731.7A CN109800576B (zh) 2018-12-29 2018-12-29 未知程序异常请求的监控方法、装置、及电子装置

Publications (2)

Publication Number Publication Date
CN109800576A CN109800576A (zh) 2019-05-24
CN109800576B true CN109800576B (zh) 2021-07-23

Family

ID=66558231

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811640731.7A Active CN109800576B (zh) 2018-12-29 2018-12-29 未知程序异常请求的监控方法、装置、及电子装置

Country Status (1)

Country Link
CN (1) CN109800576B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110222508A (zh) * 2019-06-12 2019-09-10 深圳市网心科技有限公司 勒索病毒防御方法、电子设备、系统及介质
CN113518055B (zh) * 2020-04-09 2023-04-21 奇安信安全技术(珠海)有限公司 数据安全防护的处理方法及装置、存储介质、终端
CN112000950A (zh) * 2020-06-30 2020-11-27 深圳点猫科技有限公司 一种防拦截的程序运行与交互控制方法及装置
CN115221524B (zh) * 2022-09-20 2023-01-03 深圳市科力锐科技有限公司 业务数据保护方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103034799A (zh) * 2012-12-14 2013-04-10 南京中孚信息技术有限公司 一种内核级的桌面访问控制方法
CN103605930A (zh) * 2013-11-27 2014-02-26 湖北民族学院 一种基于hook和过滤驱动的双重文件防泄密方法及系统
CN106169047A (zh) * 2016-07-11 2016-11-30 北京金山安全软件有限公司 一种监控摄像头打开的方法、装置及电子设备
CN108846287A (zh) * 2018-06-26 2018-11-20 北京奇安信科技有限公司 一种检测漏洞攻击的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103034799A (zh) * 2012-12-14 2013-04-10 南京中孚信息技术有限公司 一种内核级的桌面访问控制方法
CN103605930A (zh) * 2013-11-27 2014-02-26 湖北民族学院 一种基于hook和过滤驱动的双重文件防泄密方法及系统
CN106169047A (zh) * 2016-07-11 2016-11-30 北京金山安全软件有限公司 一种监控摄像头打开的方法、装置及电子设备
CN108846287A (zh) * 2018-06-26 2018-11-20 北京奇安信科技有限公司 一种检测漏洞攻击的方法及装置

Also Published As

Publication number Publication date
CN109800576A (zh) 2019-05-24

Similar Documents

Publication Publication Date Title
CN109800576B (zh) 未知程序异常请求的监控方法、装置、及电子装置
US10565373B1 (en) Behavioral analysis of scripting utility usage in an enterprise
US9875353B2 (en) Log information generation apparatus and recording medium, and log information extraction apparatus and recording medium
US9336390B2 (en) Selective assessment of maliciousness of software code executed in the address space of a trusted process
AU2018229557A1 (en) Methods and apparatus for identifying and removing malicious applications
US11070570B2 (en) Methods and cloud-based systems for correlating malware detections by endpoint devices and servers
EP2650809B1 (en) Information processing device and information processing method
US20050216749A1 (en) Method and apparatus for detection of hostile software
DE112013005184T5 (de) Für einen Benutzer vertrauenswürdige Einheit zum Erkennen einer virtualisierten Umgebung
US10965680B2 (en) Authority management method and device in distributed environment, and server
CN109800571B (zh) 事件处理方法和装置、以及存储介质和电子装置
CN105335197A (zh) 终端中应用程序的启动控制方法和装置
CN114065196A (zh) Java内存马检测方法、装置、电子设备与存储介质
CN109800569A (zh) 程序鉴别方法及装置
CN109784041B (zh) 事件处理方法和装置、以及存储介质和电子装置
US20140298002A1 (en) Method and device for identifying a disk boot sector virus, and storage medium
CN110557395B (zh) 一种安全元件访问接口协议适配方法及装置
CN112506424A (zh) 视窗操作系统下基于内核的防止硬盘分区被删除的方法
CN115086081B (zh) 一种蜜罐防逃逸方法及系统
CN112182569A (zh) 一种文件识别方法、装置、设备及存储介质
KR20150102866A (ko) 클라우드 기반 악성코드 진단 장치, 시스템 및 방법
CN111865915B (zh) 一种用于访问服务器的ip控制方法及系统
CN110532798B (zh) 一种文件强制访问控制方法和装置
EP2650784A1 (en) Client control method and client control system
CN113836529A (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
CP01 Change in the name or title of a patent holder

Address after: 519085 No. 501, 601, building 14, kechuangyuan, Gangwan No. 1, Jintang Road, Tangjiawan Town, high tech Zone, Zhuhai City, Guangdong Province

Patentee after: Qianxin Safety Technology (Zhuhai) Co.,Ltd.

Patentee after: QAX Technology Group Inc.

Address before: 519085 No. 501, 601, building 14, kechuangyuan, Gangwan No. 1, Jintang Road, Tangjiawan Town, high tech Zone, Zhuhai City, Guangdong Province

Patentee before: 360 ENTERPRISE SECURITY TECHNOLOGY (ZHUHAI) Co.,Ltd.

Patentee before: BEIJING QIANXIN TECHNOLOGY Co.,Ltd.

CP01 Change in the name or title of a patent holder