一种检测文件的方法及装置与流程

文档序号:17490658发布日期:2019-04-23 20:27阅读:148来源:国知局
一种检测文件的方法及装置与流程

本申请涉及计算机安全领域,具体涉及检测文件的方法,以及检测文件的装置。



背景技术:

目前,病毒、蠕虫和特洛伊木马程序等恶意软件,传播速度快、影响范围广,严重威胁网络环境安全。

所述恶意软件,是指编制者在计算机程序中插入的破坏计算机功能或者数据的代码,能影响计算机使用,能自我复制的一组计算机指令或者程序代码。其在计算机系统上执行恶意任务、通过破坏软件进程来实施控制的病毒、蠕虫和特洛伊木马程序等。

行为分析,通过模拟软件的一系列的动作特征来判断其行为是否构成威胁,是软件检测中的重要手段。

但由于软件变种频繁,对运行环境的特殊要求以及逃逸机制使得有时收集的行为不够全面,因此只通过行为分析检测软件会有一定的限制。

目前,许多病毒生成工具只是简单修改无用字符,即可使其md5值完全不同而逃脱静态过滤方法,因此病毒库需要及时添加大量病毒变种的md5值。但是,由于病毒库更新不及时,无法对病毒变种及时识别,导致较高的漏报率。



技术实现要素:

本申请提供一种检测文件的方法,一种检测文件的装置;以解决检测文件灵活性差及误报率高的问题。

为了解决上述技术问题,本申请实施例提供了如下的技术方案:

本申请提供了一种检测文件的方法,包括:

获取第一文件的第一特征信息;

判断所述第一特征信息是否与第一特征数据集中相应信息匹配;其中,所述相应信息与程序类别相关联,所述程序类别包括安全文件类别和恶意文件类别;

若是,则获得与所述相应信息相关联的所述第一文件的程序类别;

若否,则根据预设规则及所述第一文件获得所述第一文件的程序类别。

优选的,所述第一特征信息,包括:所述第一文件的二进制码的第一校验信息和所述第一文件的名称信息;所述第一特征数据集,包括:第一校验数据集;

所述判断所述第一特征信息是否与第一特征数据集中相应信息匹配,包括:

判断所述第一校验信息和所述第一文件的名称信息是否与所述第一校验数据集中相应信息匹配。

进一步的,所述第一特征信息,包括:所述第一文件的名称信息;所述第一特征数据集,包括:第一黑白名单数据集;

所述判断所述第一特征信息是否与第一特征数据集中相应信息匹配,包括:

判断所述名称信息是否与所述第一黑白名单数据集中相应信息匹配。

进一步的,所述第一特征信息,包括:所述第一文件的名称信息和数字证书信息;所述第一特征数据集,包括:第一数字证书数据集;

所述判断所述第一特征信息是否与第一特征数据集中相应信息匹配,包括:

判断所述数字证书信息是否与所述第一数字证书数据集中相应信息匹配。

优选的,所述预设规则,包括:预设第二特征规则;

所述根据预设规则及所述第一文件获得所述第一文件的程序类别,包括:

获取第一文件的第二特征信息;

根据所述预设第二特征规则及所述第二特征信息获得所述第一文件的程序类别的最大权重值;

根据所述程序类别的最大权重值获得所述第一文件的程序类别。

进一步的,所述预设规则,包括:预设机器学习模型;

所述根据预设规则及所述第一文件获得所述第一文件的程序类别,包括:

根据所述预设机器学习模型及所述第一文件获得所述第一文件的程序类别的权重值及最大权重值;

根据所述程序类别的最大权重值获得所述第一文件的程序类别。

进一步的,所述预设规则,包括:预设动态行为规则;

所述根据预设规则及所述第一文件获得所述第一文件的程序类别,包括:

根据所述预设动态行为规则及所述第一文件获得所述第一文件的动态行为恶意程度的权重值;

根据所述权重值获得所述第一文件的程序类别。

优选的,所述预设规则,包括:预设动态行为规则和预设综合规则;

所述根据预设规则及所述第一文件获得所述第一文件的程序类别,包括:

根据所述预设动态行为规则及所述第一文件获得所述第一文件的动态行为恶意程度的权重值;

根据所述预设综合规则及所述第一文件的程序类别的权重值和所述第一文件的动态行为恶意程度的权重值获得所述第一文件的程序类别。

优选的,所述方法还包括:

