文件监控处理方法、装置及电子设备的制造方法
【专利摘要】本发明公开一种文件监控处理方法、装置及电子设备,能够解决现有技术中驱动程序需要多次将文件信息发送至应用程序而影响系统运行效率的问题。所述方法包括:监控文件的打开操作;当监控到文件打开时,判断该文件是否为可执行文件;若为可执行文件,则根据所述文件的文件消息摘要判断所述文件是否发生变更,若发生变更,则将所述文件的文件信息发送至应用程序模块。本发明适用于对文件的打开操作进行监控处理。
【专利说明】
文件监控处理方法、装置及电子设备
技术领域
[0001]本发明涉及系统安全技术领域,尤其涉及一种文件监控处理方法、装置及电子设备。【背景技术】
[0002]随着互联网技术的发展,病毒、木马等恶意程序技术层出不穷,杀毒安全软件应对的问题也越来越多。在电子设备系统中,每时每刻都有文件读写等文件操作行为,包括恶意程序的文件操作、用户软件的文件操作等,这些操作行为都需要受到杀毒安全软件的监控, 判断是否为恶意行为,并做对应的拦截或放行。据不完全统计,系统中每一秒钟文件读写操作行为就会有1万次左右,这1万次都受到杀毒安全软件的文件监控处理。
[0003]目前,在现有的文件监控系统中,杀毒安全软件包括驱动程序与应用程序,驱动程序主要负责文件监控,应用程序主要负责逻辑判断和界面展示,驱动程序实现文件的打开监控,即可以实现对文件的各种行为监控。具体的文件监控处理流程为:绑定系统的文件系统设备驱动,然后分发IRP_MJ_CREATE例程函数,定义例程函数的为IrpCreate,每当系统中任意文件被任意程序打开的时候,都会经由IrpCreate例程函数处理,拦截或放行只需要在 IrpCreate函数中处理即可,在函数中可获取打开的文件路径,把文件路径等文件信息上抛到杀毒应用程序,由应用程序负责判断文件状态等逻辑,然后应用程序确定好文件状态后, 把信息返回给驱动程序,由驱动程序处理是拦截或放行。如果拦截,则在IrpCreate函数中, 调用1CompleteRequest函数完成IrpCreate函数例程,并返回给windows文件系统;这样 windows文件系统得知文件打开处理已完成,就不会往磁盘驱动真正打开文件;这样打开文件操作就会中止。如果放行,贝函数中,不做任何处理,返回给windows文件系统,由文件系统通知磁盘驱动打开文件。
[0004]以上是对一个文件的一次打开请求所进行的文件监控处理,如果单位时间内有多次文件读写操作行为,则驱动程序需要多次将文件信息发送至应用程序,从而影响系统的运行效率,甚至会造成系统卡慢。
【发明内容】
[0005]有鉴于此,本发明实施例提供一种文件监控处理方法、装置及电子设备,能够根据文件类型及路径决定是否将文件信息发送至应用程序,从而降低向应用程序发送数据的频率,提高系统的运行效率,提升系统性能。
[0006]第一方面,本发明实施例提供一种文件监控处理方法,所述方法应用于驱动程序模块,所述方法包括:
[0007]监控文件的打开操作;
[0008]当监控到文件打开时,判断所述文件是否为可执行文件;
[0009]若所述文件为可执行文件,则根据所述文件的文件消息摘要判断所述文件是否发生变更,若发生变更,则将所述文件的文件信息发送至应用程序模块。
[0010]结合第一方面,在第一方面的第一种实施方式中,所述根据所述文件的文件消息摘要判断所述文件是否发生变更包括:
[0011]获取所述文件的文件路径和文件内容;
[0012]在文件信息链表中查找所述文件路径,其中,所述文件信息链表中保存有文件路径与文件消息摘要的对应关系;
[0013]当查找到所述文件路径时,根据所述文件内容计算所述文件的文件消息摘要;
[0014]将计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要进行比较,若二者不一致,则确定所述文件发生变更,否则确定所述文件未发生变更。
[0015]结合第一方面,在第一方面的第二种实施方式中,所述方法还包括:
[0016]若所述文件为非可执行文件,则不将所述文件的文件信息发送至应用程序模块。
[0017]结合第一方面的第一种实施方式,在第一方面的第三种实施方式中,所述方法还包括:
[0018]当没有查找到所述文件路径时,根据所述文件内容计算所述文件的文件消息摘要,并将所述文件路径以及所述文件的文件消息摘要的对应关系保存至所述文件信息链表中;
[0019]将所述文件的文件信息发送至应用程序模块。
[0020]结合第一方面的第一种实施方式,在第一方面的第四种实施方式中,所述方法还包括:
[0021]若计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要不一致,则不将所述文件的文件信息发送至应用程序模块。
[0022]结合第一方面的第一种实施方式,在第一方面的第五种实施方式中,所述方法还包括:
[0023]当计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要不一致时,将所述文件信息链表中保存的与所述文件路径对应的文件消息摘要修改为所述计算得到的文件消息摘要。
[0024]第二方面,本发明实施例提供一种文件监控处理装置,所述装置位于驱动程序模块,所述装置包括:
[0025]监控单元,用于监控文件的打开操作;
[0026]第一判断单元,用于当所述监控单元监控到文件打开时,判断所述文件是否为可执行文件;
[0027]第二判断单元,用于当所述第一判断单元判断所述文件为可执行文件时,根据所述文件的文件消息摘要判断所述文件是否发生变更;
[0028]第一处理单元,用于当所述第二判断单元判断所述文件发生变更时,将所述文件的文件信息发送至应用程序模块。
[0029]结合第二方面,在第二方面的第一种实施方式中,所述第二判断单元包括:
[0030]获取子单元,用于获取所述文件的文件路径和文件内容;
[0031]查找子单元,用于在文件信息链表中查找所述获取子单元获取到的所述文件路径,其中,所述文件信息链表中保存有文件路径与文件消息摘要的对应关系;
[0032]计算子单元,用于当所述查找子单元查找到所述文件路径时,根据所述获取子单元获取到的所述文件内容计算所述文件的文件消息摘要;
[0033]判断子单元,用于将所述计算子单元计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要进行比较,若二者不一致,则确定所述文件发生变更,否则确定所述文件未发生变更。
[0034]结合第二方面,在第二方面的第二种实施方式中,所述装置还包括:
[0035]第二处理单元,用于当所述第一判断单元判断所述文件为非可执行文件时,不将所述文件的文件信息发送至应用程序模块。
[0036]结合第二方面的第一种实施方式,在第二方面的第三种实施方式中,所述计算子单元,还用于当所述查找子单元没有查找到所述文件路径时,根据所述获取子单元获取到的所述文件内容计算所述文件的文件消息摘要;[〇〇37] 则所述装置还包括:
[0038]保存单元,用于将所述文件路径以及所述文件的文件消息摘要的对应关系保存至所述文件信息链表中;[〇〇39]则所述第一处理单元,还用于将所述文件的文件信息发送至应用程序模块。[〇〇4〇]结合第二方面的第一种实施方式,在第二方面的第四种实施方式中,所述第二处理单元,还用于当计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要一致时,不将所述文件的文件信息发送至应用程序模块。
[0041]结合第二方面的第一种实施方式,在第二方面的第五种实施方式中,所述装置还包括:
[0042]修改单元,用于当计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要不一致时,将所述文件信息链表中保存的与所述文件路径对应的文件消息摘要修改为所述计算得到的文件消息摘要。[0〇43]第三方面,本发明实施例提供一种电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一所述的文件监控处理方法。
[0044]本发明实施例提供的一种文件监控处理方法、装置及电子设备,当监控到文件打开且所述文件为可执行文件时,根据所述文件的文件消息摘要判断所述文件是否发生变更,若发生变更,则将所述文件的文件信息发送至应用程序模块。与现有技术相比,本发明能够根据文件的文件消息摘要决定是否将所述文件的文件信息发送至应用程序,而不需要将所有文件的文件信息发送至应用程序,从而可以降低向应用程序发送数据的频率,提高系统的运行效率,提升系统性能。【附图说明】
[0045]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0046]图1为本发明文件监控处理方法实施例一的流程图;[〇〇47]图2为本发明文件监控处理方法实施例二的流程图;[〇〇48]图3为本发明文件监控处理装置实施例一的结构示意图;
[0049]图4为本发明文件监控处理装置实施例二的结构示意图;
[0050]图5为本发明电子设备实施例的结构示意图。【具体实施方式】
[0051]下面结合附图对本发明实施例进行详细描述。
[0052]应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。[〇〇53]图1为本发明文件监控处理方法实施例一的流程图,所述方法应用于驱动程序模块,如图1所示,本实施例的方法可以包括:[〇〇54]步骤101、监控文件的打开操作。
[0055]本实施例中,驱动程序在对文件进行文件读、文件写、文件设置等操作时,都会首先打开文件,因此,驱动程序可以通过监控文件的打开操作,实现对文件的各种行为监控。
[0056]步骤102、当监控到文件打开时,判断所述文件是否为可执行文件。
[0057]本实施例中,可以根据所述文件的文件头判断所述文件是否为可执行文件。其中, 文件头是一个MAGE_DOS_HEADER结构,有一个e_magic字段保存有可执行文件标识,如果该 ejnagic字段的值为‘MZ’,说明该文件为可执行文件,否则说明该文件为非可执行文件。
[0058]步骤103、若所述文件为可执行文件,则根据所述文件的文件消息摘要判断所述文件是否发生变更,若发生变更,则将所述文件的文件信息发送至应用程序模块。
[0059]本实施例中,当根据所述文件的文件消息摘要判断所述文件发生变更时,此次文件打开行为的文件信息可以上抛,即可以将该文件的文件信息发送至应用程序模块。
[0060]本实施例,当监控到文件打开且所述文件为可执行文件时,根据所述文件的文件消息摘要判断所述文件是否发生变更,若发生变更,则将所述文件的文件信息发送至应用程序模块。与现有技术相比,本发明能够根据文件的文件消息摘要决定是否将所述文件的文件信息发送至应用程序,而不需要将所有文件的文件信息发送至应用程序,从而可以降低向应用程序发送数据的频率,提高系统的运行效率,提升系统性能。
[0061]图2为本发明文件监控处理方法实施例二的流程图,所述方法应用于驱动程序模块,如图2所示,本实施例的方法可以包括:[〇〇62]步骤201、监控文件的打开操作。
[0063]本实施例中,监控文件的打开操作的过程和上述方法实施例的步骤101类似,此处不再赘述。[〇〇64]步骤202、当监控到文件打开时,判断所述文件是否为可执行文件。
[0065]本实施例中,判断所述文件是否为可执行文件的过程和上述方法实施例的步骤 102类似,此处不再赘述。
[0066]若所述文件为可执行文件,则进入步骤203;若所述文件为非可执行文件,则进入步骤210。[〇〇67]步骤203、获取所述文件的文件路径和文件内容。
[0068]本实施例中,可以获取所述可执行文件的文件路径,进而根据所述文件路径读取所述文件的文件内容。
[0069]步骤204、在文件信息链表中查找所述文件路径,其中,所述文件信息链表中保存有文件路径与文件消息摘要的对应关系。
[0070]本实施例中,在文件信息链表中,文件路径与文件消息摘要一一对应,文件路径和文件消息摘要可以作为一个节点保存在所述文件信息链表中。若查找到所述文件路径,则进入步骤205;若没有查找到所述文件路径,则进入步骤209。
[0071]步骤205、根据所述文件内容计算所述文件的文件消息摘要。
[0072]本实施例中,根据步骤203获取到的文件内容计算该文件的文件信息摘要,例如 MD5 值。
[0073]步骤206、将计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要进行比较。[〇〇74] 若二者不一致,则进入步骤207和步骤208;若二者一致,则进入步骤210。[〇〇75]步骤207、将所述文件的文件信息发送至应用程序模块。[〇〇76]本实施例中,当计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要不一致时,说明该文件已经发生更改,此次文件打开行为的文件信息可以上抛,即可以将该文件的文件信息发送至应用程序模块。
[0077]步骤208、将所述文件信息链表中保存的与所述文件路径对应的文件消息摘要修改为所述计算得到的文件消息摘要。[〇〇78]本实施例中,由于该文件已经发生更改,该文件的文件信息摘要也随之发生变化, 因此,需要对文件信息链表中保存的与文件路径对应的文件信息摘要进行更新,以便下次对该文件进行监控处理时,所述文件信息链表中保存的与文件路径对应的文件信息摘要为最新的文件信息摘要,保证监控处理结果的准确性。
[0079]步骤209、根据所述文件内容计算所述文件的文件消息摘要,并将所述文件路径以及所述文件的文件消息摘要的对应关系保存至所述文件信息链表中,以及将所述文件的文件信息发送至应用程序模块。
[0080]本实施例中,由于所述文件信息链表中没有所述文件路径,为了保证下次对该文件的监控处理结果的准确性,需要将计算出的所述文件的文件消息摘要首次保存在所述文件信息链表中,以便下次对该文件进行监控处理时使用。
[0081]步骤210、不将所述文件的文件信息发送至应用程序模块。
[0082]本实施例中,当该文件为非可执行文件,由于非可执行文件是一些数据文件,即使木马病毒等恶意程序读写非可执行文件,也不会造成用户系统的破坏,因此,不需要将所述文件的文件信息发送至应用程序模块;当计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要一致时,说明该文件未发生更改,由于一个可执行文件在未发生任何更改时,驱动程序已经将所述文件的文件信息发送至应用程序模块,被应用程序模块查询过一次文件状态了,因此,不需要将相同的文件的文件信息再发送至应用程序模块了。
[0083]本实施例,通过判断监控到的文件是否为可执行文件,以及当监控到的文件为可执行文件时,查找文件信息链表中是否有该文件的文件路径,且当有该文件的文件路径时, 将计算得到的所述文件的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要进行比较,只有当监控到的文件为可执行文件且文件信息链表中没有该文件的文件路径,或者当监控到的文件为可执行文件且文件信息链表中有该文件的文件路径且计算得到的所述文件的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要不一致时,才将所述文件的文件信息发送至应用程序模块。与现有技术相比,本发明能够根据文件类型及路径决定是否将文件的文件信息发送至应用程序,而不需要将所有文件的文件信息发送至应用程序,从而可以降低向应用程序发送数据的频率,提高系统的运行效率,提升系统性能。
[0084]图3为本发明文件监控处理装置实施例一的结构示意图,所述装置位于驱动程序模块,如图3所示,本实施例的装置可以包括:监控单元11、第一判断单元12、第二判断单元 13和第一处理单元14,其中,监控单元11,用于监控文件的打开操作;第一判断单元12,用于当所述监控单元11监控到文件打开时,判断所述文件是否为可执行文件;第二判断单元13, 用于当所述第一判断单元12判断所述文件为可执行文件时,根据所述文件的文件消息摘要判断所述文件是否发生变更;第一处理单元14,用于当所述第二判断单元13判断所述文件发生变更时,将所述文件的文件信息发送至应用程序模块。
[0085]本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。[〇〇86]图4为本发明文件监控处理装置实施例二的结构示意图,如图4所示,本实施例的装置在图3所示装置结构的基础上,进一步地,所述第二判断单元13包括:
[0087]获取子单元130,用于获取文件的文件路径和文件内容;
[0088]查找子单元131,用于在文件信息链表中查找获取子单元130获取到的所述文件路径,其中,所述文件信息链表中保存有文件路径与文件消息摘要的对应关系;
[0089]计算子单元132,用于当所述查找子单元132查找到所述文件路径时,根据获取子单元130获取到的所述文件内容计算所述文件的文件消息摘要;
[0090]判断子单元133,用于将计算子单元132计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要进行比较,若二者不一致,则确定所述文件发生变更,否则确定所述文件未发生变更。
[0091]所述装置还包括:第二处理单元15,用于当所述第一判断单元12判断所述文件为非可执行文件时,不将所示文件的文件信息发送至应用程序模块。
[0092]所述计算子单元132,还用于当所述查找子单元132没有查找到所述文件路径时, 根据获取子单元130获取到的所述文件内容计算所述文件的文件消息摘要;则所述装置还包括:保存单元16,用于将所述文件路径以及所述文件的文件消息摘要的对应关系保存至所述文件信息链表中;则所述第一处理单元14,还用于将所述文件的文件信息发送至应用程序模块。[〇〇93]所述第二处理单元15,还用于当计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要一致时,不将所述文件的文件信息发送至应用程序模块。
[0094]所述装置还包括:修改单元17,用于当计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文件消息摘要不一致时,将所述文件信息链表中保存的与所述文件路径对应的文件消息摘要修改为所述计算得到的文件消息摘要。
[0095]本实施例的装置,可以用于执行图1或图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。[〇〇96]需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0097]本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。[〇〇98]尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0099]在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,〃计算机可读介质〃可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器 (ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDR0M)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0100]应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。
[0101]在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
[0102]本发明实施例还提供一种电子设备,所述电子设备包含前述前述任一实施例所述的装置。
[0103]图5为本发明电子设备实施例的结构示意图,可以实现本发明图1或图2所示实施例的流程,如图5所示,上述电子设备可以包括:壳体31、处理器32、存储器33、电路板34和电源电路35,其中,电路板34安置在壳体31围成的空间内部,处理器32和存储器33设置在电路板34上;电源电路35,用于为上述电子设备的各个电路或器件供电;存储器33用于存储可执行程序代码;处理器32通过读取存储器33中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一所述的文件监控处理方法。[〇1〇4] 处理器32对上述步骤的具体执行过程以及处理器32通过运行可执行程序代码来进一步执行的步骤,可以参见本发明图1或图2所示实施例的描述,在此不再赘述。
[0105]该电子设备以多种形式存在,包括但不限于:
[0106](1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
[0107](2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
[0108](3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、 视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
[0109](4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
[0110](5)其他具有数据交互功能的电子设备。
[0111]本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0112]为了描述的方便,描述以上装置是以功能分为各种单元/模块分别描述。当然,在实施本发明时可以把各单元/模块的功能在同一个或多个软件和/或硬件中实现。
[0113]通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备 (可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
【主权项】
1.一种文件监控处理方法,其特征在于,所述方法应用于驱动程序模块,所述方法包 括:监控文件的打开操作;当监控到文件打开时,判断所述文件是否为可执行文件;若所述文件为可执行文件,则根据所述文件的文件消息摘要判断所述文件是否发生变 更,若发生变更,则将所述文件的文件信息发送至应用程序模块。2.根据权利要求1所述的文件监控处理方法,其特征在于,所述根据所述文件的文件消 息摘要判断所述文件是否发生变更包括:获取所述文件的文件路径和文件内容;在文件信息链表中查找所述文件路径,其中,所述文件信息链表中保存有文件路径与 文件消息摘要的对应关系;当查找到所述文件路径时,根据所述文件内容计算所述文件的文件消息摘要;将计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文 件消息摘要进行比较,若二者不一致,则确定所述文件发生变更,否则确定所述文件未发生变更。3.根据权利要求1或2所述的文件监控处理方法,其特征在于,所述方法还包括:若所述文件为非可执行文件,则不将所述文件的文件信息发送至应用程序模块。4.根据权利要求2所述的文件监控处理方法,其特征在于,所述方法还包括:当没有查找到所述文件路径时,根据所述文件内容计算所述文件的文件消息摘要,并 将所述文件路径以及所述文件的文件消息摘要的对应关系保存至所述文件信息链表中;将所述文件的文件信息发送至应用程序模块。5.根据权利要求2所述的文件监控处理方法,其特征在于,所述方法还包括:若计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文 件消息摘要一致,则不将所述文件的文件信息发送至应用程序模块。6.根据权利要求2所述的文件监控处理方法,其特征在于,所述方法还包括:当计算得到的文件消息摘要与所述文件信息链表中保存的与所述文件路径对应的文 件消息摘要不一致时,将所述文件信息链表中保存的与所述文件路径对应的文件消息摘要 修改为所述计算得到的文件消息摘要。7.—种文件监控处理装置,其特征在于,所述装置位于驱动程序模块,所述装置包括:监控单元,用于监控文件的打开操作;第一判断单元,用于当所述监控单元监控到文件打开时,判断所述文件是否为可执行 文件;第二判断单元,用于当所述第一判断单元判断所述文件为可执行文件时,根据所述文 件的文件消息摘要判断所述文件是否发生变更;第一处理单元,用于当所述第二判断单元判断所述文件发生变更时,将所述文件的文 件信息发送至应用程序模块。8.根据权利要求7所述的文件监控处理装置,其特征在于,所述第二判断单元包括:获取子单元,用于获取所述文件的文件路径和文件内容;查找子单元,用于在文件信息链表中查找所述获取子单元获取到的所述文件路径,其中,所述文件信息链表中保存有文件路径与文件消息摘要的对应关系;计算子单元,用于当所述查找子单元查找到所述文件路径时,根据所述获取子单元获 取到的所述文件内容计算所述文件的文件消息摘要;判断子单元,用于将所述计算子单元计算得到的文件消息摘要与所述文件信息链表中 保存的与所述文件路径对应的文件消息摘要进行比较,若二者不一致,则确定所述文件发 生变更,否则确定所述文件未发生变更。9.根据权利要求7或8所述的文件监控处理装置,其特征在于,所述装置还包括:第二处理单元,用于当所述第一判断单元判断所述文件为非可执行文件时,不将所述文件的文件信息发送至应用程序模块。10.—种电子设备,其特征在于,所述电子设备包括:壳体、处理器、存储器、电路板和电 源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源 电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理 器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执 行前述任一权利要求1-6所述的文件监控处理方法。
【文档编号】G06F21/56GK106022120SQ201610349176
【公开日】2016年10月12日
【申请日】2016年5月24日
【发明人】李文靖
【申请人】北京金山安全软件有限公司