CN109858248A - 恶意Word文档检测方法和装置 - Google Patents

恶意Word文档检测方法和装置 Download PDF

Info

Publication number
CN109858248A
CN109858248A CN201811601084.9A CN201811601084A CN109858248A CN 109858248 A CN109858248 A CN 109858248A CN 201811601084 A CN201811601084 A CN 201811601084A CN 109858248 A CN109858248 A CN 109858248A
Authority
CN
China
Prior art keywords
document
word document
detected
word
malice
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.)
Granted
Application number
CN201811601084.9A
Other languages
English (en)
Other versions
CN109858248B (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.)
Institute of Information Engineering of CAS
Original Assignee
Institute of Information Engineering of CAS
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 Institute of Information Engineering of CAS filed Critical Institute of Information Engineering of CAS
Priority to CN201811601084.9A priority Critical patent/CN109858248B/zh
Publication of CN109858248A publication Critical patent/CN109858248A/zh
Application granted granted Critical
Publication of CN109858248B publication Critical patent/CN109858248B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供一种恶意Word文档检测方法和装置,所述方法包括:提取待检测的Word文档中的可疑代码及负载;根据恶意文档代码特征库对待检测的Word文档中的可疑代码及负载进行扫描和模式匹配,获取待检测的Word文档的特征向量;将所述待检测的Word文档的特征向量输入至恶意文档分类模型中,获取所述恶意文档分类模型输出的分类结果;根据所述分类结果和所述待检测的Word文档的特征向量,生成所述待检测的Word文档的检测报告。本发明实施例有针对性地提取Word文档中嵌入的恶意代码和恶意负载,可节省检测时间,且不受限于Word版本,对代码混淆攻击和未知类型的攻击也有很好的适应能力。

Description