根据所述第一文件的程序类别调整所述第一特征数据集和/或预设规则。

本申请提供了一种检测文件的装置,包括:

获取单元,用于获取第一文件的第一特征信息;

判断单元,用于判断所述第一特征信息是否与第一特征数据集中相应信息匹配;其中,所述相应信息与程序类别相关联,所述程序类别包括安全文件类别和恶意文件类别;

匹配单元,用于若所述判断单元的输出结果为“是”,则获得与所述相应信息相关联的所述第一文件的程序类别;

非匹配单元,用于所述判断单元的输出结果为“否”,则根据预设规则及所述第一文件获得所述第一文件的程序类别。

基于上述实施例的公开可以获知,本申请实施例具备如下的有益效果:

本申请提供了一种检测文件的方法和装置,所述方法包括:获取第一文件的第一特征信息;判断所述第一特征信息是否与第一特征数据集中相应信息匹配;其中,所述相应信息与程序类别相关联,所述程序类别包括安全文件类别和恶意文件类别;若是,则获得与所述相应信息相关联的所述第一文件的程序类别;若否,则根据预设规则及所述第一文件获得所述第一文件的程序类别。本申请提出多维度静态分析,集成每种分析方式的检测能力,综合提高判定方法最终的检测率。通过增加最先匹配更新速度快的误报md5库,有效降低判定方法的误报率。具有自我修正能力,判定模块可以对产生误报的文件进行增量学习,不断修正检测误差,同时有效避免误报md5库的过度增多。

附图说明

图1为本申请实施例提供的一种检测文件的方法的流程图;

图2为本申请实施例提供的一种检测文件的装置的单元框图。

具体实施方式

下面,结合附图对本申请的具体实施例进行详细的描述,但不作为本申请的限定。

应理解的是,可以对此处公开的实施例做出各种修改。因此,上述说明书不应该视为限制,而仅是作为实施例的范例。本领域的技术人员将想到在本申请的范围和精神内的其他修改。

包含在说明书中并构成说明书的一部分的附图示出了本申请的实施例,并且与上面给出的对本申请的大致描述以及下面给出的对实施例的详细描述一起用于解释本申请的原理。

通过下面参照附图对给定为非限制性实例的实施例的优选形式的描述,本申请的这些和其它特性将会变得显而易见。

还应当理解,尽管已经参照一些具体实例对本申请进行了描述,但本领域技术人员能够确定地实现本申请的很多其它等效形式,它们具有如权利要求所述的特征并因此都位于借此所限定的保护范围内。

当结合附图时,鉴于以下详细说明,本申请的上述和其他方面、特征和优势将变得更为显而易见。

此后参照附图描述本申请的具体实施例;然而,应当理解,所公开的实施例仅仅是本申请的实例,其可采用多种方式实施。熟知和/或重复的功能和结构并未详细描述以避免不必要或多余的细节使得本申请模糊不清。因此,本文所公开的具体的结构性和功能性细节并非意在限定,而是仅仅作为权利要求的基础和代表性基础用于教导本领域技术人员以实质上任意合适的详细结构多样地使用本申请。

本说明书可使用词组“在一种实施例中”、“在另一个实施例中”、“在又一实施例中”或“在其他实施例中”,其均可指代根据本申请的相同或不同实施例中的一个或多个。

目前,病毒、蠕虫和特洛伊木马程序等恶意软件,传播速度快、影响范围广,严重威胁网络环境安全。

所述恶意软件,是指编制者在计算机程序中插入的破坏计算机功能或者数据的代码,能影响计算机使用,能自我复制的一组计算机指令或者程序代码。其在计算机系统上执行恶意任务、通过破坏软件进程来实施控制的病毒、蠕虫和特洛伊木马程序等。

但由于软件变种频繁,对运行环境的特殊要求以及逃逸机制使得有时收集的行为不够全面,因此只通过行为分析检测软件会有一定的限制。

本申请提供一种检测文件的方法;本申请还提供一种检测文件的装置。在下面的实施例中逐一进行详细说明。

对本申请提供的第一实施例,即一种检测文件的方法的实施例。

下面结合图1对本实施例进行详细说明,其中,图1为本申请实施例提供的一种检测文件的方法的流程图。

步骤s101,获取第一文件的第一特征信息。

所述第一文件,包括被怀疑可能存在恶意软件的所有文件。例如:可执行程序文件、命令文件、动态链接库文件、脚本文件。

