CN112580044A - 用于检测恶意文件的系统和方法 - Google Patents
用于检测恶意文件的系统和方法 Download PDFInfo
- Publication number
- CN112580044A CN112580044A CN202010543892.5A CN202010543892A CN112580044A CN 112580044 A CN112580044 A CN 112580044A CN 202010543892 A CN202010543892 A CN 202010543892A CN 112580044 A CN112580044 A CN 112580044A
- Authority
- CN
- China
- Prior art keywords
- file
- mapping
- files
- malicious
- analyzed
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000013507 mapping Methods 0.000 claims abstract description 193
- 238000001514 detection method Methods 0.000 claims abstract description 55
- 238000012549 training Methods 0.000 claims abstract description 26
- 230000004044 response Effects 0.000 claims abstract description 5
- 238000009826 distribution Methods 0.000 claims description 10
- 230000002776 aggregation Effects 0.000 claims description 7
- 238000004220 aggregation Methods 0.000 claims description 7
- 230000006399 behavior Effects 0.000 description 49
- 238000004458 analytical method Methods 0.000 description 30
- 230000015654 memory Effects 0.000 description 23
- 230000006870 function Effects 0.000 description 16
- 230000003542 behavioural effect Effects 0.000 description 15
- 230000000694 effects Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 230000000875 corresponding effect Effects 0.000 description 11
- 230000009471 action Effects 0.000 description 9
- 230000003068 static effect Effects 0.000 description 8
- 230000004048 modification Effects 0.000 description 7
- 238000012986 modification Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000000903 blocking effect Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000002155 anti-virotic effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000006378 damage Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 3
- 238000004806 packaging method and process Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 208000015181 infectious disease Diseases 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000011524 similarity measure Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Physics & Mathematics (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
技术领域
本发明涉及信息技术(Information Technology,IT)安全领域,并且更具体地涉及恶意文件的检测。
背景技术
随着计算机技术的快速发展,各种电子设备(诸如个人计算机)和各种便携式设备(诸如笔记本电脑、平板电脑、移动电话等)目前被广泛使用。当今,这种设备是商业、工业、政府以及社交中的主要通信装置。例如,移动电话为人们提供各种功能,例如短消息服务、通信、游戏、日历、音乐等。随着计算设备的数量以及这些设备上运行的软件的数量的增长,恶意程序的数量也在快速增长。
目前存在大量种类繁多的恶意程序。一些类型的恶意程序被用于从各种用户设备中窃取个人数据和机密数据(例如用户名和密码、银行详细信息、电子文档)。其它类型的恶意程序从用户设备形成所谓的僵尸网络,以用于诸如对其它计算机进行例如分布式拒绝服务(Distributed Denial of Service,DDoS)的攻击或者用于使用所谓的暴力破解方法对用户密码进行破译。还有一些其它类型的恶意程序通过侵入式广告、垃圾邮件、向收费号码发送短信(SMS)等向用户推荐付费内容。
通常,被称为防病毒程序的专用程序用于对抗恶意程序,包括检测恶意程序、预防感染、以及恢复受恶意程序感染的计算设备的工作能力。防病毒程序采用各种技术来检测各种恶意程序,诸如:
●静态分析(包括签名分析和白名单/黑名单分析)-基于构成正在被分析的程序的文件中包含的数据,对程序的恶意性进行分析,不包括启动或仿真被分析程序的执行,同时可以使用统计分析:
○签名分析-从恶意软件签名数据库中搜索被分析程序的代码的任意部分与已知代码(签名)的对应关系;
○白名单和黑名单-在恶意软件的校验和数据库(黑名单)或安全软件的校验和数据库中(白名单)搜索从被分析程序(或其部分)计算出的校验和;
●动态分析(包括启发式分析和主动防御)-基于在执行被分析程序的过程中所获取的数据,对恶意软件程序进行分析,其中,在动态分析期间,可以使用:
○启发式分析-仿真被分析程序的工作、创建仿真日志(包含关于对应用程序接口(Application Programming Interface,API)函数的调用的数据、传递的传输参数、被分析程序的代码段等)、以及从创建的日志中搜索与来自恶意软件签名数据库中的数据匹配的数据;
○主动防御-拦截运行的被分析程序的API函数的调用、创建被分析程序的行为日志(包含关于对API函数调用的数据、传递的参数、被分析程序的代码段等)、以及从创建的日志中搜索与来自恶意调用数据的数据库中的数据匹配的数据。
静态分析方法和动态分析方法都有其优点和缺点。静态分析对其上执行分析的计算设备的资源要求较低,并且由于静态分析不需要执行或仿真被分析的程序,所以静态分析更快,但有效性较低。例如,静态分析可能具有较低的恶意软件检测百分比和较高的误报百分比(即,即使被分析的文件是安全的,通过防病毒程序也确定被分析的文件是恶意的)。由于动态分析使用在执行或仿真被分析程序期间获得的数据的事实,所以动态分析更慢并且对其上执行分析的计算设备的资源要求较高,但同时也更有效。
当前,为了可靠地检测大多数恶意程序,可能需要连续使用几种不同的检测恶意程序的方法,这通常是多余的。
例如,如果一恶意程序是众所周知的程序并且已经为其开发了检测规则,则可能不必采用动态检测方法,动态检测方法对其上进行分析的计算设备的资源要求更高。换句话说,可以通过对计算资源的要求更低的快速方法(例如,签名分析)来检测这种恶意程序。然而,如果恶意程序是新的,则快速方法的使用可能不那么有效,并且可能不会导致对此类新恶意程序的正确检测。在这种情况下,使用更有效的恶意软件检测方法可能更合适,即使此类方法对计算设备的资源要求更高。
因此,如果可以预先快速准确地确定正在被分析的恶意程序属于哪个类别,则期望选择一种通常将提供最有效水平的检测恶意程序的方法。
尽管传统的安全技术很好地处理了具有与已知恶意文件的特性特征类似的特定特性特征(即,描述来自特定文件组的文件的特定特征的数据,诸如图形界面的存在、数据加密、通过计算机网络的数据传输等)的恶意文件的检测,但是传统的安全技术经常无法检测具有与已知恶意文件的特性特征不同的特性特征的恶意文件(尽管有类似的行为)。
因此,需要选择一种检测恶意文件的方法,以更有效地利用计算机资源。
发明内容
本发明的各方面涉及文件的防病毒扫描领域。
本发明的一个技术效果在于在扫描文件中的恶意软件时优化计算资源的利用。
本发明的另一技术效果在于提高选择检测恶意文件的模式的有效性。
本发明的又一技术效果在于改变正在被分析的文件的类别。
在一个示例性方面中,一种用于检测恶意文件的方法包括:训练用于在表征一个或多个恶意文件族的概率空间中映射文件的映射模型;基于一组规则确定被分析文件的多个特性;基于确定的所述多个特性,在所述概率空间中生成所述被分析文件的映射;使用生成的所述被分析文件的映射来搜索第一数据库,以确定所述被分析文件是否与恶意文件族相关联,所述第一数据库存储与一个或多个恶意文件族相关联的映射;响应于确定所述被分析文件与恶意文件族相关联,从第二数据库中选择一种或多种恶意软件检测方法,所述第二数据库存储多种恶意软件检测方法,所选择的方法被用于检测相关联的恶意文件族。
在一方面,所述概率空间是多维空间。所述概率空间提供针对与所述被分析文件相关联的所述多个特性的概率分布。在一方面,所述被分析文件的所述多个特性中的一个特性和与所述被分析文件的行为相关联的多个属性中的一个属性的对以如下概率相匹配:由所述多个属性中的所述一个属性描述的行为对于具有所述多个特性中的所述一个特性的所述被分析文件是特有的。
在一方面,生成的所述映射包括多个参数的聚合,所述多个参数描述了与所述被分析文件相关联的面。所述面位于所述概率空间中。
在一方面,所述第一数据库包括与特定恶意文件族相关联的文件的映射。
在一方面,所述第一数据库包括与特定恶意文件族相关联的多个文件的概要映射。
在一方面,搜索所述第一数据库包括识别所述被分析文件和与恶意文件族相关联的多个文件中的一个文件之间的关联。所述被分析文件的映射和与所述恶意文件族相关联的所述一个文件的映射之间的相似度超过预定阈值。
在一方面,所述方法还包括:再训练所述映射模型,以相比于所述被分析文件的映射和与所述恶意文件族相关联的多个文件中的一个文件的映射之间的在执行所述再训练之前的所述映射模型内的相似度,增大相应的所述文件之间的在再训练后的映射模型内的对应相似度。
附图说明
并入本说明书中并构成本说明书的一部分的附图示出了本发明的一个或多个示例性方面,以及连同详细的描述一起用来阐述这些示例性方面的原理和实现方式。
图1示出了根据本发明的各方面的实现用于检测恶意文件的方法的系统的高级架构。
图2示出了根据本发明的各方面的用于检测恶意文件的方法的流程图。
图3示出了根据本发明的各方面的图示了恶意文件族在概率空间中的映射的示例的示意图。
图4示出了根据本发明的各方面的用于训练被配置为在概率空间中映射文件的映射模型的系统的高级架构。
图5示出了根据本发明的各方面的用于训练映射模型的方法的流程图。
图6示出了根据本发明的各方面的图示了基于映射的比较来选择文件的示例的示意图。
图7示出了根据本发明的各方面的用于检测恶意活动的来源的系统的高级架构。
图8示出了根据本发明的各方面的检测恶意活动的来源的方法的流程图。
图9示出了根据本发明的各方面的可以在其上实现本发明的各方面的通用计算机系统的示例。
具体实施方式
本文中在用于垃圾邮件识别的系统、方法和计算机程序产品的上下文中描述示例性方面。本领域的普通技术人员将认识到,以下描述仅仅是示例性的,而不旨在以任何方式进行限制。其它方面将很容易将其自身暗示给了解本发明的优点的本领域的技术人员。现在将详细地参考如附图中所示的示例性方面的实现方式。在所有附图和以下描述中将尽可能地使用相同的附图标记来指代相同或类似的项目。
现在将介绍将在描述本发明的不同方面时使用的许多定义和概念。
安全文件-已知其执行不能导致计算机信息的未经授权的破坏、阻断、修改、复制、或者导致计算机信息的保护手段失效的文件。
恶意文件-已知其执行能够导致计算机信息的未经授权的破坏、阻断、修改、复制、或者导致计算机信息的保护手段失效的文件。
可执行文件的恶意行为-可以在执行该文件期间执行并且已知能够导致信息的未经授权的破坏、阻断、修改、复制、或者导致计算机信息的保护手段失效的一组动作。
可执行文件的恶意活动-由该文件根据其恶意行为执行的一组动作。
可疑文件–其执行能够以一定概率导致计算机信息的未经授权的破坏、阻断、修改、复制、或者导致计算机信息的保护手段失效的文件,其中,这种概率可以基于关于文件本身的数据(文件起源的来源、开发人员信息、用户之间的受欢迎程度)或基于关于在执行文件时操作系统或应用程序的行为的数据进行评估。
有条件的安全文件-根据其声明的功能,其执行不应导致计算机信息的未经授权的破坏、阻断、修改、复制、或者导致计算机信息的保护手段失效的文件,尽管在该文件的未经授权的使用期间或当该文件被所声明的方法以外的方法使用时可以实现此结果。
本发明的各个方面使得能够选择检测恶意文件的方法。
图1示出了根据本发明的各方面的实现用于检测恶意文件的方法的系统的高级架构。
实现用于检测恶意文件的方法的系统包括文件101、恶意文件检测方法102、被配置为确定文件101的特性的文件特性确定模块110、被配置为基于映射模型121生成文件101的映射的映射模块120、搜索模块130、映射数据库131、选择模块140、恶意文件检测方法数据库141、以及再训练模块150。
根据本发明的各方面,文件特性确定模块110可以被配置为基于预定规则来确定文件101的特性。另外,文件特性确定模块110可以被配置为将确定的文件101的特性发送到映射模块120。
在一个示例性方面,文件101的特性可以包括但不限于:与文件101相关联的元数据、文件101的文件结构、与文件101相关联的封装信息、文件101的字节表示、反汇编的二进制文件101的表示、与文件101相关联的导入/导出表、文件101中包含的字符串常量、与文件101相关联的人工专家启发式算法的工作结果等。与文件101相关联的元数据可以包括但不限于:文件名、文件大小、文件类型、创建日期、修改日期、访问日期、文件访问权限等。文件101的文件结构可以包括但不限于:写在文件头中的数据、与文件节段有关的信息,诸如文件节段的大小和类型、文件节段的名称等。与文件101相关联的封装信息可以包括与封装文件101的封装器相关联的数据,诸如但不限于,封装器的名称和版本、封装参数等。与文件101相关联的人工专家启发式算法的工作结果可以包括构成一组用于搜索各种依赖性并用于计算各种加权因子等的规则的人工专家启发式算法。作为非限制性示例,文件特性确定模块110还可被配置为确定文件101的以下特性:
●文件大小(以字节计);
●节段的数量;
●签名的存在;
●熵(字符、词位等的频率分布、以及这些分布与正态分布的偏离);
●导入表的大小;
●汇编程序跳转指令的数量;
●指示文件101包含字节序列0xABCDEF1313的标志。
映射模块120可以被配置为基于确定的文件101的特性,使用经训练的映射模型121来在概率空间中生成文件101的映射。映射模块120还可以被配置为将形成的文件101的映射发送到搜索模块130。在一方面,概率空间是多维空间,在该多维空间中,文件101的特性和文件101的行为属性的每个对可以以如下概率相匹配:由给定的行为属性描述的行为对于具有那些特性的文件101是特有的。
在另一方面,文件101的映射可以包括描述位于该概率空间中的面的参数的聚合。
在本发明的另一方面,文件101的行为属性可以包括但不限于:
●由可执行文件101生成的网络流量的结构和内容;
●文件101的执行完成期间和完成之后操作系统的状态(包括操作系统对计算资源的使用,例如RAM、处理器的工作负载、链接的动态库、已启动的服务等);
●关于用户与可执行文件101交互的信息;
●对文件101进行人工专家启发式算法工作的结果。
在另一方面,可以使用以下方法中的一种或多种方法来训练映射模型121:深度学习算法、遗传算法、映射(嵌入)方法,例如但不限于,潜向量空间法、向量分布法、强化学习法等。
在另一方面,可以使用如下算法中的至少一种算法来生成文件101的映射:
●深度神经网络;
●卷积;
●递归神经网络(RNN);
●神经编码器;
●可变自动编码器;
●贝叶斯网络;
●相似性学习;
●潜在双曲空间中的表示(作为潜在非欧几里德空间或双曲嵌入中的表示的特殊情况)。
搜索模块130可以被配置为基于形成的文件101的映射在映射数据库中搜索恶意文件族。搜索模块130还可以被配置为将搜索结果发送到选择模块140。
在本方面的一个变型方面中,映射数据库131可以包括但不限于:属于给定恶意文件族的文件的映射、属于给定恶意文件族的所有文件的概要映射等。
在另一方面,搜索模块130可以在映射数据库131中搜索如下恶意文件族,这些恶意文件族包括但不限于:包含如下文件的族,该文件的映射与所形成的文件101的映射的相似度大于建立的预定阈值;具有如下概要映射的族,所有文件的概要映射与所形成的文件101的映射的相似度大于预定阈值。
在另一方面,搜索模块130可以采用以下技术中的一种或多种技术:
●最近邻搜索,例如对局部敏感的哈希、球树等;
●密度估计,例如核密度估计函数、MinCount草图。
应当注意,下面将结合图3更详细地解释搜索结果。
选择模块140可以被配置为从恶意文件检测方法数据库141中选择与在映射数据库131中找到的恶意文件族相对应的恶意文件检测方法102。
选择模块140可以进一步被配置为:如果先前已经将某个类别分配给被分析的文件101,则改变被分析的文件101的类别。这种类别可以包括但不限于:
●恶意文件类别;
●安全文件类别;
●有条件的安全文件类别;
●可疑文件类别;
●未知文件类别。
再训练模块150可以被配置为以一方式再训练映射模型121,使得所生成的文件101的映射与来自给定恶意文件族的至少一个文件的映射的相似度比再训练映射模型121之前的该相似度更大。
在一方面,映射模型121的再训练可以至少涉及:
●开始训练映射模型121;
●连续训练映射模型121,校正已知文件101的映射,并基于校正后的映射训练模型。
有利地,选择检测恶意文件的方法解决了许多前述技术问题。例如,选择最佳检测方法减少了对其上进行分析的计算设备的资源的利用,这是因为该方法仅使用具有最高有效性(例如,检测率)的专用检测手段。此外,这种选择减轻了人工处理恶意文件的分析人员的负担。换句话说,所公开的技术使得能够从给定的文件样本中选择不属于已知的恶意文件族的新文件(例如,具有鲜为人知或未知的结构或行为的文件)。本发明的各方面考虑了将被分析的文件分类为具有已知行为和结构的文件(对于这些文件已经知道了有效的检测手段)以及具有未知行为或结构的文件(对于这些文件没有已知的有效检测手段)。传统的恶意软件检测技术联合采用了几种检测手段来检测恶意文件,这是次优的。恶意软件检测的最佳方法的选择的简化算法可以包括由映射模块120执行的以下步骤:对于先前分派的用于动态分析的所有文件101,基于行为日志计算行为参数的向量:
Vi=ML2(logi),
其中,ML2是经过训练的映射模型121,其利用文件101的行为参数logi工作,
并且这些向量被保存在数据库中;
1)对于尚未经过上述分析的所有文件101,计算:
vi=ML1(logi)
其中,ML1是经过训练的映射模型,其利用文件101的特性filet工作;
2)如果计算资源可用于K个文件的动态分析,则从所有先前未处理的文件中选择K个文件,以使其与最近的先前已知文件行为日志的距离最小(该处理步骤在下面结合图4进行更详细地描述):
Novelty(file)=min{i=1..N}Distance(ML1(file),vi).
应当注意,在一些情况中:
1)可以使用文件101的显著更复杂的属性描述(文件101的特性和文件101的行为参数两者);
2)对于模型ML1、ML2可以使用显著更复杂的架构(EncF、DecF、EncL、DecL),其中,
EncF是将文件映射到概率空间的函数,
EncL是将文件行为日志映射到概率空间的函数,
DecF是将数据从概率空间映射到文件的函数,
DecL是将数据从概率空间映射到文件行为日志的函数;
3)可以使用显著更灵活的距离函数(例如,模型ML1、ML2可以将参数化分布返回到输出处的无穷维度的空间中,并且可以计算这两个分布之间的不对称相似性度量);
4)可以修改函数ML1、ML2的构造原理,例如,代替训练2个模型,可以训练4个模型:
EncF(file,Wf)→v,
EncL(log,Wl)→v,
DecF(v,Vf)→file,
DecL(v,Vl)→log,
并且训练可以力图使初始属性描述和解码属性描述之间的距离最小化:
Distance(filei,DecF(EncF(filei))),
Distance(logi,DecL(EncF(filei))),
Distance(filei,DecF(EncL(logi))),
Distance(logi,DecL(EncL(logi))),
并且最大化针对不同的文件行为日志对的对应的距离;
5)对于同一个文件,可以保存与其对应的多个行为日志(文件行为在不同时间运行时可能改变),并在评估相似性时予以考虑这多个行为日志;
6)在一些情况下,并非所有来自先前被处理的文件的表示都被保存,而是例如可以保存某些代表或质心的表示(为了节省内存/加快搜索);
7)在一些情况下,可以使用优先级链:
轻度静态分析→轻度仿真器→深度静态分析→长时间的仿真
并且可以通过类似的原理来训练模型ML1(filelight)、ML2(loglight)、ML1(filedeep)、ML2(logdeep)。
因此,在每个处理步骤之后,可以挑选出最熟悉的对象(即,基于已知的ML1(filelight)、ML2(loglight)的取平均/组合,优先进行深度静态分析的发送)。
图2示出了根据本发明的各方面的用于检测恶意文件的方法的流程图。
用于选择恶意文件检测方法的方法的流程图包括步骤210,在该步骤中,文件特性确定模块110基于预定规则来确定文件特性。在步骤220,映射模块120基于在步骤210中确定的文件特性,使用经训练的映射模型121在概率空间中生成文件101的映射。在步骤230,搜索模块130基于在步骤220中生成的文件101的映射在映射数据库131中搜索恶意文件族。
在步骤240中,选择模块140从恶意文件检测方法数据库141中选择恶意文件检测方法102。根据本发明的一方面,所选择的方法对应于在步骤230中在映射数据库131中找到的恶意文件族。此外,在步骤240中,选择模块140可以利用所选择的恶意文件检测方法来改变正在被分析的文件101的类别(如果在这之前已经为该文件分配了某个类别的话)。该类别可以包括但不限于:
●恶意文件类别;
●安全文件类别;
●有条件的安全文件类别;
●可疑文件类别;
●未知文件类别。
在步骤250中,再训练模块150再训练映射模型121,以使得所生成的文件101的映射与来自给定恶意文件族的至少一个文件的映射的相似度大于在再训练映射模型121之前的相似度。
图3示出了根据本发明的各方面的图示了恶意文件族在概率空间中的映射的示例的示意图。
恶意程序族在概率空间中的映射的图包含族AdWare.Win32.SmartInstaller的文件的映射310、族Worm.Win32.Vobrus的文件的映射320、族Backdoor.Win32.DarkKomet的文件的映射330、族Trojan.Win32.ShipUp的文件的映射340、族Trojan.Win32.AntiAV的文件的映射350、族Trojan.Win32.Bayrod的文件的映射360。图3还示出了基于这些文件的特性构建的恶意集合301中的文件的映射、基于这些文件的行为属性构建的恶意集合302中的文件的映射、基于这些文件的特性构建的给定恶意文件族303中的文件的映射、以及基于这些文件的行为属性构建的给定恶意文件族304中的文件的映射。
换句话说,图3示出了来自多个恶意文件族的文件映射的图。各个恶意文件族的文件具有相似的功能(可执行文件的行为)和相似的结构。应当注意,这种相似性意味着同一族的文件的映射被分组在概率空间的紧凑区域中。
如果某个文件101的映射也位于任一恶意文件族的文件的映射所占据的区域中,则可以以很高的概率确定该文件101也可能属于该恶意文件族。
如果某个文件101的映射位于恶意文件族的文件的映射所占据的区域之外,则可以以很高的概率确定该文件101是不属于已知恶意文件族的新变种。
在第一种情况下(当某个文件101的映射也位于任一恶意文件族的文件的映射所占据的区域中时),为了验证该某个文件101是恶意的,通常使用专门用于以很高的概率检测给定恶意文件族中的恶意文件的恶意文件检测方法中的一种方法就足够。但是,在第二种情况下(当某个文件101的映射位于恶意文件族的文件的映射所占据的区域之外时),可能需要由病毒分析人员进行更仔细的人工分析,或者需要使用多种恶意文件检测方法。如上所述,至少在一些情况下,这种分析可能需要计算资源的大量浪费。
图4示出了根据本发明的各方面的用于训练被配置为在概率空间中映射文件的映射模型的系统的高级架构。
用于训练在概率空间中映射文件的模型的系统包括:包含至少一个文件101的训练样本401、映射模型121、映射数据库131、检测方法数据库141、文件特性确定模块110、属性行为确定模块410、映射生成模块420、检测模块430以及训练模块440。
属性行为确定模块410被配置为基于动作日志来确定文件101的行为属性。可以基于对文件101的执行的分析来获得该日志。属性行为确定模块410还可以被配置为将确定的文件101的行为属性发送到映射生成模块420。
例如,属性行为确定模块410可以被配置为确定文件101的以下行为属性:
●运行的线程的数量;
●指示在注册表中进行了记录的标志;
●从计算机网络(局域网或全球网络)下载的对象的数量;
●指示访问了诱捕系统的标志;
●指示程序已绘制图形界面(使用相应的GUI功能)的标志;
●指示程序成功完成的标志;
●RAM的最大消耗。
映射生成模块420可以被配置为基于确定的文件101的特性在概率空间中生成文件101的第一映射,并且基于所确定的文件101的行为属性在概率空间中生成文件101的第二映射。映射生成模块420还可以被配置为将形成的文件映射发送到训练模块440。
在一方面,概率空间可以是多维空间,在该多维空间中,文件101的特性和文件101的行为属性的每个对以如下概率相匹配:由给定行为属性描述的行为对于具有那些特性的文件101是特有的。
在另一方面,文件101的映射可以是描述位于所述多维空间中的面的参数的聚合(例如,二阶多项式中的系数)。
检测模块430可以被配置为检测文件101,确定文件101属于哪个恶意文件族,以及确定在检测文件101期间给出正确结果的至少一种恶意文件检测方法。检测模块430还可以被配置为将确定的信息发送到训练模块440。
训练模块440可以被配置为基于生成的文件101的第一映射和第二映射来训练映射模型121。
在一方面,训练模块440可以另外被配置为将生成的与特定的恶意文件族相对应的文件101的映射添加到映射数据库131。在一方面,映射数据库131可以包括但不限于:
●属于给定恶意文件族的文件的映射;
●属于给定恶意文件族的所有文件的概要映射。
在另一方面,训练模块440可以另外被配置为将在文件101的检测期间确定的检测方法添加到检测方法数据库141中。所确定的检测方法对应于所确定的恶意文件族。
映射模型121的一简单训练变型的示例可以为:
ML1(Ffile,Wf)→{x1,x2},
ML2(Flog,Wl)→{x1,x2},
其中:
ML1是经训练的映射模型121,其利用训练样本401的特性工作;
ML2是经训练的映射模型121,其利用行为属性401工作;
Ffile是文件401的特性;
Flog是文件401的行为属性;
Wf是模型ML1的可调(可训练)参数;
W1是模型ML2的可调(可训练)参数。
例如:
如果Wf=W,则
ML1(FfileWf)
=M1({a1,a2,...,a99},W)==[{W[0]+W[1]×a1+W[2]×a2+...+W[99]×a99,W[100]+W[101]×a1+W[102]×a2+...+W[199]×a99}]
=[{x1,x2}]
在一方面,可以将多个文件(例如,N个文件,N=1000)发送到文件行为仿真器。在已经对文件行为仿真器进行微调之后,可以形成动作日志:
{(file1,log1),(file2,log2),...}
在生成日志之后,可以确定两个对象(文件或文件行为日志)之间的距离:
Distance({x1,y1},(x2,y2})=(x1-x2)2+(y1-y2)2,
Distance(file1,file2)=Distance(ML1(file1,Wf),ML1(file2,Wf)),
Distance(file,log)=Distance(ML1(file,Wf),ML2(log,Wl)),
应当注意的是,使用训练映射模型121的过程,可以选择这种参数Wf、W1,以使得文件401的映射与其对应的动作日志之间的平均距离(或者文件401的特性与文件401的行为参数之间的平均距离)将小于预定阈值。此外,可以选择Wf、W1,使得文件401与另一文件的外来动作日志之间的平均距离将大于预定阈值。
例如,误差的大小可以在数值上最小化,如以下公式所示:
图5示出了根据本发明的各方面的用于训练映射模型的方法的流程图。
用于训练用于在概率空间中映射文件的映射模型的方法的流程图包括步骤210,在该步骤中,文件特性确定模块110基于预定规则来确定文件特性。在步骤510中,属性行为确定模块410基于通过分析文件101的执行而获得的动作日志来确定文件101的文件行为属性。在步骤520中,映射生成模块420基于在步骤210中确定的文件的特性在概率空间中生成文件的第一映射,并基于在步骤510中确定的文件101的行为属性在概率空间中生成文件101的第二映射。
在步骤530中,检测模块430通过确定文件101所属的恶意文件族来检测文件101。在该步骤中,检测模块430还可以确定在检测文件101期间给出正确结果的至少一种恶意文件检测方法。在步骤540中,训练模块440基于在步骤520中生成的第一映射和第二映射训练映射模型。
另外,在步骤540中,如果检测模块430在步骤530中检测到文件101,则检测模块430将与特定恶意文件族相对应并且在步骤520中生成的文件101的映射添加到映射数据库131中。在一方面,映射数据库131可以包括但不限于:
●属于给定恶意文件族的文件的映射;
●属于给定恶意文件族的所有文件的概要映射。
结合图6更详细地解释训练的基本原理。
图6示出根据本发明的各方面的图示了基于映射的比较来选择文件的示例的示意图。
示出了基于映射的比较来选择文件的示例的该示意图包括:待被分析的文件610的集合(其包含正在被分析的文件611)、文件的映射620、以及恶意文件630的集合(其包含与正在被分析的文件611类似的恶意文件631)。
为了分析文件的恶意性,形成文件610的某个样本,在该分析期间从该样本中依次地一次选择一个文件611。
对于每个文件确定其特性(步骤210),并且在概率空间中生成文件的映射(步骤220)。接下来,将生成的映射与为恶意文件630的预定集合计算的映射进行比较620。
在该过程中,每个被分析文件611都可能与来自恶意文件630的样本中的多个文件631相匹配,这些文件631的映射类似于被分析文件611的映射。
在某些方面,可以选择用于生成文件的映射的算法,使得在其执行期间具有相似结构或具有相似行为的文件具有相似的映射(即,位于概率空间的同一区域中的映射)。
有利地,所公开的方法不仅确定文件611是否为恶意的(即类似于其它恶意文件631),而且还确定文件611是否属于任何恶意文件族。
在另一方面,上述系统和方法(图1至图6)可用于恶意集合的分类和聚类。这种分类可以将恶意文件的全部集合划分为几个不同的恶意文件族,这些恶意文件族的特征是文件的组成或行为类似。
图7示出了根据本发明的各方面的用于检测恶意活动的来源的系统的高级架构。
该用于检测恶意活动的来源的系统包括:操作系统的可执行文件701、映射模型121、映射数据库131、属性行为确定模块710、映射生成模块720、搜索模块730、文件特性确定模块740、恶意文件识别模块750、以及再训练模块760。
属性行为确定模块710被配置为基于动作日志来确定在操作系统中正在运行的文件701(文件的集合和单个文件)的行为属性。可以基于对操作系统的工作的分析来获得这些动作日志。属性行为确定模块710还可以被配置为将确定的文件701的行为属性发送到映射生成模块720。
映射生成模块720被配置为基于所确定的文件701的行为属性,使用经训练的映射模型121来在概率空间中生成文件701的映射。所述映射生成模块还可以被配置为将所生成的文件701的映射发送到搜索模块730。
在一个变型方面,概率空间可以是多维空间,在该多维空间中,文件的特性和文件的行为属性的每个对可以以如下概率相匹配:由给定行为属性描述的行为对于具有那些特性的文件是特有的。
在又一变型方面,文件的映射可以是描述位于该多维空间中的面的参数的聚合。
搜索模块730被配置为基于所生成的文件的映射在映射数据库131中搜索恶意文件族。搜索模块730还可被配置为将搜索结果发送到文件特性确定模块740。
在一方面,在映射数据库131中搜索恶意文件族。在一方面,映射数据库131可以包括但不限于:
●其映射与生成的映射的相似度大于建立的预定阈值的文件;
●与所生成的映射的相似度大于预定阈值的所有文件的概要映射。
文件特性确定模块740被配置为识别与在映射数据库131中找到的恶意文件族相对应的文件的特性。文件特性确定模块740还可以被配置为将所识别的文件的特性发送至恶意文件识别模块750。
恶意文件识别模块750被配置为搜索恶意文件,该恶意文件是操作系统中的恶意活动的来源。该识别通常对应于文件特性的识别。
再训练模块760被配置为再训练映射模型121,使得形成的文件的映射与来自给定恶意文件族的至少一个文件的映射的相似度大于在再训练映射模型121之前的相似度。
在一方面,恶意威胁的来源可能不是恶意文件本身,而是网络资源,所述网络资源至少为:
●对计算设备攻击的源(例如,DDoS攻击、漏洞的部署等);
●恶意文件在计算设备上的传播源(例如,在使用恶意软件下载器时,等等)。
换句话说,恶意文件识别模块750可以被配置为基于对确定的操作系统的文件701的行为属性的分析来确定在计算设备上已经发生了恶意活动。恶意文件识别模块750还能够确定所确定的恶意活动的来源,该来源可以包括某种网络资源(从其下载了恶意文件的站点、进行了DDoS攻击的IP地址等)。
因此,所公开的系统被配置为抵抗和阻碍各种目标攻击(APT-高级持续威胁)。
图8示出了根据本发明的各方面的检测恶意活动的来源的方法的流程图。
该检测恶意活动的来源的方法的流程图包含步骤810,在该步骤中,属性行为确定模块710基于行为日志确定在操作系统中运行的文件的行为属性。在一方面,可以基于对操作系统的工作的分析来获得这种动作日志。在步骤820中,映射生成模块720基于在步骤810中确定的文件701的行为属性,使用经训练的映射模型121在概率空间中生成文件701的映射。在步骤830中,搜索模块730基于在步骤820中生成的文件701的映射在映射数据库131中搜索恶意文件族。
在步骤840中,文件特性确定模块740识别与步骤830中在映射数据库131中找到的恶意文件族相对应的文件的特性。在步骤850中,恶意文件识别模块750确定可能是操作系统中恶意活动的来源的恶意文件。所识别的恶意文件可以具有在步骤840中识别的文件的相应特性。在步骤860中,再训练模块760再训练映射模型121,使得所生成的文件701的映射与来自给定恶意文件族的至少一个文件的映射的相似度大于在再训练映射模型121之前的相似度。
图9为示出根据示例性方面的其上可实施用于检测恶意文件的系统和方法的各方面的计算机系统20的框图。计算机系统20可以表示图1的计算机系统100、图4的计算机系统400和图7的计算机系统700,并且计算机系统20可以为多个计算设备的形式、或为单个计算设备的形式,例如:台式电脑、笔记本电脑、手提电脑、移动计算设备、智能手机、平板电脑、服务器、大型机、嵌入式设备和其它形式的计算设备。
如图所示,计算机系统20包括中央处理单元(Central Processing Unit,CPU)21、系统存储器22和连接各种系统部件的系统总线23,各种系统部件包括与中央处理单元21相关联的存储器。系统总线23可以包括总线存储器或总线存储器控制器、外围总线、以及能够与任何其它的总线架构交互的本地总线。总线的示例可以包括PCI、ISA、串行总线(PCI-Express)、超传输TM(HyperTransportTM)、无限带宽TM(InfiniBandTM)、串行ATA、I2C、和其它合适的互连。中央处理单元21(也称为处理器)可以包括单组或多组具有单核或多核的处理器。处理器21可以执行实现本发明的技术的一种或多种计算机可执行代码。系统存储器22可以为用于存储本文中所使用的数据和/或由处理器21可执行的计算机程序的任何存储器。系统存储器22可以包括易失性存储器(诸如随机存取存储器(Random Access Memory,RAM)25)和非易失性存储器(诸如只读存储器(Read-Only Memory,ROM)24、闪存等)或其任何组合。基本输入/输出系统(Basic Input/Output System,BIOS)26可以存储用于在计算机系统20的元件之间传输信息的基本程序,例如在使用ROM 24加载操作系统时的那些基本程序。
计算机系统20可以包括一个或多个存储设备,诸如一个或多个可移除存储设备27、一个或多个不可移除存储设备28、或其组合。所述一个或多个可移除存储设备27和一个或多个不可移除存储设备28借助存储器接口32连接到系统总线23。在一方面,存储设备和相应的计算机可读存储介质为用于存储计算机系统20的计算机指令、数据结构、程序模块、和其它数据的电源独立的模块。系统存储器22、可移除存储设备27和不可移除存储设备28可以使用各种各样的计算机可读存储介质。计算机可读存储介质的示例包括:机器存储器,诸如缓存、SRAM、DRAM、零电容RAM、双晶体管RAM、eDRAM、EDO RAM、DDR RAM、EEPROM、NRAM、RRAM、SONOS、PRAM;闪存或其它存储技术,诸如在固态驱动器(Solid State Drive,SSD)或闪盘驱动器中;磁带盒、磁带、和磁盘存储器,诸如在硬盘驱动器或软盘驱动器中;光学存储器,诸如在光盘(CD-ROM)或数字通用光盘(Digital Versatile Disk,DVD)中;以及可用于存储期望数据且可被计算机系统20访问的任何其它介质。
计算机系统20的系统存储器22、可移除存储设备27和不可移除存储设备28可以用于存储操作系统35、附加程序应用37、其它程序模块38和程序数据39。计算机系统20可以包括用于传送来自输入设备40的数据的外围接口46,该输入设备40诸如键盘、鼠标、光笔、游戏控制器、语音输入设备、触点输入设备、或其它外围设备,诸如借助一个或多个I/O端口的打印机或扫描仪,该一个或多个I/O端口诸如串行端口、并行端口、通用串行总线(Universal Serial Bus,USB)、或其它外围接口。显示设备47(诸如一个或多个监控器、投影仪或集成显示器)也可以通过输出接口48(诸如视频适配器)连接到系统总线23。除了显示设备47之外,计算机系统20还可以装配有其它外围输出设备(未示出),诸如扬声器和其它视听设备。
计算机系统20可以使用与一个或多个远程计算机49的网络连接而工作在网络环境中。所述一个或多个远程计算机49可以为本地计算机工作站或服务器,其包括前面在描述计算机系统20的性质时所述的元件中的大多数元件或全部元件。其它设备也可以存在于计算机网络中,诸如但不限于路由器、网站、对等设备或其它的网络节点。计算机系统20可以包括用于借助一个或多个网络而与远程计算机49通信的一个或多个网络接口51或网络适配器,该一个或多个网络诸如局域计算机网络(Local-Area computer Network,LAN)50、广域计算机网络(Wide-Area computer Network,WAN)、内联网、和因特网。网络接口51的示例可以包括以太网接口、帧中继接口、同步光纤网(SONET)接口、和无线接口。
本发明的各个方面可以为系统、方法和/或计算机程序产品。计算机程序产品可以包括一种或多种计算机可读存储介质,该计算机可读存储介质上具有用于使处理器执行本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以为有形设备,该有形设备可以保持且存储以指令或数据结构的形式的程序代码,该程序代码可以被计算设备的处理器(诸如计算机系统20)访问。计算机可读存储介质可以为电子存储设备、磁性存储设备、光学存储设备、电磁存储设备、半导体存储设备、或其任何合适的组合。通过示例方式,这类计算机可读存储介质可以包括随机存取存储器(RAM)、只读存储器(ROM)、电可擦可编程只读存储器(EEPROM)、便携式光盘只读存储器(CD-ROM)、数字通用光盘(DVD)、闪存、硬盘、便携式电脑磁盘、记忆棒、软盘、或甚至机械编码设备,诸如在其上记录有指令的凹槽中的打孔卡或凸起结构。如在本文中所使用的,计算机可读存储介质不应被视为暂时性信号本身,暂时性信号诸如无线电波或其它自由传播的电磁波、通过波导或传输介质传播的电磁波、或通过电线传输的电信号。
可以将本文中所描述的计算机可读程序指令从计算机可读存储介质下载到各个计算设备、或借助网络(例如,因特网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。该网络可以包括铜传输线缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。在每个计算设备中的网络接口从网络接收计算机可读程序指令并转发该计算机可读程序指令,用以存储在各个计算设备内的计算机可读存储介质中。
用于执行本发明的操作的计算机可读程序指令可以为汇编指令、指令集架构(Instruction-Set-Architecture,ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或以一种或多种编程语言(包括面向对象的编程语言和传统程序化编程语言)的任何组合编写的源代码或目标代码。计算机可读程序指令可以作为独立的软件包完全地在用户的计算机上、部分地在用户的计算机上、部分地在用户的计算机上且部分地在远程计算机上、或完全地在远程计算机或服务器上执行。在后一种场景中,远程计算机可以通过任何类型的网络(包括LAN或WAN)连接到用户的计算机,或可以(例如通过因特网)进行与外部计算机的连接。在一些实施方式中,电子电路(包括例如可编程逻辑电路、现场可编程门阵列(FPGA)、或可编程逻辑阵列(Programmable Logic Array,PLA))可以通过利用计算机可读程序指令的状态信息使该电子电路个性化而执行计算机可读程序指令,从而执行本发明的各个方面。
在各个方面中,本发明中所描述的系统和方法可以按照模块来处理。如本文中所使用的术语“模块”指的是例如现实世界的设备、部件、或使用硬件(例如通过专用集成电路(ASIC)或FPGA)实现的部件的布置,或者指的是硬件和软件的组合,例如通过微处理器系统和实现模块功能的指令集(该指令集在被执行时将微处理器系统转换成专用设备)来实现这样的组合。一个模块还可以被实施为两个模块的组合,其中单独地通过硬件促进某些功能,并且通过硬件和软件的组合促进其它功能。在某些实现方式中,模块的至少一部分(以及在一些情况下,模块的全部)可以在计算机系统的处理器上运行。因此,每个模块可以以各种适合的配置来实现,而不应受限于本文中所例示的任何特定的实现方式。
为了清楚起见,本文中没有公开各个方面的所有例行特征。应当领会的是,在本发明的任何实际的实现方式的开发中,必须做出许多专用于实现方式的决定,以便实现开发者的特定目标,并且这些特定目标将对于不同的实现方式和不同的开发者变化。应当理解的是,这种开发努力会是复杂的且费时的,但对于了解本发明的优点的本领域的普通技术人员来说仍然是工程的例行任务。
此外,应当理解的是,本文中所使用的措辞或术语出于描述而非限制的目的,从而本说明书的术语或措辞应当由本领域技术人员根据本文中所提出的教导和指导结合(一个或多个)相关领域的技术人员的知识来解释。此外,不旨在将本说明书或权利要求中的任何术语归于不常见的或特定的含义,除非明确如此阐述。
本文中所公开的各个方面包括本文中以说明性方式提到的已知模块的现在和未来已知的等同物。此外,尽管已经示出并描述了各个方面和应用,但是对于了解本发明的优点的本领域技术人员将明显的是,在不脱离本文中所公开的发明构思的前提下,相比于上文所提及的内容而言的更多修改是可行的。
Claims (20)
1.一种用于检测恶意文件的方法,所述方法包括:
训练用于在表征一个或多个恶意文件族的概率空间中映射文件的映射模型;
基于一组规则确定被分析文件的多个特性;
使用所述映射模型,基于确定的所述多个特性,在所述概率空间中生成所述被分析文件的映射;
使用生成的所述被分析文件的映射来搜索第一数据库,以确定所述被分析文件是否与恶意文件族相关联,其中,所述第一数据库存储与一个或多个恶意文件族相关联的映射;以及
响应于确定所述被分析文件与所述恶意文件族相关联,而从第二数据库中选择一种或多种恶意软件检测方法,其中,所述第二数据库存储多种恶意软件检测方法,并且所选择的一种或多种恶意软件检测方法被用于检测相关联的恶意文件族。
2.如权利要求1所述的方法,其中,所述概率空间包括多维空间,并且所述概率空间提供针对与所述被分析文件相关联的所述多个特性的概率分布。
3.如权利要求2所述的方法,其中,生成的所述映射包括多个参数的聚合,所述多个参数描述了与所述被分析文件相关联的面,并且所述面位于所述概率空间中。
4.如权利要求2所述的方法,其中,所述概率空间包括多维空间,在所述多维空间中,所述文件的所述多个特性中的一个特性和与所述文件的行为相关联的多个属性中的一个属性的对以如下概率相匹配:由所述多个属性中的所述一个属性描述的行为对于具有所述多个特性中的所述一个特性的所述文件是特有的。
5.如权利要求1所述的方法,其中,所述第一数据库包括与特定恶意文件族相关联的文件的映射或与特定恶意文件族相关联的多个文件的概要映射。
6.如权利要求5所述的方法,其中,搜索所述第一数据库还包括识别所述被分析文件和与所述恶意文件族相关联的所述多个文件中的一个文件之间的关联,其中,所述被分析文件的映射和与所述恶意文件族相关联的所述一个文件的映射之间的相似度超过预定阈值。
7.如权利要求1所述的方法,还包括再训练所述映射模型,以相比于所述被分析文件的映射和与所述恶意文件族相关联的多个文件中的一个文件的映射之间的在执行所述再训练之前的所述映射模型内的相似度,增大了相应的所述文件之间的在再训练后的所述映射模型内的对应相似度。
8.一种用于检测恶意文件的系统,所述系统包括:
硬件处理器,所述硬件处理器被配置为:
训练用于在表征一个或多个恶意文件族的概率空间中映射文件的映射模型;
基于一组规则确定被分析文件的多个特性;
基于确定的所述多个特性,在所述概率空间中生成所述被分析文件的映射;
使用生成的所述被分析文件的映射来搜索第一数据库,以确定所述被分析文件是否与恶意文件族相关联,其中,所述第一数据库存储与一个或多个恶意文件族相关联的映射;以及
响应于确定所述被分析文件与所述恶意文件族相关联,而从第二数据库中选择一种或多种恶意软件检测方法,其中,所述第二数据库存储多种恶意软件检测方法,并且所选择的一种或多种恶意软件检测方法被用于检测相关联的恶意文件族。
9.如权利要求8所述的系统,其中,所述概率空间包括多维空间,并且所述概率空间提供针对与所述被分析文件相关联的所述多个特性的概率分布。
10.如权利要求9所述的系统,其中,生成的所述映射包括多个参数的聚合,所述多个参数描述了与所述被分析文件相关联的面,并且所述面位于所述概率空间中。
11.如权利要求9所述的系统,其中,所述概率空间包括多维空间,在所述多维空间中,所述文件的所述多个特性中的一个特性和与所述文件的行为相关联的多个属性中的一个属性的对以如下概率相匹配:由所述多个属性中的所述一个属性描述的行为对于具有所述多个特性中的所述一个特性的所述文件是特有的。
12.如权利要求8所述的系统,其中,所述第一数据库包括与特定恶意文件族相关联的文件的映射或与特定恶意文件族相关联的多个文件的概要映射。
13.如权利要求12所述的系统,其中,被配置为搜索所述第一数据库的所述硬件处理器还被配置为识别所述被分析文件和与所述恶意文件族相关联的所述多个文件中的一个文件之间的关联,其中,所述被分析文件的映射和与所述恶意文件族相关联的所述一个文件的映射之间的相似度超过预定阈值。
14.如权利要求8所述的系统,其中,所述硬件处理器还被配置为再训练所述映射模型,以相比于所述被分析文件的映射和与所述恶意文件族相关联的多个文件中的一个文件的映射之间的在执行所述再训练之前的所述映射模型内的相似度,增大了相应的所述文件之间的在再训练后的所述映射模型内的对应相似度。
15.一种非暂时性计算机可读介质,所述非暂时性计算机可读介质上存储有用于检测恶意文件的计算机可执行指令,所述计算机可执行指令包括用于以下操作的指令:
训练用于在表征一个或多个恶意文件族的概率空间中映射文件的映射模型;
基于一组规则确定被分析文件的多个特性;
基于确定的所述多个特性,在所述概率空间中生成所述被分析文件的映射;
使用生成的所述被分析文件的映射来搜索第一数据库,以确定所述被分析文件是否与恶意文件族相关联,其中,所述第一数据库存储与一个或多个恶意文件族相关联的映射;以及
响应于确定所述被分析文件与所述恶意文件族相关联,而从第二数据库中选择一种或多种恶意软件检测方法,其中,所述第二数据库存储多种恶意软件检测方法,并且所选择的一种或多种恶意软件检测方法被用于检测相关联的恶意文件族。
16.如权利要求15所述的非暂时性计算机可读介质,其中,所述概率空间包括多维空间,并且所述概率空间提供针对与所述被分析文件相关联的所述多个特性的概率分布。
17.如权利要求16所述的非暂时性计算机可读介质,其中,生成的所述映射包括多个参数的聚合,所述多个参数描述了与所述被分析文件相关联的面,并且所述面位于所述概率空间中。
18.如权利要求16所述的非暂时性计算机可读介质,其中,所述概率空间包括多维空间,在所述多维空间中,所述文件的所述多个特性中的一个特性和与所述文件的行为相关联的多个属性中的一个属性的对以如下概率相匹配:由所述多个属性中的所述一个属性描述的行为对于具有所述多个特性中的所述一个特性的所述文件是特有的。
19.如权利要求15所述的非暂时性计算机可读介质,其中,搜索所述第一数据库还包括识别所述被分析文件和与所述恶意文件族相关联的多个文件中的一个文件之间的关联,其中,所述被分析文件的映射和与所述恶意文件族相关联的所述一个文件的映射之间的相似度超过预定阈值。
20.如权利要求15所述的非暂时性计算机可读介质,其中,所述计算机可执行指令还包括用于以下操作的指令:再训练所述映射模型,以相比于所述被分析文件的映射和与所述恶意文件族相关联的多个文件中的一个文件的映射之间的在执行所述再训练之前的所述映射模型内的相似度,增大了相应的所述文件之间的在再训练后的所述映射模型内的对应相似度。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2019130601 | 2019-09-30 | ||
RU2019130601A RU2739830C1 (ru) | 2019-09-30 | 2019-09-30 | Система и способ выбора средства обнаружения вредоносных файлов |
US16/815,170 | 2020-03-11 | ||
US16/815,170 US11379581B2 (en) | 2019-09-30 | 2020-03-11 | System and method for detection of malicious files |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112580044A true CN112580044A (zh) | 2021-03-30 |
Family
ID=71083435
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010543892.5A Pending CN112580044A (zh) | 2019-09-30 | 2020-06-15 | 用于检测恶意文件的系统和方法 |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP3798885B1 (zh) |
CN (1) | CN112580044A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113904796A (zh) * | 2021-08-27 | 2022-01-07 | 国家计算机网络与信息安全管理中心 | 网络安全检测用流量的设备后门检测方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115664843B (zh) * | 2022-11-21 | 2023-03-10 | 北京长亭未来科技有限公司 | 针对Web攻击的主动欺骗防御方法、系统、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100180344A1 (en) * | 2009-01-10 | 2010-07-15 | Kaspersky Labs ZAO | Systems and Methods For Malware Classification |
US20180114018A1 (en) * | 2016-10-26 | 2018-04-26 | Fortinet, Inc. | Malware detection and classification based on memory semantic analysis |
CN109684836A (zh) * | 2017-10-18 | 2019-04-26 | 卡巴斯基实验室股份制公司 | 使用经训练的机器学习模型检测恶意文件的系统和方法 |
-
2020
- 2020-06-09 EP EP20179074.8A patent/EP3798885B1/en active Active
- 2020-06-15 CN CN202010543892.5A patent/CN112580044A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100180344A1 (en) * | 2009-01-10 | 2010-07-15 | Kaspersky Labs ZAO | Systems and Methods For Malware Classification |
US20180114018A1 (en) * | 2016-10-26 | 2018-04-26 | Fortinet, Inc. | Malware detection and classification based on memory semantic analysis |
CN109684836A (zh) * | 2017-10-18 | 2019-04-26 | 卡巴斯基实验室股份制公司 | 使用经训练的机器学习模型检测恶意文件的系统和方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113904796A (zh) * | 2021-08-27 | 2022-01-07 | 国家计算机网络与信息安全管理中心 | 网络安全检测用流量的设备后门检测方法 |
CN113904796B (zh) * | 2021-08-27 | 2023-11-17 | 国家计算机网络与信息安全管理中心 | 网络流量安全检测的设备后门检测方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3798885A1 (en) | 2021-03-31 |
EP3798885B1 (en) | 2023-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Gopinath et al. | A comprehensive survey on deep learning based malware detection techniques | |
Aslan et al. | A comprehensive review on malware detection approaches | |
CN110659483B (zh) | 使用在一个恶意文件上训练的学习模型识别多个恶意文件的系统和方法 | |
CN109145600B (zh) | 使用静态分析元素检测恶意文件的系统和方法 | |
CN111382430B (zh) | 用于对计算机系统的对象进行分类的系统和方法 | |
US11379581B2 (en) | System and method for detection of malicious files | |
Komatwar et al. | Retracted article: a survey on malware detection and classification | |
CN111382434B (zh) | 用于检测恶意文件的系统和方法 | |
JP2019079493A (ja) | 機械学習を用いる悪意のあるファイルを検出するシステムおよび方法 | |
El Boujnouni et al. | New malware detection framework based on N-grams and support vector domain description | |
US11574054B2 (en) | System, method and apparatus for malicious software detection | |
CN112580044A (zh) | 用于检测恶意文件的系统和方法 | |
Li et al. | Deep learning algorithms for cyber security applications: A survey | |
Gu et al. | From image to code: executable adversarial examples of android applications | |
Kumar et al. | SDIF-CNN: Stacking deep image features using fine-tuned convolution neural network models for real-world malware detection and classification | |
Mohaisen et al. | Network-based analysis and classification of malware using behavioral artifacts ordering | |
Yusoff et al. | Optimizing decision tree in malware classification system by using genetic algorithm | |
EP3588351B1 (en) | System and method of identifying malicious files using a learning model trained on a malicious file | |
Reddy et al. | A survey of different machine learning models for static and dynamic malware detection | |
Murali et al. | A preliminary investigation into automatically evolving computer viruses using evolutionary algorithms | |
Kang et al. | Resilience against Adversarial Examples: Data-Augmentation Exploiting Generative Adversarial Networks. | |
Monika et al. | Ensemble-based stegomalware detection system for hidden ransomware attack | |
Bose | Towards explainability in machine learning for Malware detection | |
Arul et al. | Malware detection using higher order statistical parameters | |
Filiol | Proactive Detection of Unknown Binary Executable Malware |
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 |