恶意Word文档检测方法和装置
技术领域
本发明实施例涉及网络安全技术领域,更具体地,涉及一种恶意Word文档检测方法和装置。
背景技术
Office Word办公软件一直被人们广泛使用,大多数使用者都认为Word文档是安全的,通常不采取任何预防措施。然而,近几年来,Word文档攻击已经成为了不法分子利用最频繁的攻击方式之一,攻击者通常向受害者发送带有恶意Word的附件,并借用社会工程手段诱导其点击附件,用户一旦打开附件,恶意文档中嵌入的恶意代码便会开始自动执行,给政府、企业和个人造成了无法估量的损失。
目前针对Word文档攻击形式主要有以下几种:基于恶意宏攻击、基于恶意负载攻击以及漏洞利用。现有的Word文档检测方法也基于围绕这几种攻击形式进行检测,例如,检测嵌入Word文档的宏代码或Shell代码;或者,通过提取恶意负载来区分恶意文档并确定利用的漏洞类型,仅能对后缀名为.doc的Word文档进行检测;或者,通过扫描分析整个文档的结构,并利用主动学习框架进行判定,仅能分析后缀名为.docx的Word文档。
上述各种现有的Word文档检测方法存在以下不足:检测的文档类型单一,检测不全面,检测耗时较长,没有对攻击行为进行分析,无法检测出新型攻击,且漏报率和误报率较高。
发明内容
本发明实施例提供一种克服上述问题或者至少部分地解决上述问题的恶意Word文档检测方法和装置。
第一方面,本发明实施例提供一种恶意Word文档检测方法,包括:
提取待检测的Word文档中的可疑代码及负载;
根据预先构建的恶意文档代码特征库对所述待检测的Word文档中的可疑代码及负载进行扫描和模式匹配,获取所述待检测的Word文档的特征向量;
将所述待检测的Word文档的特征向量输入至恶意文档分类模型中,获取所述恶意文档分类模型输出的分类结果;
根据所述分类结果和所述待检测的Word文档的特征向量,生成所述待检测的Word文档的检测报告;
其中,所述恶意文档分类模型是基于Word文档样本的特征向量和对应的分类标签进行训练获得的。
第二方面,本发明实施例提供一种恶意Word文档检测装置,包括:
代码提取模块,用于提取待检测的Word文档中的可疑代码及负载;
特征获取模块,用于根据预先构建的恶意文档代码特征库对所述待检测的Word文档中的可疑代码及负载进行扫描和模式匹配,获取所述待检测的Word文档的特征向量;
分类模块,用于将所述待检测的Word文档的特征向量输入至恶意文档分类模型中,获取所述恶意文档分类模型输出的分类结果;
输出模块,用于根据所述分类结果和所述待检测的Word文档的特征向量,生成所述待检测的Word文档的检测报告;
其中,所述恶意文档分类模型是基于Word文档样本的特征向量和对应的分类标签进行训练获得的。
第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所提供的恶意Word文档检测方法的步骤。
第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所提供的恶意Word文档检测方法的步骤。
本发明实施例提供的恶意Word文档检测方法和装置,不受限于Word版本,能够结合文档结构特性,有针对性地提取Word文档中嵌入的恶意代码和恶意负载,快速定位到可疑位置,可节省检测时间,对代码混淆攻击和未知类型的攻击有很好的适应能力,并尝试描述攻击者攻击行为,能够在保证高准确率的同时降低误报率和漏报率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的恶意Word文档检测方法的流程示意图;
图2为本发明实施例提供的恶意Word文档检测装置的结构示意图;
图3为本发明实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的恶意Word文档检测方法的流程示意图,如图所示,包括:
步骤100、提取待检测的Word文档中的可疑代码及负载;
恶意文档最终的目的都是执行攻击者精心准备好的恶意代码,因此,在本发明实施例中,首先提取待检测的Word文档中嵌入的可疑代码及负载,以快速定位到可疑位置。
Word文档中嵌入的可疑代码包括宏代码、XML代码及其他有效代码等任何可能被嵌入恶意代码的位置,Word文档中嵌入的负载包括OLE文件。本发明实施例提取待检测的Word文档中的可疑代码及负载,可以实现对该Word文档的全面检测。
值得说明的是,不管待检测的Word文档的类型是什么,都需提取待检测的Word文档中的可疑代码及负载,因此,本发明实施例提供的方法并不受限于Word文档的类型。
步骤101、根据预先构建的恶意文档代码特征库对所述待检测的Word文档中的可疑代码及负载进行扫描和模式匹配,获取所述待检测的Word文档的特征向量;
具体地,根据预先构建的恶意文档代码特征库,对所提取出的待检测的Word文档中的可疑代码及负载进行分析,从而能够较全面地检测各种攻击类型的恶意文档并能较好地应对新型攻击。
在本发明实施例中,恶意文档代码特征库是通过收集恶意代码的攻击行为特征来建立的。
通过对所提取出的待检测的Word文档中的可疑代码及负载进行扫描分析,并与恶意文档代码特征库进行模式匹配,将匹配的结果进行向量化表达,即可获得所述待检测的Word文档的特征向量。
步骤102、将所述待检测的Word文档的特征向量输入至恶意文档分类模型中,获取所述恶意文档分类模型输出的分类结果;
其中,所述恶意文档分类模型是基于Word文档样本的特征向量和对应的分类标签进行训练获得的。
具体地,恶意文档分类模型是预先训练好的用于根据待检测的Word文档的特征向量对待检测的Word文档进行分类的模型,分类结果为该待检测的Word文档为恶意Word文档或正常Word文档。
利用大量恶意Word文档和正常Word文档作为样本,并提取Word文档样本的可疑代码及负载,根据恶意文档代码特征库对Word文档样本的可疑代码及负载进行扫描和模式匹配,获取Word文档样本的特征向量,将所提取出的Word文档样本的特征向量输入机器学习网络模型中,训练获得恶意文档分类模型。
步骤103、根据所述分类结果和所述待检测的Word文档的特征向量,生成所述待检测的Word文档的检测报告;
具体地,所述恶意文档分类模型输出的分类结果为所述待检测的Word文档为恶意文档或正常文档。若分类结果为恶意文档,则结合该待检测的Word文档的特征向量,可以找到所述待检测的Word文档对应的恶意特征,将对应的恶意特征进行形式化语言的描述,从而描述出具体的攻击行为,生成所述待检测的Word文档的攻击行为检测报告。
本发明实施例提供的恶意Word文档检测方法,不受限于Word版本,能够结合文档结构特性,有针对性地提取Word文档中嵌入的恶意代码和恶意负载,快速定位到可疑位置,可节省检测时间,对代码混淆攻击和未知类型的攻击有很好的适应能力,并尝试描述攻击者攻击行为,能够在保证高准确率的同时降低误报率和漏报率。
基于上述实施例的内容,所述提取待检测的Word文档中的可疑代码及负载的步骤,具体为:
利用文件头判断待检测的Word文档的类型,并利用与类型相对应的解析方法对所述待检测的Word文档进行解析;
根据解析结果提取所述待检测Word文档中的可疑代码及负载。
具体地,不同版本的Word文档结构不同,因此,提取可疑代码及负载的方式也不同。目前Word文档可以大致分为2003(.doc)版本和2007(.docx)版本,Word 2003及以前的版本是一种复合文档,利用不同层次的存储器(storages)将数据流(streams)组织起来,文件头为“\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1”;而Word 2007版本及以后的版本采用的是Open XML文件结构,文件头为“\x50\x4B\x03\x04”。因此,利用现有的文本阅读器获取待检测的Word文档的文件头,根据文件头来判断待检测的Word文档的类型。
所述利用与类型相对应的解析方法对所述待检测的Word文档进行解析的步骤,具体为:
若判断获知所述待检测的Word文档为2003版本,则按照复合文档对所述待检测的Word文档进行解析,获得所有目录directory;或者,
若判断获知所述待检测的Word文档为2007或2007以后的版本,则按照Open XML文档结构对所述待检测的Word文档进行解析,获得解压后的文件。
所述根据解析结果提取所述待检测Word文档中的可疑代码及负载的步骤,具体为:
若所述待检测的Word文档为2003版本,则查看所述所有directory是否为数据流stream,若是,则处理数据流提取有效代码,并判断是否存在directory的名字为"\x01Ole10Native",若存在,则按照OLE文件格式还原该directory对应的数据流;或者,
若所述待检测的Word文档为2007版本或2007版本以后的版本,则提取所述待检测的Word文档中的宏代码和可疑的XML文件,并扫描所述解压后的文件,保存OLE格式文件。
其中,有效代码是可以阅读的代码。可疑的XML文件包括:['word/document.xml','word/endnotes.xml','word/footnotes.xml','word/hea der.xml','word/footer.xml','word/comments.xml']。
若待检测的Word文档为2003版本,按照OLE文件格式还原该名字为"\x01Ole10Native"的directory所对应的数据流,作为负载。
若待检测的Word文档为2007版本或2007版本以后的版本,则直接扫描所述解压后的文件,保存OLE格式文件,作为负载。
基于上述各实施例的内容,所述根据预先构建的恶意文档代码特征库对所述待检测的Word文档中的可疑代码及负载进行扫描和模式匹配的步骤之前,还包括:
构建所述恶意文档代码特征库;
其中,所述恶意文档代码特征库包括四个层次组成的多个特征,所述四个层次具体为:可疑关键字、编码方式、混淆方式和IOC。
具体地,本发明实施例选取四个层次的多个特征构建恶意文档代码特征库。四个层次包括:可疑关键字、编码方式、混淆方式和IOC(Inversion of Control,控制反转)。其中,可疑关键字包括自启动、系统API等;编码方式包括Base64编码、ASCII编码、十六进制编码等;混淆方式包括长字符串混淆、循环混淆、计算混淆、比较混淆等;IOC包括URL、Email等。
由于将编码和混淆情况考虑在恶意文档代码特征库中,弥补了静态检测难以解决混淆攻击的缺点。
相应地,根据恶意文档代码特征库对所述待检测的Word文档中的可疑代码及负载进行扫描和模式匹配,从而获取所述待检测的Word文档的特征向量,特征向量的具体表示为:以数值0和1表示每个可疑关键字类的特征是否出现;用数值2,3表示每个编码方式类特征的程度、混淆方式类特征的程序和IOC类特征的数量,其中,数值2表示程度较轻和数量较少,3表示程度较重和数量较多,待检测的Word文档的特征向量即可表示出来。例如,若所述恶意文档代码特征库包括四个层次组成的n个特征,那么待检测的Word文档的特征向量为一个n维的向量。特征向量中的每个元素的取值为0、1、2或3。
在一个实施例中,选取上述四个层次共180维度的特征构成恶意文档代码特征库。
基于上述各实施例的内容,训练所述恶意文档分类模型的步骤,具体为:
获取大量恶意Word文档和正常Word文档,并为获取的每个Word文档打标签,构建Word文档样本库;
其中,Word文档的标签类型为恶意或正常,可以用0和1进行表示。构建了Word文档样本库之后,通常按照一定的比例将Word文档样本库划分为训练样本集和测试样本集。
提取所述Word文档样本库中每个Word文档样本的可疑代码及负载,并根据所述恶意文档代码特征库对所述每个Word文档样本的可疑代码及负载进行扫描和模式匹配,获取所述每个Word文档样本的特征向量;
具体地,利用文件头判断每个Word文档样本的类型,并利用与类型相对应的解析方法对每个Word文档样本进行解析;根据解析结果提取每个Word文档样本中的可疑代码及负载。并根据预先构建的恶意文档代码特征库对每个Word文档样本中的可疑代码及负载进行扫描和模式匹配,获取每个Word文档样本的特征向量。
将所述每个Word文档样本的特征向量及对应的标签输入机器学习模型中进行训练,保存训练结束时所述机器学习模型的参数,获得恶意文档分类模型。
如图2所示,为本发明实施例提供的恶意Word文档检测装置的结构示意图,包括:代码提取模块210、特征获取模块220、分类模块230和输出模块240,其中,
代码提取模块210,用于提取待检测的Word文档中的可疑代码及负载;
具体地,恶意文档最终的目的都是执行攻击者精心准备好的恶意代码,因此,在本发明实施例中,代码提取模块210首先提取待检测的Word文档中嵌入的可疑代码及负载,以快速定位到可疑位置。
Word文档中嵌入的可疑代码包括宏代码、XML代码及其他有效代码等任何可能被嵌入恶意代码的位置,Word文档中嵌入的负载包括OLE文件。代码提取模块210提取待检测的Word文档中的可疑代码及负载,可以实现对该Word文档的全面检测。
特征获取模块220,用于根据预先构建的恶意文档代码特征库对所述待检测的Word文档中的可疑代码及负载进行扫描和模式匹配,获取所述待检测的Word文档的特征向量;
具体地,特征获取模块220根据预先构建的恶意文档代码特征库,对所提取出的待检测的Word文档中的可疑代码及负载进行分析,从而能够较全面地检测各种攻击类型的恶意文档。恶意文档代码特征库是通过收集恶意代码的攻击行为特征来建立的。
特征获取模块220通过对所提取出的待检测的Word文档中的可疑代码及负载进行扫描分析,并与恶意文档代码特征库进行模式匹配,将匹配的结果进行向量化表达,即可获得所述待检测的Word文档的特征向量。
分类模块230,用于将所述待检测的Word文档的特征向量输入至恶意文档分类模型中,获取所述恶意文档分类模型输出的分类结果;
恶意文档分类模型是预先训练好的用于根据待检测的Word文档的特征向量对待检测的Word文档进行分类的模型,分类结果为该待检测的Word文档为恶意Word文档或正常Word文档。
分类模块230利用大量恶意Word文档和正常Word文档作为样本,并提取Word文档样本的可疑代码及负载,根据恶意文档代码特征库对Word文档样本的可疑代码及负载进行扫描和模式匹配,获取Word文档样本的特征向量,将所提取出的Word文档样本的特征向量输入机器学习网络模型中,训练获得恶意文档分类模型。
输出模块240,用于根据所述分类结果和所述待检测的Word文档的特征向量,生成所述待检测的Word文档的检测报告;
所述恶意文档分类模型输出的分类结果为所述待检测的Word文档为恶意文档或正常文档。若分类结果为恶意文档,则输出模块240结合该待检测的Word文档的特征向量,可以找到所述待检测的Word文档对应的恶意特征,将对应的恶意特征进行形式化语言的描述,从而描述出具体的攻击行为,生成所述待检测的Word文档的攻击行为检测报告。
本发明实施例提供的恶意Word文档检测装置,不受限于Word版本,能够结合文档结构特性,有针对性地提取Word文档中嵌入的恶意代码和恶意负载,快速定位到可疑位置,可节省检测时间,并能较好地检测各种类型的攻击,并尝试描述攻击者攻击行为,能够在保证高准确率的同时降低误报率和漏报率。
基于上述实施例的内容,所述代码提取模块210具体用于:
利用文件头判断待检测的Word文档的类型,并利用与类型相对应的解析方法对所述待检测的Word文档进行解析;
根据解析结果提取所述待检测Word文档中的可疑代码及负载。
具体地,不同版本的Word文档结构不同,因此,提取可疑代码及负载的方式也不同。目前Word文档可以大致分为2003(.doc)版本和2007(.docx)版本,Word 2003及以前的版本是一种复合文档,利用不同层次的存储器(storages)将数据流(streams)组织起来,文件头为“\xD0\xCF\x11\xE0\xA1\xB1\x1A\xE1”;而Word 2007版本及以后的版本采用的是Open XML文件结构,文件头为“\x50\x4B\x03\x04”。因此,代码提取模块210利用现有的文本阅读器获取待检测的Word文档的文件头,根据文件头来判断待检测的Word文档的类型。
代码提取模块210利用与类型相对应的解析方法对所述待检测的Word文档进行解析的步骤,具体为:
若判断获知所述待检测的Word文档为2003版本,则按照复合文档对所述待检测的Word文档进行解析,获得所有目录directory;或者,
若判断获知所述待检测的Word文档为2007或2007以后的版本,则按照Open XML文档结构对所述待检测的Word文档进行解析,获得解压后的文件。
代码提取模块210根据解析结果提取所述待检测Word文档中的可疑代码及负载的步骤,具体为:
若所述待检测的Word文档为2003版本,则查看所述所有directory是否为数据流stream,若是,则处理数据流提取有效代码,并判断是否存在directory的名字为"\x01Ole10Native",若存在,则按照OLE文件格式还原该directory对应的数据流;或者,
若所述待检测的Word文档为2007版本或2007版本以后的版本,则提取所述待检测的Word文档中的宏代码和可疑的XML文件,并扫描所述解压后的文件,保存OLE格式文件。
其中,有效代码是可以阅读的代码。可疑的XML文件包括:['word/document.xml','word/endnotes.xml','word/footnotes.xml','word/hea der.xml','word/footer.xml','word/comments.xml']。
若待检测的Word文档为2003版本,按照OLE文件格式还原该名字为"\x01Ole10Native"的directory所对应的数据流,作为负载。
若待检测的Word文档为2007版本或2007版本以后的版本,则直接扫描所述解压后的文件,保存OLE格式文件,作为负载。
图3为本发明实施例提供的电子设备的实体结构示意图,如图3所示,该电子设备可以包括:处理器(processor)310、通信接口(Communications Interface)320、存储器(memory)330和通信总线340,其中,处理器310,通信接口320,存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储在存储器330上并可在处理器310上运行的计算机程序,以执行上述各实施例提供的恶意Word文档检测方法,例如包括:提取待检测的Word文档中的可疑代码及负载;根据预先构建的恶意文档代码特征库对所述待检测的Word文档中的可疑代码及负载进行扫描和模式匹配,获取所述待检测的Word文档的特征向量;将所述待检测的Word文档的特征向量输入至恶意文档分类模型中,获取所述恶意文档分类模型输出的分类结果;根据所述分类结果和所述待检测的Word文档的特征向量,生成所述待检测的Word文档的检测报告;其中,所述恶意文档分类模型是基于Word文档样本的特征向量和对应的分类标签进行训练获得的。
此外,上述的存储器330中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各实施例提供的恶意Word文档检测方法,例如包括:提取待检测的Word文档中的可疑代码及负载;根据预先构建的恶意文档代码特征库对所述待检测的Word文档中的可疑代码及负载进行扫描和模式匹配,获取所述待检测的Word文档的特征向量;将所述待检测的Word文档的特征向量输入至恶意文档分类模型中,获取所述恶意文档分类模型输出的分类结果;根据所述分类结果和所述待检测的Word文档的特征向量,生成所述待检测的Word文档的检测报告;其中,所述恶意文档分类模型是基于Word文档样本的特征向量和对应的分类标签进行训练获得的。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种恶意Word文档检测方法,其特征在于,包括:
提取待检测的Word文档中的可疑代码及负载;
根据预先构建的恶意文档代码特征库对所述待检测的Word文档中的可疑代码及负载进行扫描和模式匹配,获取所述待检测的Word文档的特征向量;
将所述待检测的Word文档的特征向量输入至恶意文档分类模型中,获取所述恶意文档分类模型输出的分类结果;
根据所述分类结果和所述待检测的Word文档的特征向量,生成所述待检测的Word文档的检测报告;
其中,所述恶意文档分类模型是基于Word文档样本的特征向量和对应的分类标签进行训练获得的。
2.根据权利要求1所述的方法,其特征在于,所述提取待检测的Word文档中的可疑代码及负载的步骤,具体为:
利用文件头判断待检测的Word文档的类型,并利用与类型相对应的解析方法对所述待检测的Word文档进行解析;
根据解析结果提取所述待检测Word文档中的可疑代码及负载。
3.根据权利要求1所述的方法,其特征在于,所述根据预先构建的恶意文档代码特征库对所述待检测的Word文档中的可疑代码及负载进行扫描和模式匹配的步骤之前,还包括:
构建所述恶意文档代码特征库;
其中,所述恶意文档代码特征库包括四个层次组成的多个特征,所述四个层次具体为:可疑关键字、编码方式、混淆方式和IOC。
4.根据权利要求1所述的方法,其特征在于,训练所述恶意文档分类模型的步骤,具体为:
获取大量恶意Word文档和正常Word文档,并为获取的每个Word文档打标签,构建Word文档样本库;
提取所述Word文档样本库中每个Word文档样本的可疑代码及负载,并根据所述恶意文档代码特征库对所述每个Word文档样本的可疑代码及负载进行扫描和模式匹配,获取所述每个Word文档样本的特征向量;
将所述每个Word文档样本的特征向量及对应的标签输入机器学习模型中进行训练,保存训练结束时所述机器学习模型的参数,获得恶意文档分类模型。
5.根据权利要求2所述的方法,其特征在于,所述利用与类型相对应的解析方法对所述待检测的Word文档进行解析的步骤,具体为:
若判断获知所述待检测的Word文档为2003版本,则按照复合文档对所述待检测的Word文档进行解析,获得所有目录directory;或者,
若判断获知所述待检测的Word文档为2007或2007以后的版本,则按照Open XML文档结构对所述待检测的Word文档进行解析,获得解压后的文件。
6.根据权利要求5所述的方法,其特征在于,所述根据解析结果提取所述待检测Word文档中的可疑代码及负载的步骤,具体为:
若所述待检测的Word文档为2003版本,则查看所述所有目录directory是否为数据流stream,若是,则处理数据流提取有效代码,并判断是否存在目录directory的名字为"\x01Ole10Native",若存在,则按照OLE文件格式还原该目录directory对应的数据流;或者,
若所述待检测的Word文档为2007版本或2007版本以后的版本,则提取所述待检测的Word文档中的宏代码和可疑的XML文件,并扫描所述解压后的文件,保存OLE格式文件。
7.一种恶意Word文档检测装置,其特征在于,包括:
代码提取模块,用于提取待检测的Word文档中的可疑代码及负载;
特征获取模块,用于根据预先构建的恶意文档代码特征库对所述待检测的Word文档中的可疑代码及负载进行扫描和模式匹配,获取所述待检测的Word文档的特征向量;
分类模块,用于将所述待检测的Word文档的特征向量输入至恶意文档分类模型中,获取所述恶意文档分类模型输出的分类结果;
输出模块,用于根据所述分类结果和所述待检测的Word文档的特征向量,生成所述待检测的Word文档的检测报告;
其中,所述恶意文档分类模型是基于Word文档样本的特征向量和对应的分类标签进行训练获得的。
8.根据权利要求7所述的装置,其特征在于,所述代码提取模块具体用于:
利用文件头判断待检测的Word文档的类型,并利用与类型相对应的解析方法对所述待检测的Word文档进行解析;
根据解析结果提取所述待检测Word文档中的可疑代码及负载。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至6任一所述的方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至6任一所述的方法。
CN201811601084.9A 2018-12-26 2018-12-26 恶意Word文档检测方法和装置 Active CN109858248B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811601084.9A CN109858248B (zh) 2018-12-26 2018-12-26 恶意Word文档检测方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811601084.9A CN109858248B (zh) 2018-12-26 2018-12-26 恶意Word文档检测方法和装置