所述第一特征信息,是指已知的检测方法中预设的特征信息。通过所述第一特征信息可以对检测文件获得三种结果:安全文件、恶意文件和未知文件。

所述未知文件,也就是在现有的特征数据集中没有记录该文件的任何信息。

步骤s102,判断所述第一特征信息是否与第一特征数据集中相应信息匹配。

其中,所述相应信息与程序类别相关联,所述程序类别包括安全文件类别和恶意文件类别。

数据集,是记录数据信息的文件,包括:数据库文件、文本文件、注册表文件、配置文件。

所述第一特征数据集,记载着已知的安全文件和恶意文件的信息。但是,由于数据集中的记录信息更新不及时的原因,或新型恶意病毒尚未被发现,可能造成所述第一特征数据集记录的信息不全面。这也是造成未知文件出现的原因。

所述相应信息与程序类别相关联,也就是所述第一特征数据集中包括:第一特征信息和程序类别。例如:所述第一特征数据集为第一特征数据表;其中,第一特征信息包括:文件名称信息和md5值信息;记录一:文件名称信息a,其md5值信息为102,安全文件;记录一:a文件,其md5值信息为302,恶意文件;当获得第一文件a后,计算所述a的md5值为102,则通过与所述第一特征数据表中记录的匹配,可以判定a为安全文件;计算所述a的md5值为302,则通过与所述第一特征数据表中记录的匹配,可以判定a为恶意文件;当获得第一文件b在所述第一特征数据表中没有记录,则可以判定b为未知文件。

所述md5值,是一种密码散列函数,可以产生出一个128位(16字节)的散列值(hashvalue),用于确保信息传输完整一致。

所述安全文件类别,也就是对安全文件进行进一步分类。

所述恶意文件类别,也就是对恶意文件进行进一步分类。例如:按破坏性分类:良性病毒、恶性病毒、极恶性病毒、灾难性病毒;按存在的媒体分类:网络病毒、文件病毒、引导型病毒。

本实施例为了解决检测文件灵活性差及误报率高的问题,采用多种检测手段相结合的方式,以提高文件检测的准确率。

采用第一黑白名单数据集是一种通常检测文件的方法。

所述第一特征信息,包括:所述第一文件的名称信息;所述第一特征数据集,包括:第一黑白名单数据集。

所述第一黑白名单数据集,包括:文件名称信息和程序类别。

则步骤s102,所述判断所述第一特征信息是否与第一特征数据集中相应信息匹配,包括:

步骤s102a,判断所述第一文件的名称信息是否与所述第一黑白名单数据集中相应信息匹配。

则步骤s103a,若所述步骤s102a的输出结果为“是”,则获得与所述相应信息相关联的所述第一文件的程序类别。

采用上述检测方法通常采用hash方式查询所述第一黑白名单数据集。但是,由于文件数据量非常庞大,导致对所述第一黑白名单数据集检索工作带来沉重负担。为了提高检索效率,本实施例在利用第一黑白名单数据集进行检测前,提供了以下的预检测方法。

所述第一特征信息,包括:所述第一文件的二进制码的第一校验信息和所述第一文件的名称信息;所述第一特征数据集,包括:第一校验数据集。

所述第一校验数据集,包括:文件名称信息、文件的二进制码的第一校验信息和程序类别。

所述文件的二进制码的第一校验信息,就是确保文件一致性的信息。例如:md5值。

则步骤s102,所述判断所述第一特征信息是否与第一特征数据集中相应信息匹配,包括:

步骤s102b,判断所述第一校验信息和所述第一文件的名称信息是否与所述第一校验数据集中相应信息匹配。

则步骤s103b,若所述步骤s102b的输出结果为“是”,则获得与所述相应信息相关联的所述第一文件的程序类别。

所述第一校验数据集,是对所述第一黑白名单数据集的补充。两个数据集中的文件名称不会重复。采用所述第一校验数据集,可有效降低误报率。该数据集会及时频繁的更新,同时解决了所述第一黑白名单数据集体量大、难以快速升级导致漏报误报的问题。当所述第一黑白名单数据集的信息升级后,将删除与所述第一黑白名单数据集中文件名称信息相同的内容。

为了进一步提高对恶意文件的检测,在对所述第一文件进行完对所述第一黑白名单数据集的检测后,还可以增加下述检测方法。

