文档检测方法、装置、计算机设备以及存储介质制造方法及图纸

技术编号:38496827 阅读:8 留言:0更新日期:2023-08-15 17:06
本申请公开了一种文档检测方法、装置、计算机设备以及存储介质。该方法通过获取目标文档文件对应的源代码以及机器码;确定所述机器码中的关键代码对应的目标行;将所述机器码中的所述目标行对应的第一代码与所述源代码中的第二代码进行匹配,得到匹配结果,所述第二代码为所述源代码中与所述目标行对应的代码;基于所述匹配结果,确定所述目标文档文件是否受到VBA重踏攻击。通过检测目标文档文件对应的机器码中的关键代码对应的目标行,判断机器码中的目标行对应的第一代码与源代码中的目标行对应的第二代码是否匹配,进而判断目标文档文件是否受到VBA重踏攻击,可以避免将所有机器码反编译为源代码,提高VBA重踏攻击的检测性能和准确度。测性能和准确度。测性能和准确度。

【技术实现步骤摘要】
文档检测方法、装置、计算机设备以及存储介质


[0001]本申请涉及安全检测领域,更具体地,涉及一种文档检测方法、装置、计算机设备以及存储介质。

技术介绍

[0002]文档文件在人们日常办公中使用频繁,用户可以通过一些办公软件提供的特定语言系统,根据实际需求自定义一些功能以实现不同的软件效果。但这也导致部分攻击者可以通过制造恶意的文档文件,以攻击其他计算机设备,并且通常情况下对于这一类恶意文档文件的检测方法比较单一,实际检测效果并不明显。

技术实现思路

[0003]鉴于上述问题,本申请提出了一种文档检测方法、装置、计算机设备以及存储介质,可以避免将所有机器码反编译为源代码,提高VBA重踏攻击的检测性能和准确度。
[0004]第一方面,本申请实施例提供了一种文档检测方法,所述方法包括:获取目标文档文件对应的源代码以及机器码;确定所述机器码中的关键代码对应的目标行;将所述机器码中的所述目标行对应的第一代码与所述源代码中的第二代码进行匹配,得到匹配结果,所述第二代码为所述源代码中与所述目标行对应的代码;基于所述匹配结果,确定所述目标文档文件是否受到VBA重踏攻击。
[0005]第二方面,本申请实施例提供了一种文档检测装置,所述装置包括:代码获取模块,目标行确定模块,代码匹配模块以及文档判断模块。其中,代码获取模块用于获取目标文档文件对应的源代码以及机器码;目标行确定模块用于确定所述机器码中的关键代码对应的目标行;代码匹配模块用于将所述机器码中的所述目标行对应的第一代码与所述源代码中的第二代码进行匹配,得到匹配结果,所述第二代码为所述源代码中与所述目标行对应的代码;文档判断模块用于基于所述匹配结果,确定所述目标文档文件是否受到VBA重踏攻击。
[0006]第三方面,本申请实施例提供了一种计算机设备,包括:一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述第一方面提供的文档检测方法。
[0007]第四方面,本申请实施例提供了一种计算机可读取存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行上述第一方面提供的文档检测方法。
[0008]本申请提供的方案,通过获取目标文档文件对应的源代码以及机器码;确定所述机器码中的关键代码对应的目标行;将所述机器码中的所述目标行对应的第一代码与所述源代码中的第二代码进行匹配,得到匹配结果,所述第二代码为所述源代码中与所述目标行对应的代码;基于所述匹配结果,确定所述目标文档文件是否受到VBA重踏攻击。通过检
测目标文档文件对应的机器码中的关键代码对应的目标行,判断机器码中的目标行的第一代码与源代码中的目标行对应的第二代码是否匹配,进而判断目标文档文件是否受到VBA重踏攻击,可以避免将所有机器码反编译为源代码,提高检测VBA重踏攻击的检测性能和准确度。
附图说明
[0009]为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0010]图1示出了本申请一个实施例提供的文档检测方法的流程示意图。
[0011]图2示出了本申请另一个实施例提供的文档检测方法的流程示意图。
[0012]图3示出了本申请实施例提供的文档检测装置的结构示意图。
[0013]图4示出了本申请实施例提供的一种计算机设备的结构框图。
[0014]图5示出了本申请实施例提供的计算机可读取存储介质的结构框图。
具体实施方式
[0015]为了使本
的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
[0016]下面对本申请实施例提供的文档检测方法中的概念进行介绍。
[0017]本申请实施例提供的文档检测方法用于对文档文件进行检测,判断其中是否存在由于受到VBA重踏攻击(Visual Basic for Applications stomping)产生的恶意信息。其中VBA重踏攻击是一种恶意文档攻击技术,能够有效绕过反病毒检测,破坏文档文件中的VBA源代码,只在文档文件中留下宏代码编译出的机器码,在Visual C++和Visual Basic语言环境中表现为p