Publications (2)

Publication Number Publication Date
CN109858248A true CN109858248A (zh) 2019-06-07
CN109858248B CN109858248B (zh) 2021-06-29

Family

ID=66892473

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811601084.9A Active CN109858248B (zh) 2018-12-26 2018-12-26 恶意Word文档检测方法和装置

Country Status (1)

Country Link
CN (1) CN109858248B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111177375A (zh) * 2019-12-16 2020-05-19 医渡云(北京)技术有限公司 一种电子文档分类方法及装置
CN111460446A (zh) * 2020-03-06 2020-07-28 奇安信科技集团股份有限公司 基于模型的恶意文件检测方法及装置
CN111914257A (zh) * 2020-08-04 2020-11-10 中国信息安全测评中心 文档检测的方法、装置、设备、及计算机存储介质
CN112487422A (zh) * 2020-10-28 2021-03-12 中国科学院信息工程研究所 一种恶意文档检测方法、装置、电子设备及存储介质
CN112580045A (zh) * 2020-12-11 2021-03-30 杭州安恒信息技术股份有限公司 一种基于宏加密的恶意文档的检测方法、装置和介质
CN113472721A (zh) * 2020-03-31 2021-10-01 华为技术有限公司 一种网络攻击检测方法及装置
CN113765852A (zh) * 2020-06-03 2021-12-07 深信服科技股份有限公司 数据包的检测方法、系统、存储介质和计算设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105488410A (zh) * 2015-05-19 2016-04-13 哈尔滨安天科技股份有限公司 一种excel宏表病毒的检测方法及系统
US9317679B1 (en) * 2013-06-25 2016-04-19 Symantec Corporation Systems and methods for detecting malicious documents based on component-object reuse
CN105868630A (zh) * 2016-03-24 2016-08-17 中国科学院信息工程研究所 恶意pdf文档检测方法
CN108985064A (zh) * 2018-07-16 2018-12-11 中国人民解放军战略支援部队信息工程大学 一种识别恶意文档的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9317679B1 (en) * 2013-06-25 2016-04-19 Symantec Corporation Systems and methods for detecting malicious documents based on component-object reuse
CN105488410A (zh) * 2015-05-19 2016-04-13 哈尔滨安天科技股份有限公司 一种excel宏表病毒的检测方法及系统
CN105868630A (zh) * 2016-03-24 2016-08-17 中国科学院信息工程研究所 恶意pdf文档检测方法
CN108985064A (zh) * 2018-07-16 2018-12-11 中国人民解放军战略支援部队信息工程大学 一种识别恶意文档的方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ʰ̄˦„等: "Detection of Malicious PDF based on Document Structure Features and Stream Objects", 《JOURNAL OF THE KOREA SOCIETY OF COMPUTER AND INFORMATION》 *
胡江 等: "针对JavaScript攻击的恶意PDF文档检测技术研究", 《现代计算机》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111177375A (zh) * 2019-12-16 2020-05-19 医渡云(北京)技术有限公司 一种电子文档分类方法及装置
CN111177375B (zh) * 2019-12-16 2023-06-02 医渡云(北京)技术有限公司 一种电子文档分类方法及装置
CN111460446A (zh) * 2020-03-06 2020-07-28 奇安信科技集团股份有限公司 基于模型的恶意文件检测方法及装置
CN111460446B (zh) * 2020-03-06 2023-04-11 奇安信科技集团股份有限公司 基于模型的恶意文件检测方法及装置
CN113472721A (zh) * 2020-03-31 2021-10-01 华为技术有限公司 一种网络攻击检测方法及装置
CN113765852A (zh) * 2020-06-03 2021-12-07 深信服科技股份有限公司 数据包的检测方法、系统、存储介质和计算设备
CN113765852B (zh) * 2020-06-03 2023-05-12 深信服科技股份有限公司 数据包的检测方法、系统、存储介质和计算设备
CN111914257A (zh) * 2020-08-04 2020-11-10 中国信息安全测评中心 文档检测的方法、装置、设备、及计算机存储介质
CN112487422A (zh) * 2020-10-28 2021-03-12 中国科学院信息工程研究所 一种恶意文档检测方法、装置、电子设备及存储介质
CN112580045A (zh) * 2020-12-11 2021-03-30 杭州安恒信息技术股份有限公司 一种基于宏加密的恶意文档的检测方法、装置和介质

