CN116881913B - 一种阶段式恶意文件检测方法、装置、设备及介质 - Google Patents

一种阶段式恶意文件检测方法、装置、设备及介质 Download PDF

Info

Publication number
CN116881913B
CN116881913B CN202311131106.0A CN202311131106A CN116881913B CN 116881913 B CN116881913 B CN 116881913B CN 202311131106 A CN202311131106 A CN 202311131106A CN 116881913 B CN116881913 B CN 116881913B
Authority
CN
China
Prior art keywords
file
behavior
malicious
detected
target
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.)
Active
Application number
CN202311131106.0A
Other languages
English (en)
Other versions
CN116881913A (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.)
Beijing Antiy Network Technology Co Ltd
Original Assignee
Beijing Antiy Network Technology Co Ltd
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 Beijing Antiy Network Technology Co Ltd filed Critical Beijing Antiy Network Technology Co Ltd
Priority to CN202311131106.0A priority Critical patent/CN116881913B/zh
Publication of CN116881913A publication Critical patent/CN116881913A/zh
Application granted granted Critical
Publication of CN116881913B publication Critical patent/CN116881913B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2433Single-class perspective, e.g. one-against-all classification; Novelty detection; Outlier detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/253Fusion techniques of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/563Static detection by source code analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/565Static detection by checking file integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种阶段式恶意文件检测方法、装置、设备及介质,涉及安全检测领域,该方法包括:获取待检测文件的文件特征;得到检测结果;若检测结果表示待检测文件不为恶意文件,则获取通用文件行为信息;确定第一行为向量;得到第一融合匹配度;确定目标行为类型组;确定待检测文件的第二行为向量;将第二行为向量输入至目标模型中,得到对应的目标文件标识;若目标文件标识为恶意文件标识,则将其确定为恶意文件。本发明通过对待检测文件进行分段式检测,可以在检测出恶意文件时退出检测方法,以及根据待检测文件的文件行为,与恶意样本文件的若干恶意行为的结合进行比对,来确定待检测文件是否为恶意文件,提高了检测精度和适用性。

Description