code格式。其中VBA(Visual Basic for Applications)是微软时间驱动编程语言Visual Basic的一种实现应用,可以用于扩展Windows应用程序的功能,通常内置于Microsoft Office软件中。通常情况下,用户对于VBA重踏攻击的检测方法是将机器码p

code反编译为源代码,进而检测其是否为恶意文档。但这样检测方式容易被绕过,攻击者可以在文档文件中添加大量的无效机器码,以使VBA重踏攻击检测超时,以实现绕过检测的效果,实际检测效率不高。
[0018]因此,专利技术人提出了本申请实施例提供的文档检测方法、装置、计算机设备以及存储介质,可以通过检测目标文档文件对应的机器码中的关键代码对应的目标行,判断机器码中的目标行的第一代码与源代码中的目标行对应的第二代码是否匹配,进而判断目标文档文件是否受到VBA重踏攻击,可以避免将所有机器码反编译为源代码,提高VBA重踏攻击的检测性能和准确度。
[0019]下面将结合附图具体描述本申请实施例提供的文档检测方法。
[0020]请参阅图1,图1示出了本申请一个实施例提供的文档检测方法的流程示意图,下面将针对图1所示流程进行详细阐述,所述文档检测方法具体可以包括以下步骤:
[0021]步骤S110:获取目标文档文件对应的源代码以及机器码。
[0022]在本申请实施例中,计算机设备可以获取目标文档文件对应的源代码以及机器码,以便于根据源代码和机器码之间的匹配程度,判断目标文档文件是否受到了VBA重踏攻击。可以理解的,若目标文档文件没有受到攻击,那么此时计算机设备基于目标文档文件获取的机器码就会与源代码完全匹配,因为此时的机器码是直接由源代码编译后得到的机器语言。但若目标文档文件受到了VBA重踏攻击,那么其中保存的p

code机器码则会与源代码不匹配,可能会指示计算机设备执行一些恶意危险的动作,以达到攻击者破坏文档或者计算机设备的目的。在一些实施方式中,目标文档文件可以为通过Microsoft Office软件生成的包含VBA源代码的文档文件。
[0023]在一些实施方式中,计算机设备可以先获取目标文档文件,通过对目标文档文件进行解析,直接得到目标文档文件对应的二进制文件(vbaProject.bin),这个文件中包括所有的文档文件中能够被使用的所有代码模块。计算机设备再对vbaProject.bin文件进本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种文档检测方法,其特征在于,所述方法包括:获取目标文档文件对应的源代码以及机器码;确定所述机器码中的关键代码对应的目标行;将所述机器码中的所述目标行对应的第一代码与所述源代码中的第二代码进行匹配,得到匹配结果,所述第二代码为所述源代码中与所述目标行对应的代码;基于所述匹配结果,确定所述目标文档文件是否受到VBA重踏攻击。2.根据权利要求1所述的方法,其特征在于,所述目标行的数量为多个,所述将所述机器码中的所述目标行对应的第一代码与所述源代码中的第二代码进行匹配,得到匹配结果,包括:从所述机器码中确定每个所述目标行对应的代码,得到每个所述目标行对应的第一代码;从所述源代码中确定与每个所述目标行对应的代码,得到每个所述目标行对应的第二代码;针对每个所述目标行,将每个所述目标行对应的第一代码与每个所述目标行对应的第二代码进行匹配,得到每个所述目标行对应的匹配结果。3.根据权利要求2所述的方法,其特征在于,所述基于所述匹配结果,确定所述目标文档文件是否受到VBA重踏攻击,包括:基于每个所述目标行对应的匹配结果,确定所述匹配结果为第一结果的目标数量,所述第一结果用于表征所述第一代码与所述第二代码不匹配;若所述目标数量大于或等于目标阈值,则确定所述目标文档文件受到VBA重踏攻击;若所述目标数量小于所述目标阈值,则确定所述目标文档文件未受到VBA重踏攻击。4.根据权利要求1所述的方法,其特征在于,所述确定所述机器码中的关键代码对应的目标行,包括:遍历所述机器码,从所述机器码中确定出执行关键动作的代码对应的目标行。5.根据权利要求1

4任一项所述的方法,其特征在于,所述将所述机器码中的所述目标行对应的第一代码与所述源代码中的第二代码进行匹配,得到匹配结果,包括:将所述第一代码...

【专利技术属性】
技术研发人员:梁文翔徐敬蘅
申请(专利权)人:深圳市深信服信息安全有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1