Also Published As

Publication number Publication date
CN109858248B (zh) 2021-06-29

Similar Documents

Publication Publication Date Title
CN109858248A (zh) 恶意Word文档检测方法和装置
Chawla et al. Host based intrusion detection system with combined CNN/RNN model
Khan et al. Analysis of ResNet and GoogleNet models for malware detection
CN105956180B (zh) 一种敏感词过滤方法
US8838992B1 (en) Identification of normal scripts in computer systems
Buber et al. NLP based phishing attack detection from URLs
US20160261618A1 (en) System and method for selectively evolving phishing detection rules
US11595435B2 (en) Methods and systems for detecting phishing emails using feature extraction and machine learning
CN107659570A (zh) 基于机器学习与动静态分析的Webshell检测方法及系统
Nissim et al. Keeping pace with the creation of new malicious PDF files using an active-learning based detection framework
CN109598124A (zh) 一种webshell检测方法以及装置
CN107944274A (zh) 一种基于宽度学习的Android平台恶意应用离线检测方法
CN107463844B (zh) Web木马检测方法及系统
CN116010947A (zh) 一种基于异质网络的Android恶意软件检测方法
CN107180190A (zh) 一种基于混合特征的Android恶意软件检测方法及系统
Hoang A website defacement detection method based on machine learning techniques
Kaur et al. Detecting blind cross-site scripting attacks using machine learning
Miura et al. Macros finder: Do you remember loveletter?
CN114357443A (zh) 基于深度学习的恶意代码检测方法、设备与存储介质
Hu et al. Cross-site scripting detection with two-channel feature fusion embedded in self-attention mechanism
Hoang et al. A multi-layer model for website defacement detection
Wen et al. Detecting malicious websites in depth through analyzing topics and web-pages
Khan et al. A dynamic method of detecting malicious scripts using classifiers
US20230164180A1 (en) Phishing detection methods and systems
WO2021229786A1 (ja) 学習装置、検出装置、学習方法、検出方法、学習プログラムおよび検出プログラム

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