一种阶段式恶意文件检测方法、装置、设备及介质
技术领域
本发明涉及安全检测领域,特别是涉及一种阶段式恶意文件检测方法、装置、设备及介质。
背景技术
目前的恶意文件检测方法,是通过查看文件属性、数字签名、系统检测等方式检测文件是否为恶意文件,这是一种通用的恶意文件检测方法,但是通过检测文件属性来检测恶意文件的方法准确度较差,易出现误检测的情况,而如果进行精准检测,如通过系统检测的方式对文件进行恶意检测的方法,则由于恶意文件的恶意类型种类较多,需要针对不同类型的恶意文件制定相应的检测策略,导致检测效率较低。
发明内容
有鉴于此,本发明提供一种阶段式恶意文件检测方法、装置、设备及介质,至少部分解决现有技术中存在的检测效率较低的技术问题,本发明采用的技术方案为:
根据本申请的一个方面,提供一种阶段式恶意文件检测方法,应用于文件检测系统,所述阶段式恶意文件检测方法包括如下步骤:
响应于接收到待检测文件,获取待检测文件的文件特征;
对文件特征进行检测,得到待检测文件对应的检测结果;
若待检测文件对应的检测结果表示待检测文件不为恶意文件,则获取待检测文件在第一预设时间段内进行的若干通用文件行为信息;
根据若干通用文件行为信息,确定待检测文件的第一行为向量;
根据第一行为向量与若干个第一样本向量,得到第一行为向量与每一第一样本向量对应的第一匹配度;第一样本向量为根据每一恶意行为类别对应的恶意样本文件的若干通用文件行为信息得到的;每一恶意行为类别对应有恶意行为类型组;每一恶意行为类型组包括的若干通用文件行为信息对应的恶意行为类型标识均相同;
对同一恶意行为类型组对应的若干个第一匹配度进行加权求和,得到每一恶意行为类型组对应的第一融合匹配度;
若任一第一融合匹配度大于预设匹配度阈值,则将最大第一融合匹配度对应的恶意行为类型组确定为目标行为类型组;
通过获取待检测文件在第二预设时间段内进行的目标行为类型组对应的若干文件行为信息,确定待检测文件的第二行为向量;第二预设时间段在第一预设时间段之后;
将第二行为向量输入至目标模型中,得到对应的目标文件标识;目标模型为根据恶意样本文件的文件行为进行训练得到的;目标文件标识用于标识待检测文件是否为恶意文件;
若目标文件标识为恶意文件标识,则将待检测文件确定为恶意文件。
在本申请的一种示例性实施例中,对文件特征进行检测,得到待检测文件对应的检测结果,包括:
将待检测文件的若干文件特征与对应的预设异常文件特征进行比较,得到待检测文件对应的检测结果;文件特征至少包括哈希值、文件结构信息、MD5值、文件代码特征中的一个;
若任一文件特征与对应的预设异常文件特征相同,则检测结果表示待检测文件为恶意文件;否则,检测结果表示待检测文件不为恶意文件。
在本申请的一种示例性实施例中,通用文件行为信息通过以下步骤确定:
获取m个恶意样本文件在第三预设时间段T3=[t31,t32]内进行的若干文件行为信息,得到样本文件行为信息集F=(F1,F2,...,Fj,...,Fm);Fj=(Fj1,Fj2,...,Fjd,...,Fjf(j));其中,j=1,2,...,m;d=1,2,...,f(j);f(j)为第j个恶意样本文件在T3内进行的文件行为信息的数量;Fj为第j个恶意样本文件对应的文件行为信息列表;Fjd为第j个恶意样本文件在T3内进行的第d个文件行为信息;t31<t32;t31为T3对应的起始时间;t32为T3对应的截止时间;
对F进行去重处理,得到b个目标恶意行为信息;每一目标恶意行为信息对应有若干个恶意行为类型标识;
将恶意行为类型标识的数量大于预设恶意行为类型阈值的目标恶意行为信息确定为通用文件行为信息。
在本申请的一种示例性实施例中,获取待检测文件在第一预设时间段内进行的若干通用文件行为信息,包括:
在第一预设时间段T1结束后,获取待检测文件进行的若干通用文件行为信息,得到通用文件行为信息集J=(J1,J2,...,Js,...,Jo);其中,s=1,2,...,o;o≤w;o为待检测文件在T1内进行的通用文件行为信息的数量;w为通用文件行为信息的数量;Js为待检测文件在T1内进行的第s个通用文件行为信息;T1=[t11,t12];t12>t11>t32;(t12-t11)=(t32-t31);t11为T1对应的起始时间;t12为T1对应的截止时间。
在本申请的一种示例性实施例中,第一行为向量通过以下步骤确定:
根据w个通用文件行为信息,得到通用预设行为特征向量A=(A1,A2,...,Ac,...,Aw);其中,c=1,2,...,w;Ac为A中第c个通用文件行为信息对应的行为特征;
遍历A,若Ac对应的通用文件行为信息存在于J中,则将Ac确定为1;否则,将Ac确定为0;
将A确定为待检测文件的第一行为向量。
在本申请的一种示例性实施例中,若所有第一融合匹配度均小于或等于预设匹配度阈值,则执行以下步骤:
获取待检测文件在第四预设时间段内进行的若干通用文件行为信息;第四预设时间段在第一预设时间段之后;
根据待检测文件在第四预设时间段内进行的若干通用文件行为信息,确定待检测文件的第四行为向量;
根据第四行为向量与若干个第一样本向量,得到第四行为向量与每一第一样本向量对应的第四匹配度;
对同一恶意行为类型组对应的若干个第四匹配度进行加权求和,得到每一恶意行为类型组对应的第四融合匹配度;
若任一第四融合匹配度大于预设匹配度阈值,则将最大第四融合匹配度对应的恶意行为类型组确定为目标行为类型组;否则,将待检测文件确定为安全文件。
在本申请的一种示例性实施例中,若目标文件标识不为恶意文件标识,则执行以下步骤:
根据每一第一融合匹配度的数值,对若干个恶意行为类型组进行递减排序;
根据排序后的若干个恶意行为类型组,获取待检测文件在第二预设时间段内进行的排在目标行为类型组后的恶意行为类型组对应的若干文件行为信息,确定待检测文件的第三行为向量;
将第三行为向量输入至目标模型中,得到对应的第三文件标识;
若第三文件标识为恶意文件标识,则将待检测文件确定为恶意文件;否则,获取待检测文件在第二预设时间段内进行的第三行为向量对应的恶意行为类型组之后的恶意行为类型组对应的若干文件行为信息,确定对应的文件标识,直至确定出的文件标识为恶意文件标识或确定出所有恶意行为类型组对应的文件标识。
根据本申请的一个方面,提供一种阶段式恶意文件检测装置,包括:
文件特征获取模块,用于在接收到待检测文件时,获取待检测文件的文件特征;
文件特征检测模块,用于对文件特征进行检测,得到待检测文件对应的检测结果;
通用行为获取模块,用于当待检测文件对应的检测结果表示待检测文件不为恶意文件时,获取待检测文件在第一预设时间段内进行的若干通用文件行为信息;
第一行为向量确定模块,用于根据若干通用文件行为信息,确定待检测文件的第一行为向量;
第一匹配度确定模块,用于根据第一行为向量与若干个第一样本向量,得到第一行为向量与每一第一样本向量对应的第一匹配度;第一样本向量为根据每一恶意行为类别对应的恶意样本文件的若干通用文件行为信息得到的;每一恶意行为类别对应有恶意行为类型组;每一恶意行为类型组包括的若干通用文件行为信息对应的恶意行为类型标识均相同;
第一融合匹配度确定模块,用于对同一恶意行为类型组对应的若干个第一匹配度进行加权求和,得到每一恶意行为类型组对应的第一融合匹配度;
目标行为类型组确定模块,用于当任一第一融合匹配度大于预设匹配度阈值时,将最大第一融合匹配度对应的恶意行为类型组确定为目标行为类型组;
第二行为向量确定模块,用于通过获取待检测文件在第二预设时间段内进行的目标行为类型组对应的若干文件行为信息,确定待检测文件的第二行为向量;第二预设时间段在第一预设时间段之后;
文件标识确定模块,用于将第二行为向量输入至目标模型中,得到对应的目标文件标识;目标模型为根据恶意样本文件的文件行为进行训练得到的;目标文件标识用于标识待检测文件是否为恶意文件;
恶意文件确定模块,用于当目标文件标识为恶意文件标识时,将待检测文件确定为恶意文件。
根据本申请的一个方面,提供一种非瞬时性计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现前述的阶段式恶意文件检测方法。
根据本申请的一个方面,提供一种电子设备,包括处理器和前述的非瞬时性计算机可读存储介质。
本发明至少具有以下有益效果:
本发明通过获取待检测文件的文件特征,对待检测文件进行初步检测,若其文件特征与异常文件特征相同,则将其确定为恶意文件,若其文件特征与异常文件特征均不同,则获取待检测文件进行的通用文件行为信息,得到第一行为向量,将第一行为向量与每一第一样本向量进行比较,得到对应的第一匹配度,再将同一恶意行为类型组对应的若干个第一匹配度进行加权求和,得到每一恶意行为类型组对应的第一融合匹配度,若第一融合匹配度大于预设匹配度阈值,则表示待检测文件为该恶意行为类型组对应的恶意行为类型的恶意文件的可能性较大,进一步通过获取待检测文件的针对第一融合匹配度的大小进行排序后的恶意行为类型组对应的若干文件行为信息,确定对应的行为向量,并将行为向量输入至目标模型中,得到对应的文件标识,若文件标识为恶意文件标识,则将待检测文件确定为恶意文件,否则,继续获取排序后下一位的恶意行为类型组对应的文件行为信息,对待检测文件进行判断,目标模型为根据恶意样本文件的文件行为得到的,所以,通过对待检测文件进行分段式检测,可以在检测出恶意文件时退出检测方法,节省了检测流程,以及根据待检测文件的文件行为,与恶意样本文件的若干恶意行为的结合进行比对,来确定待检测文件是否为恶意文件,在提高了检测精度的同时,也提高了适用性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的阶段式恶意文件检测方法的流程图;
图2为本发明实施例提供的所有第一融合匹配度均小于或等于预设匹配度阈值时的检测方法的流程图;
图3为本发明实施例提供的目标文件标识不为恶意文件标识时的检测方法的流程图;
图4为本发明实施例提供的阶段式恶意文件检测装置的框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种阶段式恶意文件检测方法,应用于文件检测系统,文件检测系统用于对待检测文件进行恶意检测,检测待检测文件是否为恶意文件。
如图1所示,所述阶段式恶意文件检测方法包括如下步骤:
步骤S1001、响应于接收到待检测文件,获取待检测文件的文件特征;
待检测文件即文件检测系统接收到的未经过恶意检测的文件,在文件检测系统接收到待检测文件后,获取待检测文件的文件特征,通过对待检测文件的文件特征的检测,判断待检测文件是否为恶意文件。
步骤S1002、对文件特征进行检测,得到待检测文件对应的检测结果;
文件特征的检测为对待检测文件的初步检测,由于文件特征的检测方法较为便捷,所以先对待检测文件的文件特征进行检测,若通过文件特征进行检测后的待检测文件为恶意文件,则无需进行后续的检测步骤,即可确定待检测文件为恶意文件,简化了恶意检测的流程,若通过文件特征检测的待检测文件不为恶意文件,则表示待检测文件的文件特征为正常特征,则继续进行后续的检测步骤。
进一步,步骤S1002中,对文件特征进行检测,得到待检测文件对应的检测结果,包括:
步骤S210、将待检测文件的若干文件特征与对应的预设异常文件特征进行比较,得到待检测文件对应的检测结果;文件特征至少包括哈希值、文件结构信息、MD5值、文件代码特征中的一个;
步骤S220、若任一文件特征与对应的预设异常文件特征相同,则检测结果表示待检测文件为恶意文件;否则,检测结果表示待检测文件不为恶意文件。
由于异常的文件特征的数量比正常的文件特征的数量少,且易获取,所以,将待检测文件的文件特征与异常文件特征进行对比,得到对应的检测结果,异常的文件特征可以从服务器系统的数据存储库中调取,也可以对恶意样本文件进行分析获得。
若待检测文件的其中一个文件特征与对应的异常文件特征相同,则表示该待检测文件为恶意文件,若待检测文件的所有文件特征均与对应的异常文件特征不同,则表示该待检测文件不为恶意文件,需要进行后续步骤再对待检测文件进行检测,进一步判断其是否为恶意文件。
步骤S1003、若待检测文件对应的检测结果表示待检测文件不为恶意文件,则获取待检测文件在第一预设时间段内进行的若干通用文件行为信息,并执行步骤S1004;
每一通用文件行为信息对应有一通用文件行为,通用文件行为表示若干个恶意样本文件对应的若干个恶意行为类型中均包括的文件行为,由于每个恶意行为类型中均包括所有的通用文件行为,即同一个通用文件行为对应有所有恶意行为类型,每个恶意行为类型对应的恶意样本文件在执行恶意操作时,均执行通用文件行为,对待检测文件的通用文件行为进行检测是恶意检测的第二步检测步骤,待检测文件执行的通用文件行为越多,越表示待检测文件为恶意文件。
若待检测文件对应的文件特征的检测结果表示待检测文件为恶意文件,则将待检测文件确定为恶意文件,退出检测方法;
进一步,步骤S1003中,获取待检测文件在第一预设时间段内进行的若干通用文件行为信息,包括:
在第一预设时间段T1结束后,获取待检测文件进行的若干通用文件行为信息,得到通用文件行为信息集J=(J1,J2,...,Js,...,Jo);其中,s=1,2,...,o;o≤w;o为待检测文件在T1内进行的通用文件行为信息的数量;w为通用文件行为信息的数量;Js为待检测文件在T1内进行的第s个通用文件行为信息;T1=[t11,t12];t12>t11>t32;(t12-t11)=(t32-t31);t11为T1对应的起始时间;t12为T1对应的截止时间。
第一预设时间段为文件检测系统在接收到待检测文件之后的时间段,待检测文件可以在服务器系统中进行行为监测,也可以将其置入沙箱中进行行为监测,若待检测文件的大小小于预设文件大小值,则表示其进行的行为类型较少,可以直接在服务器系统中进行行为监测,若待检测文件的大小大于或等于预设文件大小值,则表示此待检测文件的可执行行为类型较多,为了安全起见,将待检测文件置于沙箱中,让待检测文件在沙箱中进行行为监测,即使待检测文件执行了恶意行为,也不会对服务器系统造成危害,在沙箱中对待检测文件进行恶意检测,若其不为恶意文件,则将其从沙箱中移动至服务器系统中,保证了服务器系统的信息安全。
其中,通用文件行为信息通过以下步骤确定:
步骤S310、获取m个恶意样本文件在第三预设时间段T3=[t31,t32]内进行的若干文件行为信息,得到样本文件行为信息集F=(F1,F2,...,Fj,...,Fm);Fj=(Fj1,Fj2,...,Fjd,...,Fjf(j));其中,j=1,2,...,m;d=1,2,...,f(j);f(j)为第j个恶意样本文件在T3内进行的文件行为信息的数量;Fj为第j个恶意样本文件对应的文件行为信息列表;Fjd为第j个恶意样本文件在T3内进行的第d个文件行为信息;t31<t32;t31为T3对应的起始时间;t32为T3对应的截止时间;
每一目标恶意行为信息对应有一目标恶意行为,目标恶意行为通过恶意样本文件确定,恶意样本文件为已知的恶意文件,或统计的某个时段的恶意文件,或保存在服务器数据库中的历史恶意文件,获取m个恶意样本文件在T3内进行的文件行为,T3为历史时间段,由于存在不同恶意样本文件执行相同文件行为的情况,所以,要对得到的所有文件行为进行去重。
步骤S320、对F进行去重处理,得到b个目标恶意行为信息;每一目标恶意行为信息对应有若干个恶意行为类型标识;
经过对所有恶意样本文件的文件行为去重后,得到b个文件行为,将此文件行为确定为目标恶意行为,其对应的信息即目标恶意行为信息。
每一恶意样本文件对应有一恶意行为类型标识,该恶意样本文件进行的目标恶意行为也对应该恶意行为类型标识,恶意行为类型标识表示对应的恶意样本文件进行的恶意行为类型的标识,恶意行为类型即恶意攻击类型,表示对应的恶意样本文件的攻击手段。
步骤S330、将恶意行为类型标识的数量大于预设恶意行为类型阈值的目标恶意行为信息确定为通用文件行为信息。
通用文件行为信息对应的通用文件行为表示超过预设数量的恶意行为类型共有的文件行为,认为检测其可以判断恶意文件的可能性较大,故将其确定为通用文件行为。
步骤S1004、根据若干通用文件行为信息,确定待检测文件的第一行为向量;
通过获取待检测文件的通用文件行为信息,得到对应的第一行为向量,第一行为向量表示待检测文件进行的通用文件行为的数量,通过对待检测文件的通用文件行为的进一步检测,来判断待检测文件为恶意文件的可能性。
其中,第一行为向量通过以下步骤确定:
步骤S410、根据w个通用文件行为信息,得到通用预设行为特征向量A=(A1,A2,...,Ac,...,Aw);其中,c=1,2,...,w;Ac为A中第c个通用文件行为信息对应的行为特征;
步骤S420、遍历A,若Ac对应的通用文件行为信息存在于J中,则将Ac确定为1;否则,将Ac确定为0;
步骤S430、将A确定为待检测文件的第一行为向量。
将待检测文件进行的每一文件行为与每一通用文件行为进行比对,若待检测文件进行的文件行为中包括通用文件行为,则将该通用文件行为对应的通用预设行为特征向量中对应的行为特征确定为1,反之,若待检测文件进行的文件行为中不包括该通用文件行为,则将该通用文件行为对应的通用预设行为特征向量中对应的行为特征确定为0,得到待检测文件的第一行为向量。
步骤S1005、根据第一行为向量与若干个第一样本向量,得到第一行为向量与每一第一样本向量对应的第一匹配度;第一样本向量为根据每一恶意行为类别对应的恶意样本文件的若干通用文件行为信息得到的;每一恶意行为类别对应有恶意行为类型组;每一恶意行为类型组包括的若干通用文件行为信息对应的恶意行为类型标识均相同;
第一样本向量表示预设恶意攻击类型对应的恶意行为类型组中的恶意行为类别对应的若干个恶意样本文件的通用文件行为的平均向量,每个恶意行为类型组中包括若干个恶意行为类别,每个恶意行为类别对应有一个第一样本向量,在得到第一样本向量后,将每一第一样本向量与第一行为向量进行匹配度计算,得到对应的若干个第一匹配度。
其中,第一样本向量通过以下步骤确定:
步骤S510、根据每个恶意样本文件在T3内进行的通用文件行为信息,得到每一恶意样本文件对应的样本通用行为向量;
样本通用行为向量的确定方法与第一行为向量的确定方法相同,通过获取每一恶意样本文件在T3内进行的通用文件行为信息,组成对应的样本通用行为向量。
步骤S520、根据z个恶意行为类型标识,将m个恶意样本文件分为z个恶意行为类型组;
将若干个恶意样本文件根据对应的恶意行为类型标识进行分组,得到若干个样本文件组。
步骤S530、对每个恶意行为类型组中的若干个恶意样本文件进行聚类,得到每个样本文件组对应的若干个恶意行为类别,每个恶意行为类别对应有若干个恶意样本文件;
恶意行为类别表示对应的恶意行为类型组的恶意行为的类别,同一个恶意行为类型组中的若干个恶意样本文件的行为类型相同,同一个恶意行为类别中的若干个恶意样本文件的行为类别相同,将若干个恶意样本文件根据行为类别和行为类型进行分组,得到对应的匹配度,可以有效的在短时间内判断出恶意文件,提高了检测效率。
步骤S540、对每个恶意行为类别对应的若干个恶意样本文件的样本通用行为向量进行均值处理,得到每个恶意行为类别对应的第一样本向量。
步骤S1006、对同一恶意行为类型组对应的若干个第一匹配度进行加权求和,得到每一恶意行为类型组对应的第一融合匹配度;
对属于同一个恶意行为类型组的第一匹配度进行加权求和,得到的第一融合匹配度更能精准表示对应的恶意行为类型组对应的行为类型与待检测文件之间的关联关系,其中加权处理中的各个第一匹配度的权重,可以设置为同权重,也可根据第一匹配度的数值大小来分配权重。
步骤S1007、若任一第一融合匹配度大于预设匹配度阈值,则将最大第一融合匹配度对应的恶意行为类型组确定为目标行为类型组,并执行步骤S1008;
若第一融合匹配度大于预设匹配度阈值,则表示待检测文件的恶意行为倾向于对应的恶意行为类型,认为待检测文件为恶意文件的可能性较大,则继续后续的进一步检测,来确定待检测文件是否为恶意文件;反之,若所有第一融合匹配度均小于等于预设匹配度阈值,则表示待检测文件当前判断为恶意文件的可能性较小,再对待检测文件进行通用行为的监测,持续预设通用行为监测时间后,若得到的第一融合匹配度仍然均小于等于预设匹配度阈值,则将待检测文件确定为正常文件。
若所有第一融合匹配度均小于或等于预设匹配度阈值,如图2所示,则执行步骤S710-S750:
步骤S710、获取待检测文件在第四预设时间段内进行的若干通用文件行为信息;第四预设时间段在第一预设时间段之后;
第四预设时间段的长度比第一预设时间段的长度大,由于目前的攻击者可能会采用延时恶意行为的手段来窃取信息,即当待检测文件在进入服务器系统中的一段时间内不做任何恶意行为,此时,恶意检测软件会认为此待检测文件为安全文件,故将其放行,然而超过了一定时间后,待检测文件才会进行恶意行为,由于此时系统已经认定其为安全文件,故已经不对其进行特定的检测,只会对其进行常规检测,而常规检测的时间周期又很长,所以,此类延时攻击手段会对系统造成危害,故设置第四预设时间段,在第四预设时间段内一直监测待检测文件的文件行为,若发现其执行了恶意文件行为,则确定其为恶意文件,若在第四预设时间段的截止时刻仍未发现待检测文件的恶意文件行为,则认为待检测文件为安全文件。
第四预设时间段可以为目前已知的延时攻击的最长时间,也可以为用户自定的时间段。
步骤S720、根据待检测文件在第四预设时间段内进行的若干通用文件行为信息,确定待检测文件的第四行为向量;
步骤S730、根据第四行为向量与若干个第一样本向量,得到第四行为向量与每一第一样本向量对应的第四匹配度;
第四行为向量的确定方法和第一行为向量的确定方法相同,第四匹配度的确定方法和第一匹配度的确定方法相同,在此不再赘述。
步骤S740、对同一恶意行为类型组对应的若干个第四匹配度进行加权求和,得到每一恶意行为类型组对应的第四融合匹配度;
步骤S750、若任一第四融合匹配度大于预设匹配度阈值,则将最大第四融合匹配度对应的恶意行为类型组确定为目标行为类型组;否则,将待检测文件确定为安全文件。
步骤S1008、通过获取待检测文件在第二预设时间段内进行的目标行为类型组对应的若干文件行为信息,确定待检测文件的第二行为向量;第二预设时间段在第一预设时间段之后;
目标行为类型组为第一融合匹配度最大的恶意行为类型组,文件行为包括自启动、生成注册表、扫描、加密、信息窃取等行为,待检测文件的文件行为包括正常文件行为和异常文件行为,异常文件行为即对用户信息或系统信息进行窃取或盗用的行为,通过检测待检测文件在第二预设时间段内进行的目标行为类型组对应的所有文件行为,来综合判断待检测文件是否执行了恶意行为,继而判断其是否为恶意文件。
其中,第二行为向量通过以下步骤确定:
步骤S810、在第二预设时间段T2结束后,获取待检测文件进行的若干目标文件行为信息,得到目标文件行为信息集Q=(Q1,Q2,...,Qi,...,Qn);其中,i=1,2,...,n;n为待检测文件在T2内进行的目标文件行为信息的数量;Qi为待检测文件在T2内进行的第i个目标文件行为信息;T2=[t21,t22];t22>t21>t11;t21为T2对应的起始时间;t22为T2对应的截止时间;目标文件行为信息为目标行为类型组对应的文件行为信息;
步骤S820、根据b个目标恶意行为信息,得到第一预设行为特征向量E=(E1,E2,...,Ea,...,Eb);其中,a=1,2,...,b;Ea为E中第a个目标恶意行为信息对应的行为特征;
步骤S830、遍历E,若Ea对应的目标恶意行为信息存在于Q中,则将Ea确定为1;否则,将Ea确定为0;
通过检测待检测文件的文件行为中是否包含对应的目标恶意行为,若包含,则将第一预设行为特征向量中对应的行为特征确定为1,否则,将对应的行为特征确定为0。
步骤S840、将E确定为待检测文件的第二行为向量。
步骤S1009、将第二行为向量输入至目标模型中,得到对应的目标文件标识;目标模型为根据恶意样本文件的文件行为进行训练得到的;目标文件标识用于标识待检测文件是否为恶意文件;
得到第二行为向量后,将第二行为向量输入目标模型中,由目标模型输出对应的目标文件标识,通过目标文件标识判断待检测文件是否为恶意文件。
步骤S1010、若目标文件标识为恶意文件标识,则将待检测文件确定为恶意文件。
若目标文件标识不为恶意文件标识,如图3所示,则执行步骤S910-S940:
步骤S910、根据每一第一融合匹配度的数值,对若干个恶意行为类型组进行递减排序;
将所有恶意行为类型组根据对应的第一融合匹配度的数值的递减进行排序,得到排序后的若干恶意行为类型组。
步骤S920、根据排序后的若干个恶意行为类型组,获取待检测文件在第二预设时间段内进行的排在目标行为类型组后的恶意行为类型组对应的若干文件行为信息,确定待检测文件的第三行为向量;
步骤S930、将第三行为向量输入至目标模型中,得到对应的第三文件标识;
步骤S940、若第三文件标识为恶意文件标识,则将待检测文件确定为恶意文件;否则,获取待检测文件在第二预设时间段内进行的第三行为向量对应的恶意行为类型组之后的恶意行为类型组对应的若干文件行为信息,确定对应的文件标识,直至确定出的文件标识为恶意文件标识或确定出所有恶意行为类型组对应的文件标识。
由第一融合匹配度最高的恶意行为类型组对应的文件行为信息确定对应的行为向量,若其判断待检测文件不为恶意文件,则继续获取待检测文件的排序后的第二个恶意行为类型组对应的文件行为信息,确定对应的行为向量和文件标识,若其仍不为恶意文件,则继续根据排序后的恶意行为类型组的顺序获取文件行为信息,直到确定出恶意文件或所有的恶意行为类型组全部确定出文件标识,若在其中一个判断步骤中,判断待检测文件为恶意文件,则无需进行后续的检测,直接确定其为恶意文件即可,提高了检测效率。
其中,目标模型通过以下步骤确定:
步骤S801、获取m个恶意样本文件对应的恶意行为类型标识,得到恶意行为类型标识集H=(H1,H2,...,Hj,...,Hm);其中,Hj为第j个恶意样本文件对应的恶意行为类型标识;
步骤S802、将对H进行去重处理后得到的e个恶意行为类型标识确定为恶意文件标识;
由于可能存在不同的恶意样本文件的恶意行为类型标识相同的情况,所以就需对其进行去重,得到的恶意行为类型标识确定为恶意文件标识。
步骤S803、根据F,得到m个第二预设行为特征向量G1,G2,...,Gj,...,Gm;Gj=(Gj1,Gj2,...,Gja,...,Gjb);其中,Gj为第j个恶意样本文件对应的第二预设行为特征向量;Gja为第j个恶意样本文件的第a个目标恶意行为信息对应的行为特征;Gja对应的目标恶意行为与Ea对应的目标恶意行为相同;
根据恶意样本文件进行的文件行为,预设每个恶意样本文件对应的第二预设行为特征向量。
步骤S804、遍历Gj,若Gja对应的目标恶意行为信息存在于Fj中,则将Gja确定为1;否则,将Gja确定为0;
若恶意样本文件的文件行为中包括了目标恶意行为,则将其对应的第二预设行为特征向量中的行为特征确定为1,否则,确定为0。
步骤S805、将Gj确定为第j个恶意样本文件的恶意行为向量;
步骤S806、将Gj和第j个恶意样本文件对应的恶意文件标识输入至预设模型中进行训练,得到目标模型。
将每一恶意行为向量与其对应的恶意文件标识输入至预设模型中训练,得到目标模型,使目标模型根据输入的行为向量,输出对应的文件标识。
本发明通过获取待检测文件的文件特征,对待检测文件进行初步检测,若其文件特征与异常文件特征相同,则将其确定为恶意文件,若其文件特征与异常文件特征均不同,则获取待检测文件进行的通用文件行为信息,得到第一行为向量,将第一行为向量与每一第一样本向量进行比较,得到对应的第一匹配度,再将同一恶意行为类型组对应的若干个第一匹配度进行加权求和,得到每一恶意行为类型组对应的第一融合匹配度,若第一融合匹配度大于预设匹配度阈值,则表示待检测文件为该恶意行为类型组对应的恶意行为类型的恶意文件的可能性较大,进一步通过获取待检测文件的针对第一融合匹配度的大小进行排序后的恶意行为类型组对应的若干文件行为信息,确定对应的行为向量,并将行为向量输入至目标模型中,得到对应的文件标识,若文件标识为恶意文件标识,则将待检测文件确定为恶意文件,否则,继续获取排序后下一位的恶意行为类型组对应的文件行为信息,对待检测文件进行判断,目标模型为根据恶意样本文件的文件行为得到的,所以,通过对待检测文件进行分段式检测,可以在检测出恶意文件时退出检测方法,节省了检测流程,以及根据待检测文件的文件行为,与恶意样本文件的若干恶意行为的结合进行比对,来确定待检测文件是否为恶意文件,在提高了检测精度的同时,也提高了适用性。
进一步,在另一实施例中,若在T1内检测到与待检测文件具有关联关系的若干目标关联文件,则在第一预设时间段T1结束后,获取若干个目标关联文件进行的文件行为信息,得到第二文件行为信息集R=(R1,R2,...,Rg,...,Rh);Rg=(Rg1,Rg2,...,Rgk,...,Rgf(g));其中,g=1,2,...,h;k=1,2,...,f(g);h为目标关联文件的数量;f(g)为第g个目标关联文件在T1内进行的文件行为信息的数量;Rg为第g个目标关联文件对应的文件行为信息列表;Rgk为第g个目标关联文件在T1内进行的第k个文件行为信息;b个目标恶意行为信息对应有u个行为监测策略;其中,第p个行为监测策略的行为监测列表Np=(Np1,Np2,...,Npy,...,Npf(p));p=1,2,...,u;y=1,2,...,f(p);f(p)为第p个行为监测策略对应的目标恶意行为信息的数量;∑u p=1f(p)=b;Npy为第p个行为监测策略对应的第y个目标恶意行为信息。
上述方法为在待检测文件若存在目标关联文件时的检测方法,经过文件特征的比对后,获取到待检测文件的文件行为,若其在T1内存在目标关联文件,则执行下述步骤。
目标关联文件为与待检测文件具有关联关系的文件,关联关系为下载、释放、触发等关系,如待检测文件在T1内执行了下载、释放、触发等行为,并生成了对应的下载文件、释放文件、触发文件,则将对应的生成的文件确定为目标关联文件,由于目前的恶意文件存在关联窃取信息的情况,如甲文件自身并未执行信息窃取等恶意行为,但在甲文件进入服务器系统后,执行了下载行为,生成了对应的乙文件,而乙文件执行信息窃取的恶意行为,由于甲文件只执行了下载行为,而下载行为又非恶意行为,所以,以目前的安全检测方法无法对甲文件进行拦截或检测,目前的安全检测方法在检测到甲文件不具有恶意信息后,就对其进行放行,而不会对其后续生成的文件进行检测,所以,对待检测文件对应的目标关联文件也要进行相应的恶意检测。
目标恶意行为信息为目前已知的或通过恶意样本文件进行采集的恶意行为对应的信息,恶意行为即异常文件行为,每个目标恶意行为信息对应有一行为监测策略,行为监测策略为文件检测系统对待检测文件或目标关联文件的行为进行监测的方法。
步骤S001、通过每一行为监测策略,对待检测文件和目标关联文件对应的目标恶意行为信息进行监测;
每一行为监测策略对应有若干个目标恶意行为信息,即每一行为监测策略对其对应的每个目标恶意行为进行监测。
步骤S002、若在当前T1的t12时刻,E、M1,M2,...,Mg,...,Mh中的Np1,Np2,...,Npy,...,Npf(p)对应的行为特征均为1,则在下一T1的t11时刻,停止第p个行为监测策略对待检测文件和目标关联文件的行为监测。
在t12时刻,若其中一个行为监测策略对应的所有目标恶意行为均检测到执行,即待检测文件和目标关联文件在T1内,均执行了此行为监测策略对应的所有目标恶意行为,则表示该行为监测策略已经监测出了所有对应的目标恶意行为,为了降低系统算力,节省系统资源,则将该行为监测策略停掉。
步骤S003、根据Rg,确定第g个目标关联文件的关联行为向量Mg
根据每一目标关联文件对应的文件行为信息,确定对应的关联行为向量,通过关联行为向量可得知对应的目标关联文件在T1内执行的文件行为。
其中,关联行为向量通过以下步骤确定:
步骤S0031、根据b个目标恶意行为信息,得到h个第三预设行为特征向量M1,M2,...,Mg,...,Mh;Mg=(Mg1,Mg2,...,Mga,...,Mgb);其中,Mg为第g个目标关联文件对应的第三预设行为特征向量;Mga为第g个目标关联文件的第a个目标恶意行为信息对应的行为特征;Mga对应的目标恶意行为信息与Ea对应的目标恶意行为信息相同;
每一目标关联文件对应有一个第三预设行为特征向量,第三预设行为特征向量为预设的特征向量,每一第三预设行为特征向量包含的特征数量相同,且每一特征均对应有一个目标恶意行为信息,不同第三预设行为特征向量的同一个特征位置对应的目标恶意行为信息相同,如所有的第三预设行为特征向量的第一个特征均表示同一个目标恶意行为信息。
步骤S0032、遍历Mg,若Mga对应的目标恶意行为信息存在于Rg中,则将Mga确定为1;否则,将Mga确定为0;
在预设了h个第三预设行为特征向量后,将每一目标恶意行为信息与每一目标关联文件进行的文件行为进行比对,若目标关联文件进行的文件行为中包括目标恶意行为,如信息窃取行为,则将该目标关联文件对应的第三预设行为特征向量中的信息窃取行为对应的行为特征确定为1,反之,若目标关联文件进行的文件行为中不包括对应的目标恶意行为,则将其对应的行为特征确定为0。
步骤S0033、将Mg确定为第g个目标关联文件的关联行为向量。
每一关联行为向量中,若行为特征为1,则表示对应的目标关联文件在T1内执行了对应的目标恶意行为,若行为特征为0,则表示对应的目标关联文件在T1内未执行对应的目标恶意行为,所以,通过查看每一关联行为向量,即可得知对应的目标关联文件是否执行了目标恶意行为。
步骤S004、根据E、M1,M2,...,Mg,...,Mh,确定融合行为向量;
融合行为向量为根据目标行为向量和所有关联行为向量得到的向量,表示待检测文件和目标关联文件共同执行的行为的向量,由于待检测文件或单个目标关联文件所执行的行为不为恶意行为,但其进行结合后的行为可能为恶意行为,所以,需要对目标行为向量和每一关联行为向量进行融合后得到的融合行为向量进行检测。
步骤S005、将融合行为向量输入至目标模型中,得到对应的融合文件标识;
目标模型为根据恶意样本文件的恶意行为进行训练得到的模型,将融合行为向量输入目标模型中,目标模型输出融合行为向量对应的融合文件标识,通过验证融合文件标识,来确定待检测文件和其对应的目标关联文件是否为恶意文件。
步骤S006、若融合文件标识为恶意文件标识,则将待检测文件和每一目标关联文件确定为恶意文件。
一种阶段式恶意文件检测装置100,如图4所示,包括:
文件特征获取模块110,用于在接收到待检测文件时,获取待检测文件的文件特征;
文件特征检测模块120,用于对文件特征进行检测,得到待检测文件对应的检测结果;
通用行为获取模块130,用于当待检测文件对应的检测结果表示待检测文件不为恶意文件时,获取待检测文件在第一预设时间段内进行的若干通用文件行为信息;
第一行为向量确定模块140,用于根据若干通用文件行为信息,确定待检测文件的第一行为向量;
第一匹配度确定模块150,用于根据第一行为向量与若干个第一样本向量,得到第一行为向量与每一第一样本向量对应的第一匹配度;第一样本向量为根据每一恶意行为类别对应的恶意样本文件的若干通用文件行为信息得到的;每一恶意行为类别对应有恶意行为类型组;每一恶意行为类型组包括的若干通用文件行为信息对应的恶意行为类型标识均相同;
第一融合匹配度确定模块160,用于对同一恶意行为类型组对应的若干个第一匹配度进行加权求和,得到每一恶意行为类型组对应的第一融合匹配度;
目标行为类型组确定模块170,用于当任一第一融合匹配度大于预设匹配度阈值时,将最大第一融合匹配度对应的恶意行为类型组确定为目标行为类型组;
第二行为向量确定模块180,用于通过获取待检测文件在第二预设时间段内进行的目标行为类型组对应的若干文件行为信息,确定待检测文件的第二行为向量;第二预设时间段在第一预设时间段之后;
文件标识确定模块190,用于将第二行为向量输入至目标模型中,得到对应的目标文件标识;目标模型为根据恶意样本文件的文件行为进行训练得到的;目标文件标识用于标识待检测文件是否为恶意文件;
恶意文件确定模块191,用于当目标文件标识为恶意文件标识时,将待检测文件确定为恶意文件。
本发明的实施例还提供一种计算机程序产品,其包括程序代码,当所述程序产品在电子设备上运行时,所述程序代码用于使该电子设备执行本说明书上述描述的根据本发明各种示例性实施方式的方法中的步骤。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
根据本发明的这种实施方式的电子设备。电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
电子设备以通用计算设备的形式表现。电子设备的组件可以包括但不限于:上述至少一个处理器、上述至少一个储存器、连接不同系统组件(包括储存器和处理器)的总线。
其中,所述储存器存储有程序代码,所述程序代码可以被所述处理器执行,使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
储存器可以包括易失性储存器形式的可读介质,例如随机存取储存器(RAM)和/或高速缓存储存器,还可以进一步包括只读储存器(ROM)。
储存器还可以包括具有一组(至少一个)程序模块的程序/实用工具,这样的程序模块包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线可以为表示几类总线结构中的一种或多种,包括储存器总线或者储存器控制器、外围总线、图形加速端口、处理器或者使用多种总线结构中的任意总线结构的局域总线。
电子设备也可以与一个或多个外部设备(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备交互的设备通信,和/或与使得该电子设备能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口进行。并且,电子设备还可以通过网络适配器与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器通过总线与电子设备的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种阶段式恶意文件检测方法,其特征在于,应用于文件检测系统,所述方法包括如下步骤:
响应于接收到待检测文件,获取所述待检测文件的文件特征;
对所述文件特征进行检测,得到所述待检测文件对应的检测结果;
若所述待检测文件对应的检测结果表示所述待检测文件不为恶意文件,则获取所述待检测文件在第一预设时间段内进行的若干通用文件行为信息;每一所述通用文件行为信息对应有一通用文件行为,所述通用文件行为表示若干个恶意样本文件对应的若干个恶意行为类型中均包括的文件行为;
根据若干所述通用文件行为信息,确定所述待检测文件的第一行为向量;
根据所述第一行为向量与若干个第一样本向量,得到所述第一行为向量与每一所述第一样本向量对应的第一匹配度;所述第一样本向量为根据每一恶意行为类别对应的恶意样本文件的若干通用文件行为信息得到的;每一所述恶意行为类别对应有恶意行为类型组;每一所述恶意行为类型组包括的若干通用文件行为信息对应的恶意行为类型标识均相同;
对同一恶意行为类型组对应的若干个第一匹配度进行加权求和,得到每一恶意行为类型组对应的第一融合匹配度;
若任一所述第一融合匹配度大于预设匹配度阈值,则将最大第一融合匹配度对应的所述恶意行为类型组确定为目标行为类型组;
通过获取所述待检测文件在第二预设时间段内进行的所述目标行为类型组对应的若干文件行为信息,确定所述待检测文件的第二行为向量;所述第二预设时间段在所述第一预设时间段之后;
将所述第二行为向量输入至目标模型中,得到对应的目标文件标识;所述目标模型为根据恶意样本文件的文件行为进行训练得到的;所述目标文件标识用于标识所述待检测文件是否为恶意文件;
若所述目标文件标识为恶意文件标识,则将所述待检测文件确定为恶意文件。
2.根据权利要求1所述的方法,其特征在于,所述对所述文件特征进行检测,得到所述待检测文件对应的检测结果,包括:
将所述待检测文件的若干文件特征与对应的预设异常文件特征进行比较,得到所述待检测文件对应的检测结果;所述文件特征至少包括哈希值、文件结构信息、MD5值、文件代码特征中的一个;
若任一所述文件特征与对应的预设异常文件特征相同,则所述检测结果表示所述待检测文件为恶意文件;否则,所述检测结果表示所述待检测文件不为恶意文件。
3.根据权利要求1所述的方法,其特征在于,所述通用文件行为信息通过以下步骤确定:
获取m个恶意样本文件在第三预设时间段T3=[t31,t32]内进行的若干文件行为信息,得到样本文件行为信息集F=(F1,F2,...,Fj,...,Fm);Fj=(Fj1,Fj2,...,Fjd,...,Fjf(j));其中,j=1,2,...,m;d=1,2,...,f(j);f(j)为第j个恶意样本文件在T3内进行的文件行为信息的数量;Fj为第j个恶意样本文件对应的文件行为信息列表;Fjd为第j个恶意样本文件在T3内进行的第d个文件行为信息;t31<t32;t31为T3对应的起始时间;t32为T3对应的截止时间;
对F进行去重处理,得到b个目标恶意行为信息;每一所述目标恶意行为信息对应有若干个恶意行为类型标识;
将恶意行为类型标识的数量大于预设恶意行为类型阈值的目标恶意行为信息确定为通用文件行为信息。
4.根据权利要求3所述的方法,其特征在于,所述获取所述待检测文件在第一预设时间段内进行的若干通用文件行为信息,包括:
在第一预设时间段T1结束后,获取所述待检测文件进行的若干通用文件行为信息,得到通用文件行为信息集J=(J1,J2,...,Js,...,Jo);其中,s=1,2,...,o;o≤w;o为所述待检测文件在T1内进行的通用文件行为信息的数量;w为通用文件行为信息的数量;Js为所述待检测文件在T1内进行的第s个通用文件行为信息;T1=[t11,t12];t12>t11>t32;(t12-t11)=(t32-t31);t11为T1对应的起始时间;t12为T1对应的截止时间。
5.根据权利要求4所述的方法,其特征在于,所述第一行为向量通过以下步骤确定:
根据w个所述通用文件行为信息,得到通用预设行为特征向量A=(A1,A2,...,Ac,...,Aw);其中,c=1,2,...,w;Ac为A中第c个通用文件行为信息对应的行为特征;
遍历A,若Ac对应的通用文件行为信息存在于J中,则将Ac确定为1;否则,将Ac确定为0;
将A确定为所述待检测文件的第一行为向量。
6.根据权利要求1所述的方法,其特征在于,若所有所述第一融合匹配度均小于或等于预设匹配度阈值,则执行以下步骤:
获取所述待检测文件在第四预设时间段内进行的若干通用文件行为信息;所述第四预设时间段在所述第一预设时间段之后;
根据所述待检测文件在第四预设时间段内进行的若干通用文件行为信息,确定所述待检测文件的第四行为向量;
根据所述第四行为向量与若干个第一样本向量,得到所述第四行为向量与每一所述第一样本向量对应的第四匹配度;
对同一恶意行为类型组对应的若干个第四匹配度进行加权求和,得到每一恶意行为类型组对应的第四融合匹配度;
若任一所述第四融合匹配度大于预设匹配度阈值,则将最大第四融合匹配度对应的所述恶意行为类型组确定为目标行为类型组;否则,将所述待检测文件确定为安全文件。
7.根据权利要求1所述的方法,其特征在于,若所述目标文件标识不为恶意文件标识,则执行以下步骤:
根据每一第一融合匹配度的数值,对若干个所述恶意行为类型组进行递减排序;
根据排序后的若干个恶意行为类型组,获取所述待检测文件在第二预设时间段内进行的排在目标行为类型组后的恶意行为类型组对应的若干文件行为信息,确定所述待检测文件的第三行为向量;
将所述第三行为向量输入至目标模型中,得到对应的第三文件标识;
若所述第三文件标识为恶意文件标识,则将所述待检测文件确定为恶意文件;否则,获取所述待检测文件在第二预设时间段内进行的所述第三行为向量对应的恶意行为类型组之后的恶意行为类型组对应的若干文件行为信息,确定对应的文件标识,直至确定出的文件标识为恶意文件标识或确定出所有所述恶意行为类型组对应的文件标识。
8.一种阶段式恶意文件检测装置,其特征在于,包括:
文件特征获取模块,用于在接收到待检测文件时,获取待检测文件的文件特征;
文件特征检测模块,用于对文件特征进行检测,得到待检测文件对应的检测结果;
通用行为获取模块,用于当待检测文件对应的检测结果表示待检测文件不为恶意文件时,获取待检测文件在第一预设时间段内进行的若干通用文件行为信息;每一通用文件行为信息对应有一通用文件行为,通用文件行为表示若干个恶意样本文件对应的若干个恶意行为类型中均包括的文件行为;
第一行为向量确定模块,用于根据若干通用文件行为信息,确定待检测文件的第一行为向量;
第一匹配度确定模块,用于根据第一行为向量与若干个第一样本向量,得到第一行为向量与每一第一样本向量对应的第一匹配度;第一样本向量为根据每一恶意行为类别对应的恶意样本文件的若干通用文件行为信息得到的;每一恶意行为类别对应有恶意行为类型组;每一恶意行为类型组包括的若干通用文件行为信息对应的恶意行为类型标识均相同;
第一融合匹配度确定模块,用于对同一恶意行为类型组对应的若干个第一匹配度进行加权求和,得到每一恶意行为类型组对应的第一融合匹配度;
目标行为类型组确定模块,用于当任一第一融合匹配度大于预设匹配度阈值时,将最大第一融合匹配度对应的恶意行为类型组确定为目标行为类型组;
第二行为向量确定模块,用于通过获取待检测文件在第二预设时间段内进行的目标行为类型组对应的若干文件行为信息,确定待检测文件的第二行为向量;第二预设时间段在第一预设时间段之后;
文件标识确定模块,用于将第二行为向量输入至目标模型中,得到对应的目标文件标识;目标模型为根据恶意样本文件的文件行为进行训练得到的;目标文件标识用于标识待检测文件是否为恶意文件;
恶意文件确定模块,用于当目标文件标识为恶意文件标识时,将待检测文件确定为恶意文件。
9.一种非瞬时性计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,其特征在于,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如权利要求1-7中任意一项所述的阶段式恶意文件检测方法。
10.一种电子设备,其特征在于,包括处理器和权利要求9中所述的非瞬时性计算机可读存储介质。
CN202311131106.0A 2023-09-04 2023-09-04 一种阶段式恶意文件检测方法、装置、设备及介质 Active CN116881913B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311131106.0A CN116881913B (zh) 2023-09-04 2023-09-04 一种阶段式恶意文件检测方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311131106.0A CN116881913B (zh) 2023-09-04 2023-09-04 一种阶段式恶意文件检测方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN116881913A CN116881913A (zh) 2023-10-13
CN116881913B true CN116881913B (zh) 2023-11-24

Family

ID=88262444

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311131106.0A Active CN116881913B (zh) 2023-09-04 2023-09-04 一种阶段式恶意文件检测方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN116881913B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117370966A (zh) * 2023-10-16 2024-01-09 深圳市马博士网络科技有限公司 恶意文件检测方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111460446A (zh) * 2020-03-06 2020-07-28 奇安信科技集团股份有限公司 基于模型的恶意文件检测方法及装置
CN113961919A (zh) * 2020-12-23 2022-01-21 网神信息技术(北京)股份有限公司 恶意软件检测方法和装置
CN116303290A (zh) * 2023-05-16 2023-06-23 北京安天网络安全技术有限公司 一种office文档检测方法及装置、设备及介质
CN116578537A (zh) * 2023-07-12 2023-08-11 北京安天网络安全技术有限公司 文件检测方法、可读存储介质及电子设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105095755A (zh) * 2015-06-15 2015-11-25 安一恒通(北京)科技有限公司 文件识别方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111460446A (zh) * 2020-03-06 2020-07-28 奇安信科技集团股份有限公司 基于模型的恶意文件检测方法及装置
CN113961919A (zh) * 2020-12-23 2022-01-21 网神信息技术(北京)股份有限公司 恶意软件检测方法和装置
CN116303290A (zh) * 2023-05-16 2023-06-23 北京安天网络安全技术有限公司 一种office文档检测方法及装置、设备及介质
CN116578537A (zh) * 2023-07-12 2023-08-11 北京安天网络安全技术有限公司 文件检测方法、可读存储介质及电子设备

Also Published As

Publication number Publication date
CN116881913A (zh) 2023-10-13

Similar Documents

Publication Publication Date Title
KR102450834B1 (ko) 다중 특징벡터를 이용하는 행위기반 악성코드 탐지 장치 및 방법
US9842208B2 (en) Method, apparatus and system for detecting malicious process behavior
CN110390202B (zh) 用于检测业务逻辑漏洞的方法、装置、系统、设备及介质
CN116881913B (zh) 一种阶段式恶意文件检测方法、装置、设备及介质
CN110929259B (zh) 进程安全验证白名单生成方法、装置
CN109344611B (zh) 应用的访问控制方法、终端设备及介质
CN116861430B (zh) 一种恶意文件检测方法、装置、设备及介质
EP3474174A1 (en) System and method of adapting patterns of dangerous behavior of programs to the computer systems of users
CN110955890B (zh) 恶意批量访问行为的检测方法、装置和计算机存储介质
CN113312620A (zh) 一种程序安全检测方法及装置、处理器芯片、服务器
US10931693B2 (en) Computation apparatus and method for identifying attacks on a technical system on the basis of events of an event sequence
CN110210215B (zh) 一种病毒检测的方法以及相关装置
CN108256327B (zh) 一种文件检测方法及装置
CN116861429B (zh) 一种基于样本行为的恶意检测方法、装置、设备及介质
CN116861428B (zh) 一种基于关联文件的恶意检测方法、装置、设备及介质
CN116992439B (zh) 一种用户行为习惯模型确定方法及装置、设备及介质
CN111918236A (zh) 物联网安防传感器寻网方法、装置、设备及存储介质
CN116881918B (zh) 进程安全检测防护方法、装置、电子设备及介质
CN116760644B (zh) 一种终端异常判定方法、系统、存储介质及电子设备
CN117077138B (zh) 一种基于浏览器的异常检测方法、系统、介质及设备
CN117034261B (zh) 一种基于标识符的异常检测方法、装置、介质及电子设备
CN117009962B (zh) 一种基于有效标签的异常检测方法、装置、介质及设备
CN117009961B (zh) 一种行为检测规则的确定方法及装置、设备及介质
US20240054213A1 (en) Attack information generation apparatus, control method, and non-transitory computer readable medium
CN115329331A (zh) 应用程序的入侵检测方法及装置、存储介质和电子设备

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