所述第一特征信息,包括:所述第一文件的数字证书信息;所述第一特征数据集,包括:第一数字证书数据集。

所述第一数字证书数据集,包括:文件名称信息、文件的数字证书信息和程序类别。

数字证书,是一个经证书授权中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件。最简单的证书包含一个公开密钥、名称以及证书授权中心的数字签名。数字证书还有一个重要的特征就是只在特定的时间段内有效。

所述文件的数字证书信息,包括:文件所属厂商信息、特征信息和有效时间信息。

则步骤s102,所述判断所述第一特征信息是否与第一特征数据集中相应信息匹配,包括:

步骤s102c,判断所述第一文件的名称信息和数字证书信息是否与所述第一数字证书数据集中相应信息匹配。

则步骤s103c,若所述步骤s102a的输出结果为“是”,则获得与所述相应信息相关联的所述第一文件的程序类别。

上述方法是对所述第一文件进行静态检测,但是,仍然存在未知文件无法检测。为了提高检测效率,本实施例将引入了动态检测的方法。

步骤s104,若所述步骤s102c的输出结果为“否”,则根据预设规则及所述第一文件获得所述第一文件的程序类别。

所述根据预设规则及所述第一文件获得所述第一文件的程序类别,也就是通过动态检测的综合方法获得所述第一文件的程序类别。

所述预设规则,也就是对动态检测方法的约束规则。例如:启发式检测规则、机器学习模型或动态行为规则。

所述预设规则,包括:预设第二特征规则。例如:启发式检测规则。

则步骤s104,所述根据预设规则及所述第一文件获得所述第一文件的程序类别,包括:

步骤s104a-1,获取第一文件的第二特征信息。

所述第二特征信息,是指文件的属性信息。例如:调试信息、导入导出函数列表、文件二进制码的特定字段信息、ip地址、域名、时间信息及校验信息。

步骤s104a-2,根据所述预设第二特征规则及所述第二特征信息获得所述第一文件的程序类别的最大权重值。

步骤s104a-3,根据所述程序类别的最大权重值获得所述第一文件的程序类别。

进一步的,所述预设规则,包括:预设机器学习模型。

则步骤s104,所述根据预设规则及所述第一文件获得所述第一文件的程序类别,包括:

步骤s104b-1,根据所述预设机器学习模型及所述第一文件获得所述第一文件的程序类别的权重值及最大权重值。

步骤s104b-2,根据所述程序类别的最大权重值获得所述第一文件的程序类别。

进一步的,所述预设规则,包括:预设动态行为规则。

则步骤s104,所述根据预设规则及所述第一文件获得所述第一文件的程序类别,包括:

步骤s104c-1,根据所述预设动态行为规则及所述第一文件获得所述第一文件的动态行为恶意程度的权重值。

步骤s104c-2,根据所述权重值获得所述第一文件的程序类别。

可选的,所述预设规则,包括:预设动态行为规则和预设综合规则;

则步骤s104,所述根据预设规则及所述第一文件获得所述第一文件的程序类别,包括:

步骤s104d-1,根据所述预设动态行为规则及所述第一文件获得所述第一文件的动态行为恶意程度的权重值;

步骤s104d-2,根据所述预设综合规则及所述第一文件的程序类别的权重值和所述第一文件的动态行为恶意程度的权重值获得所述第一文件的程序类别。

为了提高动态检测对所述方法的指导作用,本实施例还提供了自我修正的方法。

所述方法还包括:

步骤s105,根据所述第一文件的程序类别调整所述第一特征数据集和/或预设规则。

例如,将所述第一文件的程序类别添加到第一校验数据集中;将具有数字证书的所述第一文件添加到第一数字证书数据集;调整所述预设第二特征规则中所述第一文件的程序类别的权重值;调整所述预设机器学习模型中所述第一文件的程序类别的权重值;调整所述预设动态行为规则中所述第一文件的程序类别的权重值。

将判定结果反馈给各判定模块,使其自我修正,智能增强模块的判定能力。根据各判定模块的检测能力,合理调整模块对结果影响的权重,智能增强判定方法的综合检测效果。同时,通过及时更新规则和模型,提高判定方法的检测能力和效率。

本实施例提出多维度静态分析,集成每种分析方式的检测能力,综合提高判定方法最终的检测率。通过增加最先匹配更新速度快的误报md5库,有效降低判定方法的误报率。具有自我修正能力,判定模块可以对产生误报的文件进行增量学习,不断修正检测误差,同时有效避免误报md5库的过度增多。

