一种文件格式检测的方法、装置、电子设备及介质与流程

文档序号:32783211发布日期:2022-12-31 17:21阅读:63来源:国知局
一种文件格式检测的方法、装置、电子设备及介质与流程

1.本技术实施例涉及网络安全检测领域,具体涉及一种文件格式检测的方法、装置、电子设备及介质。


背景技术:

2.ooxml格式文件作为zip格式文件下的子类文件,在计算机交互的过程中使用较为频繁。但由于网络安全设备对这两种格式文件的检测策略不同,因此准确的区分当前zip格式文件是否为ooxml格式文件显得尤其重要。相关技术中,使用文件路径中的字段(例如,“\word”、“\xl”和“\ppt”)来区分两个文件类型,导致文件类型识别不准确。
3.因此,如何准确的判断待识别文件是否为ooxml格式文件成为需要解决的问题。


技术实现要素:

4.本技术实施例提供一种文件格式检测的方法、装置、电子设备及介质,通过本技术的一些实施例至少能够通过解析目标路径所对应的文件,进一步准确的区分zip格式文件下的ooxml格式文件。
5.第一方面,本技术提供了一种文件格式检测的方法,所述方法包括:获取待识别文件,其中,所述待识别文件为数据压缩zip格式文件;确认所述待识别文件中存在目标路径,解析所述目标路径所对应的文件获得解析结果;根据所述解析结果确认所述待识别文件是否为所述zip格式文件下的ooxml格式文件。
6.因此,与相关技术中使用文件路径中的字段(例如,“\word”、“\xl”和“\ppt”)来区分两个文件类型不同的是,本技术对待识别文件中存在的目标路径进行解析,并且通过解析结果判断待识别文件是否为ooxml格式文件,从而能够准确的区分zip格式文件下的ooxml格式文件,避免由于格式识别错误而影响后续操作。
7.结合第一方面,在本技术的一种实施方式中,所述目标路径包括第一路径和第二路径;所述解析所述目标路径所对应的文件获得解析结果,包括:解析所述第一路径对应的文件获得第一解析文件;从所述第一解析文件中获得目标字段所对应的路径,并且基于所述目标字段所对应的路径查找主文件;解析所述第二路径对应的文件获得第二解析文件;从所述第二解析文件中获得所述主文件的数据类型,并且将所述数据类型作为所述解析结果。
8.因此,本技术通过对第一路径和第二路径进行解析,能够分析待识别文件中内部的主文件,从而能够准确的区分zip格式文件下的ooxml格式文件。
9.结合第一方面,在本技术的一种实施方式中,所述根据所述解析结果确认所述待识别文件是否为所述zip格式文件下的ooxml格式文件,包括:确认所述数据类型与实际的文件格式之间存在预设的映射关系,则确认所述待识别文件为所述ooxml格式文件。
10.因此,本技术通过数据类型与ooxml实际的文件格式之间的预设的映射关系,能够通过ooxml格式文件中内部的特征,来对待识别文件的文件格式进行判断。
11.结合第一方面,在本技术的一种实施方式中,在确认所述待识别文件为所述ooxml格式文件之后,所述方法还包括:基于所述预设的映射关系确定所述待识别文件的所述实际的文件格式。
12.因此,本技术通过预设的映射关系,能够准确的识别到待识别文件的实际的文件格式,从而能够有利于对于该待识别文件的后续操作。
13.结合第一方面,在本技术的一种实施方式中,所述根据所述解析结果确认所述待识别文件是否为所述zip格式文件下的ooxml格式文件,包括:确认所述数据类型与实际的文件格式之间不存在预设的映射关系,则判断所述待识别文件不是所述ooxml格式文件。
14.结合第一方面,在本技术的一种实施方式中,在所述根据所述解析结果确认所述待识别文件是否为所述zip格式文件下的ooxml格式文件之后,所述方法还包括:查找与所述待识别文件的文件格式相对应的文件检测策略。
15.因此,本技术通过准确的识别待识别文件的文件格式,能够准确的使用相对应的检测规则对各文件进行检测,提高了检测准确率。
16.结合第一方面,在本技术的一种实施方式中,所述第一路径为\_rels\.rels;所述第二路径为\[content_types].xml。
[0017]
结合第一方面,在本技术的一种实施方式中,所述根据所述解析结果确认所述待识别文件是否为所述zip格式文件下的ooxml格式文件,包括:确认不存在所述解析结果,则判断所述待识别文件不是所述ooxml格式文件。
[0018]
结合第一方面,在本技术的一种实施方式中,在所述解析所述第二路径对应的文件获得第二解析文件之后,所述方法还包括:若从所述第二解析文件中没有获得所述主文件的数据类型,则判断所述待识别文件不是所述ooxml格式文件。
[0019]
因此,本技术通过解析结果能够准确的将zip格式文件和ooxml格式文件进行区分。
[0020]
第二方面,本技术提供了一种文件格式检测的装置,所述装置包括:文件获取模块,被配置为获取待识别文件,其中,所述待识别文件为数据压缩zip格式文件;路径解析模块,被配置为确认所述待识别文件中存在目标路径,解析所述目标路径所对应的文件获得解析结果;格式判断模块,被配置为根据所述解析结果确认所述待识别文件是否为所述zip格式文件下的ooxml格式文件。
[0021]
结合第二方面,在本技术的一种实施方式中,所述目标路径包括第一路径和第二路径;所述路径解析模块还被配置为:解析所述第一路径对应的文件获得第一解析文件;从所述第一解析文件中获得目标字段所对应的路径,并且基于所述目标字段所对应的路径查找主文件;解析所述第二路径对应的文件获得第二解析文件;从所述第二解析文件中获得所述主文件的数据类型,并且将所述数据类型作为所述解析结果。
[0022]
结合第二方面,在本技术的一种实施方式中,所述格式判断模块还被配置为:确认所述数据类型与实际的文件格式之间存在预设的映射关系,则确认所述待识别文件为所述ooxml格式文件。
[0023]
结合第二方面,在本技术的一种实施方式中,所述格式判断模块还被配置为:基于所述预设的映射关系确定所述待识别文件的所述实际的文件格式。
[0024]
结合第二方面,在本技术的一种实施方式中,所述格式判断模块还被配置为:确认
所述数据类型与实际的文件格式之间不存在预设的映射关系,则判断所述待识别文件不是所述ooxml格式文件。
[0025]
结合第二方面,在本技术的一种实施方式中,所述格式判断模块还被配置为:查找与所述待识别文件的文件格式相对应的文件检测策略。
[0026]
结合第二方面,在本技术的一种实施方式中,所述第一路径为\_rels\.rels;所述第二路径为\[content_types].xml。
[0027]
结合第二方面,在本技术的一种实施方式中,所述格式判断模块还被配置为:确认不存在所述解析结果,则判断所述待识别文件不是所述ooxml格式文件。
[0028]
结合第二方面,在本技术的一种实施方式中,所述路径解析模块还被配置为:若从所述第二解析文件中没有获得所述主文件的数据类型,则判断所述待识别文件不是所述ooxml格式文件。
[0029]
第三方面,本技术提供了一种电子设备,包括:处理器、存储器和总线;所述处理器通过所述总线与所述存储器相连,所述存储器存储有计算机程序,所述计算机程序由所述处理器执行时可实现如第一方面任意实施例所述的方法。
[0030]
第四方面,本技术提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被执行时可实现如第一方面任意实施例所述的方法。
附图说明
[0031]
图1为本技术实施例示出的文件格式检测的系统组成示意图;图2为本技术实施例示出的文件格式检测的方法流程图之一;图3为本技术实施例示出的文件格式检测的方法流程图之二;图4为本技术实施例示出的文件格式检测的装置组成示意图;图5为本技术实施例示出的一种电子设备组成示意图。
具体实施方式
[0032]
为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中附图,对本技术实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本技术的一部分实施例,而不是全部实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对附图中提供的本技术的实施例的详情描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护范围。
[0033]
本技术实施例可以应用于在安全检测之前对获取的待识别文件的文件格式进行检测的场景,为了改善背景技术中的问题,在本技术的一些实施例中,通过解析zip格式文件中的目标路径,来进一步的判断该zip格式文件是否为ooxml格式文件。例如:在本技术的一些实施例中,网关设备被配置为:首先,确认zip格式文件中存在第一路径和第二路径,并且解析第一路径和第二路径获得解析结果,然后,根据解析结果确认zip格式文件是否进一步为ooxml格式文件。
[0034]
下面结合附图详细描述本技术实施例中的方法步骤。
[0035]
图1提供了本技术一些实施例中的文件格式检测的系统组成示意图,该系统包括客户端110和网关设备120。具体的,客户端110在向外发送待识别文件的过程中,需要通过网关设备120来对待识别文件进行安全检测。也就是说,网关设备120在获取待识别文件之后,对待识别文件的文件格式进行识别,根据识别到的文件格式类型选择相对应的安全检测策略,并且使用安全检测策略对待识别文件进行安全检测。
[0036]
ooxml全称为office open xml,是一种用于office文档的文档类文件格式,它基于zip压缩格式,内部使用xml格式来描述office文档的内容。与本技术实施例不同的是相关技术中,使用ooxml文件中的固定文件路径来区分其与zip文件格式,如:当zip文件中存在“\word”、“\xl”和“\ppt”路径时,认为该文件是一个ooxml文件,再根据路径具体内容判定其是ooxml文件的哪一个子类。但是,zip文件中存在的“\word”、“\xl”和“\ppt”并不是该文件格式中的固定值,而是由其内部的xml文件决定的可变值,因此,该固定文件路径与当前文件是否是ooxml文件无关。另外,使用上述固定路径会导致文件类型识别不准确,不能够准确的使用相对应的检测规则对各文件进行检测,降低了检测准确率。在模拟运行场景下,会导致无法正确运行文件,进而导致运行失败。
[0037]
也就是说,虽然ooxml格式是基于zip压缩格式实现的,但二者在实际的恶意样本中,包含恶意内容的方式不同,导致进行检测时的方式也不同。如果无法准确区分两者,将导致针对对应文件类型的检测逻辑失效,进而导致检测能力下降。
[0038]
下面以网关设备为例示例性阐述本技术一些实施例提供的文件格式检测方案。可以理解的是,本技术实施例的文件格式检测的方法的技术方案可以应用于任何安全设备上,例如,防火墙产品上。
[0039]
至少为了解决背景技术中的问题,如图2所示,本技术一些实施例提供了一种文件格式检测的方法,该方法包括:s210,获取待识别文件。
[0040]
需要说明的是,待识别文件为zip格式文件。网关设备可以从任何发送设备接收待识别文件。作为本技术一具体实施例,网关设备可以从外网的客户端获取待识别文件。作为本技术另一具体实施例,网关设备可以从外网的服务器获取待识别文件。
[0041]
s220,确认待识别文件中存在目标路径,解析目标路径所对应的文件获得解析结果。
[0042]
在本技术的一种实施方式中,目标路径包括第一路径和第二路径,其中,第一路径为“\_rels\.rels”,第二路径为“\[content_types].xml”。在待识别文件中查找上述第一路径和第二路径,在确定存在第一路径和第二路径的情况下,继续对其进行解析获得解析结果,在确定不存在第一路径和第二路径的情况下,判断待识别文件为zip格式文件。
[0043]
可以理解的是,目标路径所对应的文件中保存着ooxml文件的必要的信息。因此,通过解析目标路径可以准确判断当前待识别文件是否为ooxml文件。
[0044]
具体的,对第一路径和第二路径进行解析,获得解析结果的步骤如下所示:s1:解析第一路径对应的文件获得第一解析文件。
[0045]
s2:从第一解析文件中获得目标字段所对应的路径,并且基于目标字段所对应的路径查找主文件。
[0046]
也就是说,对待识别文件中的“\_rels\.rels”路径进行解析,得到第一解析文件,
之后在第一解析文件中查找目标字段“officedocument”,并且获取“officedocument”所对应的值,将该值作为目标字段所对应的路径,之后,通过目标字段所对应的路径查找主文件。若不存在该目标字段,则判断待识别文件为zip格式文件。
[0047]
s3:解析第二路径对应的文件获得第二解析文件。
[0048]
s4:从第二解析文件中获得主文件的数据类型,并且将数据类型作为解析结果。
[0049]
也就是说,对待识别文件中的“\[content_types].xml”路径进行解析,得到第二解析文件,之后在第二解析文件中查找s2中查找到的主文件的数据类型。若从第二解析文件中没有获得主文件的数据类型,则判断待识别文件不是ooxml格式文件,即判断待识别文件是zip格式文件。
[0050]
在本技术的一种实施方式中,若确认不存在上述解析结果,则判断待识别文件是zip格式文件。
[0051]
s230,根据解析结果确认待识别文件是否为zip格式文件下的ooxml格式文件。
[0052]
在本技术的一种实施方式中,在获得解析结果之后,根据解析结果中主文件的数据类型确认待识别文件是否为zip格式文件下的ooxml格式文件。
[0053]
具体的,确认数据类型与实际的文件格式之间存在预设的映射关系,则确认待识别文件为ooxml格式文件。
[0054]
也就是说,检查该数据类型是否满足主文件的数据类型在office软件实现时与实际的文件格式之间的固定的映射关系。若满足,则确认待识别文件为ooxml格式文件。若确认数据类型与实际的文件格式之间不存在预设的映射关系,则判断待识别文件为zip格式文件。
[0055]
例如,数据类型:“application/vnd.openxmlformats.officedocument.wordprocessingml.document.main+xml
”ꢀ
对应的文件格式为“docx”。
[0056]
例如,数据类型:“application/vnd.openxmlformats.officedocument.spreadsheetml.sheet.main+xml”对应的文件格式为“xlsx”。
[0057]
例如,数据类型:“application/vnd.openxmlformats.officedocument.presentationml.presentation.main+xml
”ꢀ
对应的文件格式为“pptx”。
[0058]
在本技术的一种实施方式中,基于预设的映射关系确定待识别文件的实际的文件格式。
[0059]
也就是说,可以基于预设的映射关系得到待识别文件的实际的文件格式,其中,待识别文件的实际的文件格式为“docx”、“xlsx”或“pptx”。
[0060]
在本技术的一种实施方式中,在确认待识别文件的文件格式之后,查找与待识别文件的文件格式相对应的文件检测策略。
[0061]
也就是说,在本技术网络安全检测的场景中,在识别到待识别文件的文件格式之后,查找与文件格式相对应的文件检测策略,并且使用该文件检测策略对待识别文件进行安全检测。
[0062]
因此。本技术提供的文件格式检测的方法可以准确的识别ooxml文件格式,从而提
升检测能力。并且在模拟运行场景下,可以准确的根据正确文件格式进行模拟,从而得到准确的执行流程,即使用准确的文件检测策略对待识别文件进行检测。
[0063]
作为本技术一具体实施例,如图3所示,首先执行s301获取zip格式文件中是否存在第一路径和第二路径,若是,在继续执行s303,若否,则执行s309确认待识别文件为zip文件格式。s303解析第一路径对应的文件,之后执行s304判断是否存在ooxml主文件路径,若存在,则继续执行s305若不存在则执行s309。s305解析第二路径对应的文件,之后执行s306是否存在主文件的数据类型,若存在,则执行s307,若不存在,则执行s309。s307判断数据类型是否满足预设的映射关系,若满足,则执行s308确认当前文件为ooxml格式文件,并且根据预设的映射关系确定子类型,若不满足,则执行s309确认待识别文件为zip文件格式。
[0064]
在具体的使用场景中,在使用沙箱技术检测样本时,样本能被正确检测的先决条件是样本能够被正确的执行。而正确执行样本依赖与正确的文件格式检测,即针对不同的文件格式制定不同的执行策略,从而模拟样本被真实运行时的行为。至此,才能通过沙箱技术判断一个文件是否是恶意文件。因此,本技术可以运用在沙箱技术中,帮助沙箱得到待识别文件的准确文件格式,从而避免待识别文件由于文件格式识别错误导致无法运行,进而导致检测失败或得到错误的检测结果。
[0065]
因此,本技术可以准确的识别ooxml文件格式,从而避免现有技术中存在的格式识别错误的缺陷。进而可以通过将本技术中的技术方案与其他恶意文件检测方式进行配合,从而获得更准确的检测结果。
[0066]
上文描述了一种文件格式检测的方法的具体实施方式,下文将描述一种文件格式检测的装置。
[0067]
如图4所示,本技术的一些实施例提供一种文件格式检测的装置400,该装置包括:文件获取模块410、路径解析模块420和格式判断模块430。
[0068]
文件获取模块410,被配置为获取待识别文件,其中,所述待识别文件为数据压缩zip格式文件。
[0069]
路径解析模块420,被配置为确认所述待识别文件中存在目标路径,解析所述目标路径所对应的文件获得解析结果。
[0070]
格式判断模块430,被配置为根据所述解析结果确认所述待识别文件是否为所述zip格式文件下的ooxml格式文件。
[0071]
在本技术的一种实施方式中,所述目标路径包括第一路径和第二路径;所述路径解析模块420还被配置为:解析所述第一路径对应的文件获得第一解析文件;从所述第一解析文件中获得目标字段所对应的路径,并且基于所述目标字段所对应的路径查找主文件;解析所述第二路径对应的文件获得第二解析文件;从所述第二解析文件中获得所述主文件的数据类型,并且将所述数据类型作为所述解析结果。
[0072]
在本技术的一种实施方式中,所述格式判断模块430还被配置为:确认所述数据类型与实际的文件格式之间存在预设的映射关系,则确认所述待识别文件为所述ooxml格式文件。
[0073]
在本技术的一种实施方式中,所述格式判断模块430还被配置为:基于所述预设的映射关系确定所述待识别文件的所述实际的文件格式。
[0074]
在本技术的一种实施方式中,所述格式判断模块430还被配置为:确认所述数据类
型与实际的文件格式之间不存在预设的映射关系,则判断所述待识别文件不是所述ooxml格式文件。
[0075]
在本技术的一种实施方式中,所述格式判断模块430还被配置为:查找与所述待识别文件的文件格式相对应的文件检测策略。
[0076]
在本技术的一种实施方式中,所述第一路径为\_rels\.rels;所述第二路径为\[content_types].xml。
[0077]
在本技术的一种实施方式中,所述格式判断模块430还被配置为:确认不存在所述解析结果,则判断所述待识别文件不是所述ooxml格式文件。
[0078]
在本技术的一种实施方式中,所述路径解析模块420还被配置为:若从所述第二解析文件中没有获得所述主文件的数据类型,则判断所述待识别文件不是所述ooxml格式文件。
[0079]
在本技术实施例中,图4所示模块能够实现图1、图2和图3方法实施例中的各个过程。图4中的各个模块的操作和/或功能,分别为了实现图1、图2和图3中的方法实施例中的相应流程。具体可参见上述方法实施例中的描述,为避免重复,此处适当省略详细描述。
[0080]
如图5所示,本技术实施例提供一种电子设备500,包括:处理器510、存储器520和总线530,所述处理器通过所述总线与所述存储器相连,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,用于实现如上述所有实施例中任一项所述的方法,具体可参见上述方法实施例中的描述,为避免重复,此处适当省略详细描述。
[0081]
其中,总线用于实现这些组件直接的连接通信。其中,本技术实施例中处理器可以是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0082]
存储器可以是,但不限于,随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read-only memory,prom),可擦除只读存储器(erasable programmable read-only memory,eprom),电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)等。存储器中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,可以执行上述实施例中所述的方法。
[0083]
可以理解,图5所示的结构仅为示意,还可包括比图5中所示更多或者更少的组件,或者具有与图5所示不同的配置。图5中所示的各组件可以采用硬件、软件或其组合实现。
[0084]
本技术实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被服务器执行时实现上述所有实施方式中任一所述的方法,具体可参见上述方法实施例中的描述,为避免重复,此处适当省略详细描述。
[0085]
以上所述仅为本技术的优选实施例而已,并不用于限制本技术,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。应注意到:相似的标号和字母在
下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
[0086]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应所述以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1