CN110659483A - 使用在一个恶意文件上训练的学习模型识别多个恶意文件的系统和方法 - Google Patents
使用在一个恶意文件上训练的学习模型识别多个恶意文件的系统和方法 Download PDFInfo
- Publication number
- CN110659483A CN110659483A CN201910419795.2A CN201910419795A CN110659483A CN 110659483 A CN110659483 A CN 110659483A CN 201910419795 A CN201910419795 A CN 201910419795A CN 110659483 A CN110659483 A CN 110659483A
- Authority
- CN
- China
- Prior art keywords
- malicious
- files
- file
- learning model
- neural network
- 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
Links
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/562—Static detection
- G06F21/563—Static detection by source code analysis
-
- 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
- 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
-
- 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/567—Computer malware detection or handling, e.g. anti-virus arrangements using dedicated hardware
-
- 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/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Virology (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Bioethics (AREA)
- Storage Device Security (AREA)
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了使用在一个恶意文件上训练的学习模型识别多个恶意文件的系统和方法。在一个方面中,示例性方法包括:使用硬件处理器从已知有危害的多个恶意文件中选择一个恶意文件;使用所述硬件处理器从已知安全的安全文件集合中选择多个安全文件;使用所述硬件处理器,通过使用所述一个恶意文件和所述多个安全文件训练神经网络,生成学习模型;使用所述硬件处理器从所述学习模型中生成用于检测恶意文件的规则;使用所述硬件处理器,利用所述学习模型确定未知文件的属性是否满足检测恶意文件的规则;响应于确定满足用于检测的所述规则,则使用所述硬件处理器将所述未知文件识别为恶意的。
Description
技术领域
本发明涉及用于识别恶意文件的解决方案,更具体地涉及使用在一个恶意文件上训练的学习模型检测多个恶意文件的系统和方法。
背景技术
目前,恶意软件(诸如计算机病毒、木马(Trojan horses)、互联网蠕虫)的数量正在增加,恶意软件被设计成对用户的数据以及对感染恶意软件的电子设备的实际用户造成危害。该危害可以通过破坏或移除用户文件、利用用户的计算设备的资源来“挖掘”加密货币、窃取机密用户数据(对应性、图像、登录名、密码、银行卡数据)和其它行为造成。此外,恶意软件在不断变化,因为恶意软件的创建者采用新的攻击和防御安全应用的方法。所使用的不同机制包括例如混淆恶意代码(换句话说,将程序的原始文本或可执行代码设置为保留其功能但会损害分析的形式、理解操作算法以及例如在反编译期间进行修改)或使用仿真阻止措施(例如,恶意软件具有识别其何时在仿真器中被执行的功能,并且不会显示其恶意行为)。
此外,恶意软件通常不会立即或同时显示其恶意行为,而是执行大量的应用程序编程接口调用(API calls)(大约数百万次调用)和大量循环(大约数十亿次迭代),并在启动后立即停止其运行达一定时间(例如,使用函数“Sleep()”停止运行一个小时)。目前用户的计算设备具有高性能,使用多核处理器(或者甚至多处理器系统),因此用户可能不会注意或关注其中一个核的工作量。此外,从用户打开、激活或启动设备的时间开始,用户通常使用该设备超过一个小时。因此,恶意软件一旦启动,就无需立即显示其行为。
还存在一些被称为“针对性”攻击(高级持续性威胁(advanced persistentthreat,APT))的攻击。这些攻击是针对整个组织和公司执行的,通过利用软件漏洞和“社会工程”方法对基础架构实现这些攻击。已知的情况是使用几个没有单独显示任何恶意行为的简单应用进行这种攻击,然而,一旦入侵正在受攻击的公司的基础架构时,这些简单的应用联合执行,一起形成恶意功能且对正在受攻击的公司造成危害。
为了对抗上述技术,安全应用(诸如防病毒应用)的创建者使用以隔离的环境形式使用虚拟机的技术来安全执行文件。这种虚拟机通常被称为“沙箱(sandboxes)”。管理程序控制虚拟机的执行,并且通常包含用于拦截由虚拟机中正在执行的应用所调用的函数的机制。
应当注意,安全应用采用各种方法来识别恶意软件,例如诸如签名和/或启发式分析等技术。如果在分析过程中尚未确定文件的危害性,则可以通过安全应用将该文件发送至上述虚拟机以分析其行为(例如,如果文件不具有来自可信软件制造商的数字签名)。然后在虚拟机中执行所发送的文件,在虚拟机中,拦截应用的动作以及应用中由于各种函数调用而发生的事件,将与拦截的事件和动作有关的信息存储在日志中,之后,安全应用或计算机安全专家分析该日志以识别恶意软件。
此外,已知使用神经网络来识别恶意软件的方法。然而,当所有已知的是被识别为恶意的单个文件(单个文件样本)并且该单个文件很少被犯罪分子改变时,已知的识别恶意软件的方法无法有效地解决识别的问题。通常(例如,在APT攻击的情况下)这类文件可能由可信证书签名并执行不能被特定地视为恶意的动作。例如,打开.DOC文件,没有更改地关闭该.DOC文件,发送数据包或邮件。从安全应用的角度来看,上述的动作是完全安全的(存在许多能够打开文本文件并发送消息和/或邮件的程序),但由于这些动作的执行,可以从上述打开的文件中窃取机密数据。期望基于这类单个文件来识别在功能上与上述单个文件类似的其它恶意文件。此外,在上述APT攻击的情况下,有必要从文件的间接属性中识别出用于攻击的其它文件。
本发明使得能够通过使用在一个恶意文件上训练的学习模型来解决识别多个恶意文件的这类问题。
发明内容
本发明的各个方面涉及识别恶意文件的领域,更具体地涉及使用在一个恶意文件上训练的学习模型识别多个恶意文件的系统和方法。
在一个方面中,示例性方法包括使用硬件处理器从已知有危害的多个恶意文件中选择一个恶意文件;使用所述硬件处理器从已知安全的安全文件集合中选择多个安全文件;使用所述硬件处理器,通过使用所述一个恶意文件和所述多个安全文件训练神经网络,生成学习模型;使用所述硬件处理器从所述学习模型生成用于检测恶意文件的规则;使用所述硬件处理器,利用所述学习模型确定未知文件的属性是否满足检测恶意文件的所述规则;响应于确定满足用于检测的所述规则,则使用所述硬件处理器将所述未知文件识别为恶意的。
在另一方面中,所述方法还包括在训练所述神经网络之前,选择和修改所述神经网络的参数。
在所述方法的另一方面中,所述参数包括层的数量、所述层中的神经元的数量、损失函数、神经元之间的耦合系数以及所述损失函数的系数。
在另一方面中,所述方法还包括基于损失函数误差梯度的方法选择所述损失函数。
在所述方法的另一方面中,训练所述学习模型包括:形成包含所述一个恶意文件的第一多个属性的第一向量;从所述第一多个属性中确定影响识别所述一个恶意文件的结果的多个重要属性;形成包含所述多个安全文件的第二多个属性的第二向量;以及基于所述第二向量训练所述神经网络的第一层以选择对于恶意文件的检测无关紧要的属性。
在另一方面中,所述方法还包括通过将所述学习模型应用于所述多个安全文件来确定所述多个安全文件中的一个安全文件是否有危害;以及响应于确定所述多个安全文件中的一个安全文件是有危害的,则使用所述神经网络修改所述学习模型并再训练所述学习模型。
在另一方面中,所述方法还包括基于由所述神经网络产生的结果属性的向量,生成用于检测恶意文件的所述规则。
在所述方法的另一方面中,用于检测的所述规则包括至少一个用于识别的条件。
在另一方面中,所述方法还包括将所述第一向量转换为所述神经网络的外层的矩阵;将所述神经网络的矩阵映射到识别文件的危害性系数的结果属性的向量上。
在所述方法的另一方面中,所述对于恶意文件的检测无关紧要的属性为那些消耗计算资源而不改进所述危害性系数的识别的属性。
在另一方面中,所述方法还包括基于其它确定恶意性的方法,确定所述未知文件是否为恶意的;以及响应于使用所述学习模型确定所述未知文件为恶意的并且响应于使用所述其它确定恶意性的方法确定该未知文件为安全的,则识别所述学习模型和用于检测的所述规则中的误报警;将所述未知文件添加到所述多个安全文件中;以及基于新选择的损失函数和所述多个安全文件,再训练所述学习模型的所述神经网络。
在另一方面中,所述方法还包括使用所述神经网络确定结果属性的向量,该向量识别与文件将被证明为有危害的概率相关的危害性系数。
根据本发明的一个方面,提供了一种使用在一个恶意文件上训练的学习模型识别多个恶意文件的系统,所述系统包括硬件处理器,所述硬件处理器配置为从已知有危害的多个恶意文件中选择一个恶意文件;从已知安全的安全文件集合中选择多个安全文件;通过使用所述一个恶意文件和所述多个安全文件训练神经网络,生成学习模型;从所述学习模型中生成用于检测恶意文件的规则;使用所述学习模型确定未知文件的属性是否满足检测恶意文件的所述规则;响应于确定满足用于检测的所述规则,则将所述未知文件识别为恶意的。
在一个示例性方面中,提供了一种非暂时性计算机可读介质,所述非暂时性计算机可读介质上存储有用于使用在一个恶意文件上训练的学习模型识别多个恶意文件的指令,其中,所述指令包括从已知有危害的多个恶意文件中选择一个恶意文件;从已知安全的安全文件集合中选择多个安全文件;通过使用所述一个恶意文件和所述多个安全文件训练神经网络,生成学习模型;从所述学习模型中生成用于检测恶意文件的规则;使用所述学习模型,确定未知文件的属性是否满足用于检测恶意文件的规则;响应于确定满足用于检测的所述规则,则使用所述硬件处理器将所述未知文件识别为恶意的。
以上示例性方面的简化概述用于提供对本发明的基本理解。本发明内容不是对所有预期方面的广泛概述,并且既不旨在识别所有方面的关键或重要元素,也不描绘本发明的任何或全部方面的范围。其唯一目的是以简化的形式呈现一个或多个方面,作为对本发明的以下更详细描述的前奏。为了实现前述内容,本发明的一个或更多个方面包括权利要求中所描述和示例性指出的特征。
附图说明
并入本说明书中并构成本说明书的一部分的附图示出了本发明的一个或多个示例性方面,以及连同详细的描述一起用来阐述这些示例性方面的原理和实现方式。
图1为示出使用在一个恶意文件上训练的学习模型识别多个恶意文件的系统的框图;
图2示出学习模块训练模型的过程;
图3为示出使用在一个恶意文件上训练的学习模型识别多个恶意文件的方法的架构的流程图;
图4示出了可以在其上实现本发明的各个方面的通用计算机系统的示例。
具体实施方式
本文在使用在一个恶意文件上训练的学习模型识别多个恶意文件的系统、方法和计算机程序产品的上下文中描述示例性方面。本领域的普通技术人员将认识到,以下描述仅仅是示例性的,而不旨在以任何方式进行限制。其它方面将很容易将其自身暗示给了解本发明的优点的本领域的技术人员。现在将详细地参考如附图中所示的示例性方面的实现方式。贯穿附图和以下描述将尽可能地使用相同的附图标记来指代相同或类似的项目。
在本发明中,系统的元件被理解为使用硬件(诸如集成微电路(专用集成电路Application Specific Integrated Circuits,ASIC)或可编程门阵列(Field-Programmable Gate Array,FPGA))或例如以软件和硬件的组合形式(诸如微处理器系统和软件指令集)以及神经形态芯片(神经突触芯片))实现的实际的设备、系统、部件、部件组。系统的这些元件的功能可以仅由硬件实现,也可以以组合的形式实现,在组合形式中,系统元件的一些功能通过软件实现,以及一些功能可以通过硬件实现。在一些示例性方面中,一些元件或所有元件可以在通用计算机(诸如图4中所示出的通用计算机)的处理器上执行。系统的部件(各个元件)可以在单个计算设备内实现,或者在多个互连的计算设备之间分布。
图1为示出使用在一个恶意文件上训练的学习模型来识别多个恶意文件的系统的框图。
用于基于一个文件识别恶意文件的系统100包括选择模块110、学习模块120和分析模块130。
在通常情况下,选择模块110在远程服务器上或者以云服务的形式执行。选择模块110从恶意文件集合中选择一个恶意文件160。所选择的文件通常情况下为样本,基于该样本,由于本发明的系统的工作,可以将其它文件识别为恶意的。该恶意文件集合是先前被识别为恶意的文件组。在一个示例性方面中,所述文件通过分析模块130被识别为恶意的。在另一示例性方面中,所述文件通过计算机安全专家被识别为恶意的。这些文件的危害性在通常情况下可以通过现有技术中已知的方法(诸如启发式分析或签名分析)来识别。在一个示例性方面中,选择模块110不选择整个恶意文件,而是选择恶意文件的一个或多个不同的部分。例如,选择该文件的只包含可执行的代码或文本代码(在脚本文件的情况下)的部分;该部分不包含资源(图像、字符串);或者该部分不包含犯罪分子添加的混淆代码。
此外,选择模块110从安全文件集合中至少选择两个文件。安全文件是未被识别(通过计算机安全专家或通过分析模块130识别)为恶意的文件。在一个示例性方面中,可以选择整个集合。在另一示例性方面中,可以通过针对所选的恶意文件和安全文件二者的各种单独的标准以及标准的组合来选择文件。例如,选择安全文本脚本文件(其与所选恶意文件的类型相同),该安全文本脚本文件在用户的计算机上的普遍性超过10000个副本,而文件的大小小于4千字节。在一个示例性方面中,选择模块110不选择整个安全文件,而是选择安全文件的部分,与上述选择恶意文件的部分类似。
在通常情况下,将恶意文件集合和安全文件集合存储在数据库190中。
在一个示例性方面中,选择文件(恶意文件和安全文件)的结果可以是集合中这些文件的标识符。
在通常情况下,所选择的文件或其部分或其标识符通过选择模块110发送到学习模块120。
学习模块120基于机器学习方法生成(创建)利用神经网络(下文中,称之为训练的神经网络)的学习模型。在通常情况下,使用各种机器学习方法,包括基于梯度的基于决策树的梯度提升(基于决策树的梯度提升)、决策树(英文“decision trees”(决策树))、最近邻法kMN(英文“K-nearest neighbor method”(K-最近邻法))、支持向量法(英文“supportvector machine”(支持向量机),SVM)。学习模块120至少选择神经网络的如下参数:层的数量、层中的神经元的数量和损失函数(例如,与分类相关联的损失函数)。在特定示例性方面中,学习模块120另外选择神经元之间的耦合系数(权重)和损失函数的系数。
在特定方面中,使用误差反向传播的方法。这种机器学习方法是迭代梯度算法,其特征在于最小化多层神经网络的函数误差。
学习模块120的工作的总体情况在图2中示出。
学习模块120形成向量pin[N]220,该向量包含从恶意文件160或其部分中挑选出的N个属性。在一个示例性方面中,恶意文件160的属性是从恶意文件160的元数据(例如,大小、创建和/或修改的时间、属性、访问权限)中挑选出来的。在另一示例性方面中,基于恶意文件160的数据、对恶意文件160的内容执行分析来挑选所述属性。例如,证书的存在、字节序列或代码中特定函数的调用。
训练的神经网络140的工作结果在通常情况下是生成的结果属性的向量pout[Q]240,该向量包括Q个结果属性。在一个方面中,Q个结果属性为最重要的数据,表征由神经网络140分类的数据。通常,神经网络的操作结果是从最重要的属性(例如,为了引入文件的恶意软件的属性)的各种属性(例如,文件)中进行的选择。
在特定方面中,为了解决识别恶意文件的问题,结果属性的向量pout[Q]240具有1的维度且包含数值-危害性系数。危害性系数表征文件将被证明为危害的概率(例如,从0到1),危害性系数越高,该概率就越高。
使用训练的神经网络140确定文件的危害性系数的问题归结为求解具有K个未知数的方程组,该方程组可以在数学上表示为矩阵乘法MK×K。神经网络230至少包含3层(两个外层和一个隐藏层)。在第一(输入)外层上,恶意文件的属性向量pin220被变换(展开)成神经网络层的矩阵Min。在最后(输出)外层上,神经网络矩阵Mout被映射到结果属性的向量pout240中,该结果属性的向量如下定义:
其中:
×Min-为向量到第一外层的映射;
×ΠiMi×-为第一层到靠外的内层以及从该内层到最后一层的映射;
×Mout-为最后外层到向量的映射;
ΠiMi-为从第一个内层到最后一个内层的映射,抽象为真实的:
也就是说,当使用训练模型时,存在一个内层;但当训练该模型时,内层可以构成一组层,该组层中的各个层由其自身的矩阵Mi表征,各个矩阵Mi的元素(系数)可以被校正。
训练神经网络230的问题在通常情况下归结为确定恶意文件160的各个属性对结果属性的向量pout240的形成的定量贡献,在特定方面中,从该确定的结果中还可以另外确定如下内容:
·从恶意文件pin的属性集{ζi}中的各个属性ζi对结果属性的向量pout的贡献的阈值,低于该阈值,则认为该恶意文件的第i个属性ζi对结果属性的向量pout具有最小影响,并且可以在进一步分析该文件期间,将该第i个属性ζi从正被神经网络所使用的恶意文件的属性的向量pin中排除。
·结果属性的值的范围,在该范围中的检测意味着该文件为恶意的min(pout)<pout<max(pout)
pout(ζi)=f(pin({ζi}))
其中,{ζi}为文件属性集,基于该文件属性集,形成向量。
更具体地:
在训练的过程中,从恶意文件160的挑选出的N个属性中确定恶意文件的M个属性。这N个属性对恶意文件160的识别结果具有重要影响(恶意文件160的重要属性)。
恶意文件160的其它O=N-M个属性被认为是无关紧要的属性,这些属性对恶意文件160的识别的影响是最小的。这O个属性的使用在很大程度上仅消耗计算资源而对结果没有显著改善,因此在进一步分析中排除了这O个属性。确定结果是否有显著改善包括统计确定,例如:如果计算某系数(通常在数学意义上-一个函数和另一函数的逼近系数或一些函数的数据的逼近系数等,这些系数可以通过某效率系数/逼近系数等来估计(参见确定的系数)),该系数表征我们的进程的效率从0(无效)到1(有效),并且当一个或多个参数变化时,表征效率的该系数变化不显著(例如变化了1%),则不使用该参数,因为该参数是不合理的。例如,针对函数y=x^a+b,线性参数b对y的影响实际上可以忽略不计,但是幂参数a的影响非常大并且因此被认为是重要的,因为当x变化时对y值的影响超过了预定的阈值。
首先,假设M=N,并且所有属性都到达神经网络230的输入层。该输入层将属性的向量pin转换为矩阵MN×N。
依赖于损失函数的隐藏层(在特定方面中,单个内层就足够了,而在通常情况下,隐藏层的数量不受限制)揭示了用于检测恶意文件的神经元的规律和关系。
输出层生成神经网络230的工作结果,该结果构成结果属性的向量pout。在特定方面中,输出层生成上述危害性系数。
在一个示例性方面中,学习模块120例如基于损失函数误差梯度的方法选择损失函数。在选择损失函数之后执行神经网络230的训练。
从各个选择的安全文件180或其部分,学习模块120还挑选出N个属性的向量220,并将该向量发送到正被训练的神经网络的初始输入层。
作为训练的结果,挑选出对于识别恶意文件160无关紧要的O个属性。重要属性的数量M变得小于N(M<N),这减小了矩阵的大小[M,M]并减少了神经网络230中的计算时间。
在该过程中,安全文件180不应该被识别为恶意的(例如,安全文件的危害性系数不应该超过阈值)。然而,如果安全文件180被识别为恶意的,或者换句话说,发生误报警,则学习模块120选择另一个损失函数并且对神经网络230进行再训练。
作为上述动作的结果,学习模块120生成训练的(在一个示例性方面中,再训练的)神经网络140。在通常情况下,与未经训练的神经网络相比,训练的神经网络140具有紧凑的描述(矩阵[M,M]小于矩阵[N,N]),并且其仅包含用于检测恶意软件(例如,由选择模块110选择的恶意文件160)的神经元的规律和关系。
在一个示例性方面中,学习模块120基于结果属性的向量240生成恶意文件160的检测规则250。在一个方面中,检测规则250包含至少一个检测条件。如前所述,结果属性的向量240可以具有[1]的维度。在通常情况下,检测规则250(即使对于结果属性的一维向量240)可以包含多个检测条件。例如,如果危害性系数大于0.9,则该文件应该被认为是恶意的。但如果危害性系数大于0.6而小于0.9,则应进行进一步确认。在又一示例性方面中,检测规则250另外使用包含在属性向量220中的至少一个属性。例如,如果文件类型为“可执行的”且危害性系数大于0.8,则该文件应被认为是恶意的。如果危害性系数小于0.5且文件类型为“文本”(诸如脚本文件),则应认为这样的文件是安全的。因此,作为神经网络230的训练的结果,学习模块120生成训练的神经网络140和检测规则250。
在特定示例性方面中,训练的神经网络140和检测规则250可以由学习模块120保存在数据库190中。
在通常情况下,学习模块120将训练的神经网络140和检测规则250发送至分析模块130。
分析模块130通常情况下在用户150的计算设备上实现。在特定示例性方面中,分析模块130在服务器上实现。分析模块130使用训练的神经网络140和检测规则250,扫描未知文件170的危害性。在通常情况下,如果作为分析模块130生成未知文件170的结果属性的向量240的结果,满足恶意文件的检测条件(如检测规则250中所包含的),则未知文件170被识别为恶意的。在一个示例性方面中,分析模块130还使用现有技术中已知的方法,扫描未知文件170的危害性。
在使用训练的神经网络140和检测规则250将未知文件170识别为恶意的,并且使用现有技术中已知的方法将未知文件170识别为安全的(例如,该文件具有由受信任的认证中心颁发的数字证书,或者该文件在白名单上,或者该文件在计算机安全专家的介入下被认为是安全的)的情况下,则识别训练的神经网络140和检测规则250的误报警。在这种情况下,识别出误报警的文件175由分析模块130添加到由选择模块110选择的安全文件180的集合中。此后,考虑到识别出误报警的文件175被添加到安全文件集合中,分析模块130发起选择损失函数以及通过学习模块120再训练神经网络230的过程。
在一个示例性方面中,分析模块130还执行其它恶意文件180的扫描。在使用训练的神经网络140和检测规则,分析模块130将另一恶意文件识别为恶意的情况下,则可以从用于识别恶意文件的训练的神经网络140的集合中排除用于检测所述其它恶意文件的训练的神经网络。
图3为示出使用在一个恶意文件上训练的学习模型来识别多个恶意文件的方法的架构的流程图。
根据一个方面,在步骤310中,选择模块110可以配置为从恶意文件集合中选择一个恶意文件(样本)。在该方面中,恶意文件集合是先前已识别出其危害性的一组文件。在另一示例性方面中,文件的危害性由计算机安全专家识别。危害性在通常情况下可以通过现有技术中已知的方法(诸如启发式分析或签名分析)来进行识别。在一个示例性方面中,选择模块110选择恶意文件的一个或多个单独部分而不是整个恶意文件。
在一个方面中,在步骤315中,选择模块110可以配置为从安全文件集合中选择至少两个文件。安全文件是指作为扫描危害性的结果未被识别为恶意的文件。在一个示例性方面中,可以选择整个安全文件集合。在另一示例性方面中,可以通过各种单独的标准以及标准的组合来选择安全文件。在一个示例性方面中,选择文件(恶意文件和安全文件)的结果可以为集合中这些文件的标识符。在一个示例性方面中,选择模块110选择安全文件的一个或多个部分,而在其它方面中,选择整个安全文件。
在一个方面,在步骤320中,学习模块120可以配置为生成(创建)利用神经网络的学习模型。在通常情况下,至少选择或修改神经网络的如下参数:层的数量、层中的神经元的数量、损失函数。在特定示例性方面中,另外选择神经元之间的耦合系数(权重)和损失函数的系数。
在通常情况下,使用其它机器学习方法。在特定方面中,使用误差反向传播的方法。依赖于损失函数的隐藏层揭示了用于检测恶意文件的神经元的规律和关系。在特定方面中,基于损失函数误差梯度的方法选择损失函数。
在一个方面,在步骤330中,学习模块120可以配置为使用所选择的文件或其部分来训练模型(训练过程在图2中详细示出)。学习模块120形成包含从恶意文件160或恶意文件160的部分中选择的N个属性的向量220。在所选择的恶意文件160的N个属性中,训练过程确定对恶意文件160的识别结果具有显著影响的恶意文件的M个属性(恶意文件160的重要属性)。在训练过程中,针对每个所选择的安全文件180或其部分,学习模块120也选择N个属性的向量220,并将该向量发送到正在训练的神经网络的初始输入层。作为训练的结果,选择O个属性,其中这O个属性对于恶意文件160的检测无关紧要。则重要属性的数量M小于N。
在一个方面中,在步骤335中,学习模块120可以配置为扫描由选择模块110所选择的安全文件的危害性。在安全文件180被识别为恶意的情况下(发生误报警),返回步骤320,学习模块120可以使用神经网络、例如通过选择不同的损失函数来生成(修改)学习模型,并执行神经网络230的再训练。
在一个方面中,在训练神经网络之后的步骤340中,学习模块120可以配置为基于结果属性的向量240生成用于恶意文件160的检测规则250,其中检测规则250包含至少一个用于识别恶意性(可替选地称为恶意性检测)的条件。例如,文件A和文件B可以为恶意的(即,属于同一类型/系列等),但是具有不同程度的损害性(例如,0.99和0.65)-在第一种情况下,恶意应用非常快速地致使计算机系统不可操作(例如,加密文件),而在第二种情况下,窃取密码等、但不会致使系统不可操作。如前所述,结果属性的向量240可以具有[1]的维度。在通常情况下,检测规则250(即使对于结果属性的一维向量240)可以包括检测恶意性的多个条件。在又一示例性方面中,检测规则250还使用包含在属性向量220中的至少一个属性。
在一个方面,在步骤350中,分析模块130可以配置为使用训练的神经网络140和检测规则250来扫描未知文件170的危害性。
在一个方面,在步骤355中,如果基于未知文件170的结果属性240满足用于恶意文件的检测条件,则在步骤360中将未知文件170识别为恶意的。在该方面中,该检测条件包含在检测规则250中。
在一个示例性方面,在步骤365中,分析模块130可以配置为使用特定方法另外地扫描(分析)未知文件170的危害性。在使用训练的神经网络140和检测规则250将未知文件170识别为恶意,而使用特定方法将未知文件170确定为安全的情况下,然后在步骤370中,识别训练的神经网络140和检测规则250的误报警。在这种情况下,在步骤375中,将识别出误报警的文件175由分析模块130添加到由选择模块110选择的安全文件180的集合中。此后,借助于分析模块130,所述方法前进到步骤320,在步骤320中,使用神经网络生成训练模型,然后该方法进行到步骤330,在步骤330中,由学习模块120再训练神经网络230,这两个步骤都考虑到识别出误报警的文件175被添加到安全文件集合中。
图4为示出根据示例性方面的其上可实施本发明的各方面的通用计算机系统20的框图。应当注意,计算机系统20可以对应于系统100和/或各个部件。
如图所示,该计算机系统20(其可以是个人计算机或服务器)包括中央处理单元21、系统存储器22和连接各种系统部件的系统总线23,各种系统部件包括与中央处理单元21相关联的存储器。如将由本领域的普通技术人员所领会,系统总线23可以包括总线存储器或总线存储器控制器、外围总线、以及能够与任何其它的总线架构交互的本地总线。系统存储器可以包括永久性存储器(ROM)24和随机存取存储器(Random-Access Memory,RAM)25。基本输入/输出系统(Basic Input/Output System,BIOS)26可以存储用于在计算机系统20的元件之间传输信息的基本程序,例如在使用ROM 24加载操作系统时的那些基本程序。
计算机系统20还可以包括用于读取和写入数据的硬盘27、用于在可移动磁盘29上读取和写入的磁盘驱动器28、以及用于读取和写入可移动光盘31(诸如CD-ROM、DVD-ROM和其它光学媒介)的光盘驱动器30。硬盘27、磁盘驱动器28和光盘驱动器30分别通过硬盘接口32、磁盘接口33和光盘驱动器接口34而连接到系统总线23。驱动器和对应的计算机信息媒介为用于存储计算机系统20的计算机指令、数据结构、程序模块和其它数据的电源独立的模块。
示例性方面包括使用硬盘27、可移动磁盘29和可移动光盘31借助控制器55连接到系统总线23的系统。将由本领域的普通技术人员所理解,也可以利用能够以计算机可读的形式存储数据的任何类型的媒介56(固态驱动器、闪存卡、数字硬盘、随机存取存储器(RAM)等等)。
计算机系统20具有可以存储操作系统35的文件系统36、以及额外的程序应用37、其它程序模块38和程序数据39。计算机系统20的用户可以使用键盘40、鼠标42、或本领域的普通技术人员已知的任何其它输入设备(诸如但不限于麦克风、操纵杆、游戏控制器、扫描器等)输入命令和信息。这些输入设备通常通过串行端口46插入到计算机系统20中,串行端口46转而连接到系统总线,但是本领域的普通技术人员将领会,输入设备也可以以其它方式来连接,诸如但不限于借助并行端口、游戏端口、或通用串行总线(Universal SerialBus,USB)来连接。监控器47或其它类型的显示设备也可以通过接口(例如视频适配器48)连接到系统总线23。除了监控器47,个人计算机还可以配备有其它的外围输出设备(未示出),例如扬声器、打印机等。
计算机系统20可以使用与一个或多个远程计算机49的网络连接而工作在网络环境中。所述一个或多个远程计算机49可以为本地计算机工作站或服务器,其包括前面在描述计算机系统20的性质时所述的元件中的大多数元件或全部元件。其它设备也可以存在于计算机网络中,诸如但不限于路由器、网站、对等设备或其它的网络节点。
网络连接可以形成局域计算机网络(Local-Area computer Network,LAN)50和广域计算机网络(Wide-Area computer Network,WAN)。这些网络用在企业计算机网络和公司内部网络中,并且这些网络通常有权访问因特网。在LAN或WAN网络中,个人计算机20通过网络适配器或网络接口51连接到局域网50。当使用网络时,计算机系统20可以采用调制解调器54或本领域的普通技术人员所熟知的实现与广域计算机网络(诸如因特网)的通信的其它模块。调制解调器54可以是内部设备或外部设备,且可以通过串行端口46连接到系统总线23。本领域的普通技术人员将领会,所述网络连接是使用通信模块建立一个计算机与另一个计算机的连接的许多熟知方式的非限制性示例。
在各个方面中,本文中所描述的系统和方法可以以硬件、软件、固件或它们的任何组合来实施。如果以软件来实施,则上述方法可以作为一个或多个指令或代码而被存储在非易失性计算机可读介质上。计算机可读介质包括数据存储器。以示例性而非限制性的方式,这种计算机可读介质可以包括RAM,ROM,EEPROM,CD-ROM,闪存或其它类型的电存储介质、磁存储介质或光存储介质,或可用来携带或存储所期望的指令或数据结构形式的程序代码并可以被通用计算机的处理器访问的任何其它介质。
在各个方面中,本发明中所描述的系统和方法可以按照模块来处理。本文中所使用的术语“模块”指的是例如现实世界的设备、部件、或使用硬件(例如通过专用集成电路(Application Specific Integrated Circuit,ASIC)或现场可编程门阵列(Field-Programmable Gate Array,FPGA))实现的部件的布置,或者指的是硬件和软件的组合,例如通过微处理器系统和实现模块功能的指令集(该指令集在被执行时将微处理器系统转换成专用设备)来实现这样的组合。一个模块还可以被实施为两个模块的组合,其中仅通过硬件促进某些功能,并且通过硬件和软件的组合促进其它功能。在某些实现方式中,模块的至少一部分(以及在一些情况下,模块的全部)可以在通用计算机(例如上文在图4中更详细描述的通用计算机)的处理器上执行。因此,每个模块可以以各种适合的配置来实现,而不应受限于本文中所例示的任何特定的实现方式。
为了清楚起见,本文中没有公开各个方面的所有例程特征。应当领会的是,在本发明的任何实际的实现方式的开发中,必须做出许多特定于实现方式的决定,以便实现开发者的特定目标,并且这些特定目标将对于不同的实现方式和不同的开发者变化。应当理解的是,这种开发努力会是复杂的且费时的,但对于了解本发明的优点的本领域的普通技术人员来说仍然是工程的例行任务。
此外,应当理解的是,本文中所使用的措辞或术语出于描述而非限制的目的,从而本说明书的术语或措辞应当由本领域技术人员根据本文中所提出的教导和指导结合(一个或多个)相关领域技术人员的知识来解释。此外,不旨在将本说明书或权利要求中的任何术语归于不常见的或特定的含义,除非明确如此阐述。
本文中所公开的各个方面包括本文中以说明性方式所引用的已知模块的现在和未来已知的等同物。此外,尽管已经示出并描述了各个方面和应用,但是对于了解本发明的优点的本领域技术人员将显而易见的是,在不脱离本文中所公开的发明构思的前提下,相比于上文所提及的内容而言的更多修改是可行的。
Claims (24)
1.一种使用在一个恶意文件上训练的学习模型识别多个恶意文件的方法,所述方法包括:
使用硬件处理器从已知有危害的多个恶意文件中选择一个恶意文件;
使用所述硬件处理器从已知安全的安全文件集合中选择多个安全文件;
使用所述硬件处理器,通过利用所述一个恶意文件和所述多个安全文件训练神经网络,生成学习模型;
使用所述硬件处理器从所述学习模型生成用于检测恶意文件的规则;
使用所述硬件处理器,利用所述学习模型确定未知文件的属性是否满足检测恶意文件的所述规则;以及
响应于确定满足用于检测的所述规则,则使用所述硬件处理器将所述未知文件识别为恶意的。
2.如权利要求1所述的方法,还包括:
在训练所述神经网络之前,选择和修改所述神经网络的参数。
3.如权利要求2所述的方法,其中,所述参数包括层的数量、所述层中的神经元的数量、损失函数、神经元之间的耦合系数以及所述损失函数的系数。
4.如权利要求3所述的方法,还包括:
基于损失函数误差梯度的方法选择所述损失函数。
5.如权利要求1所述的方法,其中,训练所述学习模型包括:
形成包含所述一个恶意文件的第一多个属性的第一向量;
从所述第一多个属性中确定影响识别所述一个恶意文件的结果的多个重要属性;
形成包含所述多个安全文件的第二多个属性的第二向量;以及
基于所述第二向量训练所述神经网络的第一层以选择对于恶意文件的检测无关紧要的属性。
6.如权利要求5所述的方法,还包括:
通过将所述学习模型应用于所述多个安全文件来确定所述多个安全文件中的一个安全文件是否有危害;以及
响应于确定所述多个安全文件中的一个安全文件是有危害的,则使用所述神经网络修改所述学习模型并再训练所述学习模型。
7.如权利要求6所述的方法,还包括:
基于由所述神经网络产生的结果属性的向量,生成用于检测恶意文件的所述规则。
8.如权利要求7所述的方法,其中,用于检测的所述规则包括至少一个用于识别的条件。
9.如权利要求5所述的方法,还包括:
将所述第一向量转换为所述神经网络的外层的矩阵;
将所述神经网络的矩阵映射到识别文件的危害性系数的结果属性的向量上。
10.如权利要求9所述的方法,其中,所述对于恶意文件的检测无关紧要的属性为那些消耗计算资源而不改进所述危害性系数的识别的属性。
11.如权利要求1所述的方法,还包括:
基于其它确定恶意性的方法,确定所述未知文件是否为恶意的;以及
响应于使用所述学习模型确定所述未知文件为恶意的并且使用所述其它确定恶意性的方法确定所述未知文件为安全的,则识别所述学习模型和用于检测的所述规则中的误报警;
将所述未知文件添加到所述多个安全文件中;以及
基于新选择的损失函数和所述多个安全文件,再训练所述学习模型的所述神经网络。
12.如权利要求1所述的方法,还包括:
使用所述神经网络确定结果属性的向量,该向量识别与文件将被证明为有危害的概率相关的危害性系数。
13.一种使用在一个恶意文件上训练的学习模型识别多个恶意文件的系统,所述系统包括:
硬件处理器,所述硬件处理器配置为:
从已知有危害的多个恶意文件中选择一个恶意文件;
从已知安全的安全文件集合中选择多个安全文件;
通过使用所述一个恶意文件和所述多个安全文件训练神经网络,生成学习模型;
从所述学习模型中生成用于检测恶意文件的规则;
使用所述学习模型确定未知文件的属性是否满足用于检测恶意文件的所述规则;以及
响应于确定满足用于检测的所述规则,则将所述未知文件识别为恶意的。
14.如权利要求13所述的系统,其中,所述硬件处理器还配置为:
在训练所述神经网络之前,选择和修改所述神经网络的参数。
15.如权利要求14所述的系统,其中,所述参数包括层的数量、所述层中的神经元的数量、损失函数、神经元之间的耦合系数以及所述损失函数的系数。
16.如权利要求13所述的系统,其中,训练所述学习模型包括:
形成包含所述一个恶意文件的第一多个属性的第一向量;
从所述第一多个属性中确定影响识别所述一个恶意文件的结果的多个重要属性;
形成包含所述多个安全文件的第二多个属性的第二向量;以及
基于所述第二向量训练所述神经网络的第一层以选择对于恶意文件的检测无关紧要的属性。
17.如权利要求16所述的系统,其中,所述硬件处理器还配置为:
通过将所述学习模型应用于所述多个安全文件来确定所述多个安全文件中的一个安全文件是否有危害;以及
响应于确定所述多个安全文件中的一个安全文件是有危害的,则使用所述神经网络修改所述学习模型并再训练所述学习模型。
18.如权利要求16所述的系统,其中,所述硬件处理器还配置为:
基于由所述神经网络产生的结果属性的向量,生成用于检测恶意文件的所述规则。
19.如权利要求16所述的系统,其中,所述硬件处理器还配置为:
将所述第一向量转换为所述神经网络的外层的矩阵;
将所述神经网络的矩阵映射到识别文件的危害性系数的结果属性的向量上。
20.如权利要求13所述的系统,其中,所述硬件处理器还配置为:
基于其它确定恶意性的方法,确定所述未知文件是否为恶意的;以及
响应于使用所述学习模型确定所述未知文件为恶意的并且使用所述其它确定恶意性的方法确定该未知文件为安全的,则识别所述学习模型和用于检测的所述规则中的误报警;
将所述未知文件添加到所述多个安全文件中;以及
基于新选择的损失函数和所述多个安全文件,再训练所述学习模型的所述神经网络。
21.如权利要求13所述的系统,其中,所述硬件处理器还配置为:
使用所述神经网络确定结果属性的向量,该向量识别与文件将被证明为有危害的概率相关的危害性系数。
22.一种非暂时性计算机可读介质,所述非暂时性计算机可读介质上存储有用于使用在一个恶意文件上训练的学习模型来识别多个恶意文件的指令,所述指令包括:
从已知有危害的多个恶意文件中选择一个恶意文件;
从已知安全的安全文件集合中选择多个安全文件;
通过使用所述一个恶意文件和所述多个安全文件训练神经网络,生成学习模型;
从所述学习模型中生成用于检测恶意文件的规则;
使用所述学习模型确定未知文件的属性是否满足用于检测恶意文件的所述规则;以及
响应于确定满足用于检测的所述规则,则将所述未知文件识别为恶意的。
23.如权利要求22所述的非暂时性计算机可读介质,其中,训练所述学习模型包括:
形成包含所述一个恶意文件的第一多个属性的第一向量;
从所述第一多个属性中确定影响识别所述一个恶意文件的结果的多个重要属性;
形成包含所述多个安全文件的第二多个属性的第二向量;以及
基于所述第二向量训练所述神经网络的第一层以选择对于恶意文件的检测无关紧要的属性。
24.如权利要求22所述的非暂时性计算机可读介质,其中,所述指令还包括:
基于其它确定恶意性的方法,确定所述未知文件是否为恶意的;以及
响应于使用所述学习模型确定所述未知文件为恶意的并且使用所述其它确定恶意性的方法确定该未知文件为安全的,则识别所述学习模型和用于检测的所述规则中的误报警;
将所述未知文件添加到所述多个安全文件中;以及
基于新选择的损失函数和所述多个安全文件,再训练所述学习模型的所述神经网络。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2018123695 | 2018-06-29 | ||
RU2018123695A RU2706896C1 (ru) | 2018-06-29 | 2018-06-29 | Система и способ выявления вредоносных файлов с использованием модели обучения, обученной на одном вредоносном файле |
US16/185,270 | 2018-11-09 | ||
US16/185,270 US10929533B2 (en) | 2018-06-29 | 2018-11-09 | System and method of identifying malicious files using a learning model trained on a malicious file |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110659483A true CN110659483A (zh) | 2020-01-07 |
CN110659483B CN110659483B (zh) | 2023-04-28 |
Family
ID=68652909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910419795.2A Active CN110659483B (zh) | 2018-06-29 | 2019-05-20 | 使用在一个恶意文件上训练的学习模型识别多个恶意文件的系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10929533B2 (zh) |
JP (1) | JP2020009415A (zh) |
CN (1) | CN110659483B (zh) |
RU (1) | RU2706896C1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116134785A (zh) * | 2020-08-10 | 2023-05-16 | 国际商业机器公司 | 网络设备属性的低时延识别 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2680736C1 (ru) | 2018-01-17 | 2019-02-26 | Общество с ограниченной ответственностью "Группа АйБи ТДС" | Сервер и способ для определения вредоносных файлов в сетевом трафике |
RU2706896C1 (ru) * | 2018-06-29 | 2019-11-21 | Акционерное общество "Лаборатория Касперского" | Система и способ выявления вредоносных файлов с использованием модели обучения, обученной на одном вредоносном файле |
US11070632B2 (en) * | 2018-10-17 | 2021-07-20 | Servicenow, Inc. | Identifying computing devices in a managed network that are involved in blockchain-based mining |
US11023576B2 (en) * | 2018-11-28 | 2021-06-01 | International Business Machines Corporation | Detecting malicious activity on a computer system |
US11599629B2 (en) | 2019-01-31 | 2023-03-07 | Rubrik, Inc. | Real-time detection of system threats |
US11709932B2 (en) * | 2019-01-31 | 2023-07-25 | Rubrik, Inc. | Realtime detection of ransomware |
US11550901B2 (en) | 2019-01-31 | 2023-01-10 | Rubrik, Inc. | Real-time detection of misuse of system credentials |
KR102046748B1 (ko) * | 2019-04-25 | 2019-11-19 | 숭실대학교산학협력단 | 트리 부스팅 기반 애플리케이션의 위험도 평가 방법, 이를 수행하기 위한 기록 매체 및 장치 |
RU2728497C1 (ru) | 2019-12-05 | 2020-07-29 | Общество с ограниченной ответственностью "Группа АйБи ТДС" | Способ и система определения принадлежности программного обеспечения по его машинному коду |
RU2728498C1 (ru) | 2019-12-05 | 2020-07-29 | Общество с ограниченной ответственностью "Группа АйБи ТДС" | Способ и система определения принадлежности программного обеспечения по его исходному коду |
RU2743620C1 (ru) * | 2020-06-26 | 2021-02-20 | Общество с ограниченной ответственностью "Группа АйБи ТДС" | Способ и система определения вредоносной активности по анализу поведения объектов в неизолированной среде |
RU2743619C1 (ru) | 2020-08-06 | 2021-02-20 | Общество с ограниченной ответственностью "Группа АйБи ТДС" | Способ и система генерации списка индикаторов компрометации |
US12067120B2 (en) * | 2020-11-20 | 2024-08-20 | Sophos Limited | Classifier generator |
US12033048B1 (en) * | 2020-11-30 | 2024-07-09 | Amazon Technologies, Inc. | Anomaly detection using feedback |
US11947572B2 (en) | 2021-03-29 | 2024-04-02 | Group IB TDS, Ltd | Method and system for clustering executable files |
CN113221109B (zh) * | 2021-03-30 | 2022-06-28 | 浙江工业大学 | 一种基于生成对抗网络的恶意文件智能分析方法 |
US11836252B2 (en) * | 2021-06-23 | 2023-12-05 | Acronis International Gmbh | Machine learning through iterative memory analysis for malware detection |
CN114091029B (zh) * | 2022-01-24 | 2022-06-21 | 深信服科技股份有限公司 | 恶意文件检测模型的训练系统、方法、设备、介质及平台 |
CN115766169A (zh) * | 2022-11-08 | 2023-03-07 | 贵州大学 | 一种联邦学习中恶意节点检测方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102346829A (zh) * | 2011-09-22 | 2012-02-08 | 重庆大学 | 基于集成分类的病毒检测方法 |
CN105205396A (zh) * | 2015-10-15 | 2015-12-30 | 上海交通大学 | 一种基于深度学习的安卓恶意代码检测系统及其方法 |
CN107798243A (zh) * | 2017-11-25 | 2018-03-13 | 国网河南省电力公司电力科学研究院 | 终端应用的检测方法和装置 |
CN108009424A (zh) * | 2017-11-22 | 2018-05-08 | 北京奇虎科技有限公司 | 病毒行为检测方法、装置及系统 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5675711A (en) * | 1994-05-13 | 1997-10-07 | International Business Machines Corporation | Adaptive statistical regression and classification of data strings, with application to the generic detection of computer viruses |
US8037535B2 (en) * | 2004-08-13 | 2011-10-11 | Georgetown University | System and method for detecting malicious executable code |
US8875286B2 (en) * | 2010-12-01 | 2014-10-28 | Cisco Technology, Inc. | Method and apparatus for detecting malicious software using machine learning techniques |
US8838992B1 (en) * | 2011-04-28 | 2014-09-16 | Trend Micro Incorporated | Identification of normal scripts in computer systems |
US9292688B2 (en) * | 2012-09-26 | 2016-03-22 | Northrop Grumman Systems Corporation | System and method for automated machine-learning, zero-day malware detection |
US9465939B2 (en) * | 2014-06-27 | 2016-10-11 | Mcafee, Inc. | Mitigation of malware |
US9762593B1 (en) * | 2014-09-09 | 2017-09-12 | Symantec Corporation | Automatic generation of generic file signatures |
US9332385B1 (en) * | 2015-02-13 | 2016-05-03 | International Business Machines Corporation | Selectively providing content to users located within a virtual perimeter |
JP2016206950A (ja) * | 2015-04-22 | 2016-12-08 | 日本電信電話株式会社 | マルウェア判定のための精査教師データ出力装置、マルウェア判定システム、マルウェア判定方法およびマルウェア判定のための精査教師データ出力プログラム |
US10599844B2 (en) * | 2015-05-12 | 2020-03-24 | Webroot, Inc. | Automatic threat detection of executable files based on static data analysis |
US10681080B1 (en) * | 2015-06-30 | 2020-06-09 | Ntt Research, Inc. | System and method for assessing android applications malware risk |
EP3323075B1 (en) * | 2015-07-15 | 2023-01-18 | Cylance Inc. | Malware detection |
JP6039768B1 (ja) * | 2015-08-12 | 2016-12-07 | 日本電信電話株式会社 | 調整装置、調整方法および調整プログラム |
US20170068816A1 (en) | 2015-09-04 | 2017-03-09 | University Of Delaware | Malware analysis and detection using graph-based characterization and machine learning |
CN106910761B (zh) | 2015-12-22 | 2019-12-13 | 昆山工研院新型平板显示技术中心有限公司 | 一种具有较长发光寿命的显示装置 |
US9959407B1 (en) | 2016-03-15 | 2018-05-01 | Symantec Corporation | Systems and methods for identifying potentially malicious singleton files |
US9721097B1 (en) * | 2016-07-21 | 2017-08-01 | Cylance Inc. | Neural attention mechanisms for malware analysis |
US10795996B2 (en) * | 2017-07-17 | 2020-10-06 | AO Kaspersky Lab | System and method of machine learning of malware detection model |
RU2654151C1 (ru) * | 2017-08-10 | 2018-05-16 | Акционерное общество "Лаборатория Касперского" | Система и способ обнаружения вредоносных файлов с использованием обученной модели обнаружения вредоносных файлов |
US11308418B2 (en) * | 2017-09-15 | 2022-04-19 | Sap Se | Automatic selection of variables for a machine-learning model |
RU2679785C1 (ru) * | 2017-10-18 | 2019-02-12 | Акционерное общество "Лаборатория Касперского" | Система и способ классификации объектов |
US11108809B2 (en) * | 2017-10-27 | 2021-08-31 | Fireeye, Inc. | System and method for analyzing binary code for malware classification using artificial neural network techniques |
WO2019145912A1 (en) * | 2018-01-26 | 2019-08-01 | Sophos Limited | Methods and apparatus for detection of malicious documents using machine learning |
US11941491B2 (en) * | 2018-01-31 | 2024-03-26 | Sophos Limited | Methods and apparatus for identifying an impact of a portion of a file on machine learning classification of malicious content |
US10225277B1 (en) * | 2018-05-24 | 2019-03-05 | Symantec Corporation | Verifying that the influence of a user data point has been removed from a machine learning classifier |
RU2706896C1 (ru) * | 2018-06-29 | 2019-11-21 | Акционерное общество "Лаборатория Касперского" | Система и способ выявления вредоносных файлов с использованием модели обучения, обученной на одном вредоносном файле |
-
2018
- 2018-06-29 RU RU2018123695A patent/RU2706896C1/ru active
- 2018-11-09 US US16/185,270 patent/US10929533B2/en active Active
-
2019
- 2019-04-12 JP JP2019076577A patent/JP2020009415A/ja active Pending
- 2019-05-20 CN CN201910419795.2A patent/CN110659483B/zh active Active
-
2021
- 2021-01-26 US US17/158,067 patent/US11514160B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102346829A (zh) * | 2011-09-22 | 2012-02-08 | 重庆大学 | 基于集成分类的病毒检测方法 |
CN105205396A (zh) * | 2015-10-15 | 2015-12-30 | 上海交通大学 | 一种基于深度学习的安卓恶意代码检测系统及其方法 |
CN108009424A (zh) * | 2017-11-22 | 2018-05-08 | 北京奇虎科技有限公司 | 病毒行为检测方法、装置及系统 |
CN107798243A (zh) * | 2017-11-25 | 2018-03-13 | 国网河南省电力公司电力科学研究院 | 终端应用的检测方法和装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116134785A (zh) * | 2020-08-10 | 2023-05-16 | 国际商业机器公司 | 网络设备属性的低时延识别 |
Also Published As
Publication number | Publication date |
---|---|
US20200004961A1 (en) | 2020-01-02 |
JP2020009415A (ja) | 2020-01-16 |
RU2706896C1 (ru) | 2019-11-21 |
US10929533B2 (en) | 2021-02-23 |
US11514160B2 (en) | 2022-11-29 |
CN110659483B (zh) | 2023-04-28 |
US20210150030A1 (en) | 2021-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110659483B (zh) | 使用在一个恶意文件上训练的学习模型识别多个恶意文件的系统和方法 | |
Gopinath et al. | A comprehensive survey on deep learning based malware detection techniques | |
Chumachenko | Machine learning methods for malware detection and classification | |
Demme et al. | On the feasibility of online malware detection with performance counters | |
US11379581B2 (en) | System and method for detection of malicious files | |
US20170351859A1 (en) | System and method of detecting malicious computer systems | |
EP3798885B1 (en) | System and method for detection of malicious files | |
Cen et al. | Ransomware early detection: A survey | |
Mohaisen et al. | Network-based analysis and classification of malware using behavioral artifacts ordering | |
US12086236B2 (en) | System and method for identifying a cryptor that encodes files of a computer system | |
Isiaka | Performance Metrics of an Intrusion Detection System Through Window-Based Deep Learning Models | |
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 | |
Kulikov et al. | Adversarial attacks on intrusion detection systems using the LSTM classifier | |
CN116595521A (zh) | 数据处理单元的存储器中的勒索软件检测 | |
EP3252645A1 (en) | System and method of detecting malicious computer systems | |
Habtor et al. | Machine-learning classifiers for malware detection using data features | |
Yusoff et al. | A framework for optimizing malware classification by using genetic algorithm | |
Miller | Are we protected yet? developing a machine learning detection system to combat zero-day malware attacks | |
Zyout et al. | Malware classification approaches utilizing binary and text embedding of permissions | |
Rajeswaran | Function call graph score for malware detection | |
EP3961449B1 (en) | System and method for identifying a cryptor that encodes files of a computer system | |
Pandey et al. | Static Analysis Approach of Malware Using Machine Learning | |
US11934523B1 (en) | System and method for securing data files | |
US20240333765A1 (en) | Method for using generative large language models (llm) for cybersecurity deception and honeypots |
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 |