与本申请提供的第一实施例相对应,本申请还提供了第二实施例,即一种检测文件的装置。由于第二实施例基本相似于第一实施例,所以描述得比较简单,相关的部分请参见第一实施例的对应说明即可。下述描述的装置实施例仅仅是示意性的。

图2示出了本申请提供的一种检测文件的装置的实施例。图2为本申请实施例提供的一种检测文件的装置的单元框图。

请参考图2,本申请提供一种检测文件的装置,包括:获取单元201,判断单元202,匹配单元203,非匹配单元204;

获取单元201,用于获取第一文件的第一特征信息;

判断单元202,用于判断所述第一特征信息是否与第一特征数据集中相应信息匹配;其中,所述相应信息与程序类别相关联,所述程序类别包括安全文件类别和恶意文件类别;

匹配单元203,用于若所述判断单元的输出结果为“是”,则获得与所述相应信息相关联的所述第一文件的程序类别;

非匹配单元204,用于所述判断单元的输出结果为“否”,则根据预设规则及所述第一文件获得所述第一文件的程序类别。

优选的,所述第一特征信息,包括:所述第一文件的二进制码的第一校验信息和所述第一文件的名称信息;所述第一特征数据集,包括:第一校验数据集;

在所述判断单元202中,包括:

判断一单元,用于判断所述第一校验信息和所述第一文件的名称信息是否与所述第一校验数据集中相应信息匹配。

进一步的,所述第一特征信息,包括:所述第一文件的名称信息;所述第一特征数据集,包括:第一黑白名单数据集;

在所述判断单元202中,包括:

判断二单元,用于判断所述名称信息是否与所述第一黑白名单数据集中相应信息匹配。

进一步的,所述第一特征信息,包括:所述第一文件的名称信息和数字证书信息;所述第一特征数据集,包括:第一数字证书数据集;

在所述判断单元202中,包括:

判断三单元,用于判断所述数字证书信息是否与所述第一数字证书数据集中相应信息匹配。

优选的,所述预设规则,包括:预设第二特征规则;

在所述非匹配单元204中,包括:

获取第二特征信息子单元,用于获取第一文件的第二特征信息;

获取权重值一子单元,用于根据所述预设第二特征规则及所述第二特征信息获得所述第一文件的程序类别的最大权重值;

获取程序类别一子单元,用于根据所述程序类别的最大权重值获得所述第一文件的程序类别。

进一步的,所述预设规则,包括:预设机器学习模型;

在所述非匹配单元204中,包括:

获取权重值二子单元,用于根据所述预设机器学习模型及所述第一文件获得所述第一文件的程序类别的权重值及最大权重值;

获取程序类别二子单元,用于根据所述程序类别的最大权重值获得所述第一文件的程序类别。

进一步的,所述预设规则,包括:预设动态行为规则;

在所述非匹配单元204中,包括:

获取权重值三子单元,用于根据所述预设动态行为规则及所述第一文件获得所述第一文件的动态行为恶意程度的权重值;

获取程序类别三子单元,用于根据所述权重值获得所述第一文件的程序类别。

优选的,所述预设规则,包括:预设动态行为规则和预设综合规则;

在所述非匹配单元204中,包括:

获取权重值四子单元,用于根据所述预设动态行为规则及所述第一文件获得所述第一文件的动态行为恶意程度的权重值;

获取程序类别四子单元,用于根据所述预设综合规则及所述第一文件的程序类别的权重值和所述第一文件的动态行为恶意程度的权重值获得所述第一文件的程序类别。

优选的,所述方法还包括:

修正单元,用于根据所述第一文件的程序类别调整所述第一特征数据集和/或预设规则。

本实施例提出多维度静态分析,集成每种分析方式的检测能力,综合提高判定方法最终的检测率。通过增加最先匹配更新速度快的误报md5库,有效降低判定方法的误报率。具有自我修正能力,判定模块可以对产生误报的文件进行增量学习,不断修正检测误差,同时有效避免误报md5库的过度增多。

以上实施例仅为本申请的示例性实施例,不用于限制本申请,本申请的保护范围由权利要求书限定。本领域技术人员可以在本申请的实质和保护范围内,对本申请做出各种修改或等同替换,这种修改或等同替换也应视为落在本申请的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1