CN107273747A - 勒索软件检测的方法 - Google Patents
勒索软件检测的方法 Download PDFInfo
- Publication number
- CN107273747A CN107273747A CN201710365035.9A CN201710365035A CN107273747A CN 107273747 A CN107273747 A CN 107273747A CN 201710365035 A CN201710365035 A CN 201710365035A CN 107273747 A CN107273747 A CN 107273747A
- Authority
- CN
- China
- Prior art keywords
- mrow
- software
- sample
- msub
- training
- 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
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/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- 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
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/145—Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种勒索软件检测的方法,所述勒索软件检测的方法分为先后顺序执行的两个部分,勒索软件的检测模型训练:首先,需要确定训练勒索软件检测模型的训练集,训练集分为2个子集:①勒索软件样本集合;②正常样本集合;利用分布式沙箱对训练集合中样本进行动态分析,提取沙箱分析后的报告;2)勒索软件的检测模型的测试;根据特征构造算法建立特征集,采用五折交叉法进行模型的训练与测试,使用准确率这样的指标衡量模型性能。有效避免了现有技术中难以检测勒索软件、对不同类型的勒索软件的特征研究不深入、检测的结果受到的干扰越严重以及构建的算法维度与复杂度高的缺陷。
Description
技术领域
本发明涉及网络安全技术领域,具体涉及一种勒索软件检测的方法。
背景技术
勒索软件是黑客用来劫持用户设备或资源,并以此为条件向用户勒索钱财的一种恶意软件。勒索软件通常会将用户系统中多种类型的文件进行加密或篡改系统配置,干扰用户正常使用,用户只有支付赎金后方可获得解密文件的密码或者获得恢复系统正常使用的方法。2016年,360公司共截获电脑端新增勒索软件样本16.7万个,全国至少有497多万台用户电脑遭到了勒索软件攻击。
勒索软件是恶意代码的一种,目前恶意代码检测方法主要分为静态检测和动态检测两类。静态分析通过逆向工程抽取程序特征,分析函数调用、程序指令等序列。但是恶意代码会使用代码混淆、花指令等手段对抗静态分析。动态检测是通过拦截或监控的方式分析程序运行时的行为特征,使用沙箱或虚拟机模拟运行程序,绕过代码混淆等代码保护机制,检测恶意代码的动态行为。
动态检测中,葛雨玮等人,从代码执行程序的控制流和数据流中抽取动态特征,然后将恶意代码特征分为特征代码、API函数特征、数据特征和行为特征,其中API函数特征按调用顺序连接形成API序列字符串,同时计数提取API函数调用的不同参数,结合BP神经网络算法,检测恶意代码的同源性。在研究API函数的调用与恶意代码的关系上,韩兰胜等人从9个动态链接库中选取126个API构造记录调用的子集。结合熵与机器学习算法训练检测模型,他们共检测了920个恶意软件样本以及450个正常软件样本。
主流的恶意代码检测方法包括基于n-grams算法计算API调用的相似度进行恶意代码的检测。Kyeom Cho等人有不同的尝试,他们结合信息生物学的序列比对法,首先将恶意软件的API调用行为构造为一组基因序列,再通过比对待测软件的API调用序列与已知恶意软件的调用序列进行检测。同样的问题,恶意样本对API的调用存在大量的冗余操作。所以随着监测的样本动态行为越多,检测的结果受到的干扰越严重。勒索软件有着自己特有的行为,所以基于行为的频繁度检测勒索软件是一种很好的检测方法。国外的研究者使用API名称、API调用的参数并选取了24种API计算恶意代码API调用的频繁度,构造特征进行恶意软件的检测。但由于API库的庞大,基于24种API调用的频繁度无法全面的描述恶意代码的行为。Korkmaz等人则在基于调用的频繁度上做了拓展,他们将API调用分为不同的调用类,基于API调用类别的频繁度来描述恶意代码的行为,对勒索软件的准确率为88%。
已有专利中,从防止勒索软件感染电脑的角度上,倪茂志提出一种勒索软件的防范方法和系统,构建至少一个符合勒索软件加密类型的诱饵文件,并插入到欲保护磁盘原有的文件序列中,再判断诱饵文件是否发生变化;在诱饵文件发生变化的情况下,禁止对欲保护磁盘进行预设操作。缺点是如果勒索软件检测到有诱饵软件,则不表现勒索行为,导致无法识别是否为勒索软件。此外倪茂志提出另外一种勒索软件的防范方法,构建备份数据库,其中,备份数据库包括至少一个还原点以及与每个还原点对应的还原数据,还原数据包括注册表数据和磁盘文件数据;接收处理请求,根据处理请求从备份数据库中选择一个还原点,并调用与一个还原点对应的磁盘文件数据。遍历磁盘,根据与一个还原点对应的磁盘文件数据确定磁盘是否有新增的文件;在磁盘中有新增的文件的情况下,对新增的文件添加启动时锁定的属性,并根据与一个还原点对应的注册表数据对磁盘进行还原。该发明能够缩小勒索软件在所有文件中的判定范围,并有效的对勒索软件进行锁定,防止勒索软件的进一步侵害,同时能够对磁盘进行还原,使磁盘恢复正常。
从恢复数据的角度上,安天实验室的叶佳旭提出一种基于数据重定向的勒索软件防御系统及方法。该发明提出一种基于数据重定向的勒索软件防御系统,通过在用户和勒索软件的服务器间增加数据重定向服务器,同时接收来自客户端发送的请求消息以及目的服务器的数字证书,并向客户端发送重定向服务器数字证书,客户端用重定向服务器数字证书加密后发送至重定向服务器,重定向服务器解密信息后又用目的服务器的数字证书重新加密,发送至目的服务器,实现对已感染勒索类病毒的系统内的文件进行还原。
从备份数据的角度上,倪茂志提出一种针对防御勒索软件文件数据的备份保护方法和系统,该发明设计一种针对防御勒索软件文件数据的备份保护方法和系统。其中方法包括:接收对文件的操作请求;确定文件的大小是否小于预设上限值;在文件的大小小于预设上限值的情况下,确定文件是否属于预设文件备份类型;在文件属于预设文件备份类型的情况下,在存储介质中对文件进行备份后,执行对文件的操作请求;在文件不属于预设文件备份类型的情况下,直接执行对文件的操作请求。
现有的静态和动态检测方法主要是针对恶意软件的通用检测技术和方法,并没有对勒索软件在行为特征上的差异性进行深入分析。辨别勒索软件是分析勒索软件的家族、特征与研究防范方法最重要的一步,本发明重点解决勒索软件检测问题。
目前,检测勒索软件的主要问题在于:
(1)勒索软件在对抗静态检测方面下了很大的功夫,使得静态检测方法难以检测勒索软件。例如Cerber家族的勒索软件使用虚拟内存映射等手段来逃避静态检测,并使用重新打压缩包和加载机制的方式逃避静态机器学习检测。
(2)勒索软件有着明显的行为特征,虽然已经有研究者从API函数调用频繁度的角度进行勒索软件的检测,但对不同类型的勒索软件的特征研究不深入,检测的效果有待提高。
(3)使用机器学习检测勒索软件,在构造行为特征时,主流使用的n-grams、序列比对法等描述API的调用有大量的冗余,随着监测的样本动态行为越多,检测的结果受到的干扰越严重,并且构建的算法维度与复杂度高。
发明内容
为解决上述问题,本发明提供了一种勒索软件检测的方法,有效避免了现有技术中难以检测勒索软件、对不同类型的勒索软件的特征研究不深入、检测的结果受到的干扰越严重以及构建的算法维度与复杂度高的缺陷。
为了克服现有技术中的不足,本发明提供了一种勒索软件检测的方法的解决方案,具体如下:
一种勒索软件检测的方法,所述勒索软件检测的方法分为先后顺序执行的两个部分,
勒索软件的检测模型训练:
首先,需要确定训练勒索软件检测模型的训练集,训练集分为2个子集:①勒索软件样本集合;②正常样本集合;利用分布式沙箱对训练集合中样本进行动态分析,提取沙箱分析后的报告;
2)勒索软件的检测模型的测试;
根据特征构造算法建立特征集,采用五折交叉法进行模型的训练与测试,使用准确率这样的指标衡量模型性能。
将所述样本的动态分析的实验环境设置在虚拟机中,设置了快照与检查机制,当系统检测到恶意样本尝试逃逸分析机时,启动快照回滚到干净状态。
所述勒索软件的检测模型包括:勒索软件样本集合和正常样本集合;
把所述勒索软件样本集合和正常样本集合利用分布式沙箱对训练集合中的样本进行动态分析,提取沙箱分析后的报告;
根据特征构造算法建立特征集,采用五折交叉法进行模型的训练与测试,使用准确率这样的指标衡量模型性能。
所述特征集分别为API函数特征、行为特征以及内存特征。
所述API函数特征的类别包括加密应用程序API类crypto、系统进程管理类API类process、进程服务类APIservices、注册表类APIregistry、资源类APIresource。
所述行为特征的网络行为构建一组特征,表示样本的网络行为中建立连接的主机域名个数,建立的tcp或者udp连接。
所述注册表行为包括注册表的访问、读取、修改与删除。
所述文件行为定义了一组描述对敏感文件的向量,捕获样本对敏感文件的操作,敏感文件集由"dll","exe","jpg","doc"这样的扩展名组成。
所述文件夹行为包括敏感路径删除、移动、读取、遍历的计数值。
所述内存特征基于沙箱的行为捕获不能完全捕获样本的行为,结合Volatility内存取证工具以及Yara匹配工具,使用内存行为特征对沙箱捕获到的行为进行补充;在沙箱分析样本完毕后,首先使用Volatility获取执行后的沙箱的内存镜像,再使用Yara匹配工具根据匹配规则对镜像进行扫描、分析,获取行为标签。
所述特征构造算法为随机森林(Random Forest,RF)算法有更高的稳定性和鲁棒性,恰当的训练参数可以获得更好的分类,随机森林算法是Bagging算法和RandomSubspace算法的组合,基本构成单元是决策树,通过多棵决策树的组合h1(x),h2(x),…,hn(x)来提高分类的准确性,通过子树的最终投票对未知类别的样本进行分类。
所述样本T的信息熵为公式(1)所示:
其中,Pi表示类别i样本占总样本数量的比例,在特征A作用后,样本T被分成了k个部分,此时基尼系数计算为公式(2)和公式(3)所示:
RF中降低过拟合的方式为剪枝,使用悲观剪枝(Pessimistic Error Pruning)进行剪枝,PEP首先计算规则在它应用的训练样例上的精度,然后假定此估计精度为二项式分布,并计算它的标准差。对于给定的置信区间,采用下界估计作为规则性能的度量,其中当节点Tt满足公式(4)时,Tt就会被裁剪掉,
e′(t)≤e′(Tt)+Se(e′(Tt)) (4)
e(t)为结点t的误差;i为覆盖Tt的叶子结点;Nt为子树Tt的叶子树;n(t)为在结点t处的训练集合数量。
在进行RF框架选择和改进时,选取完最佳子树特征集后,另一个影响过拟合能力的参数为基学习器。RF框架中,基学习器(base learner)的偏差小但方差较大,RF框架中整体模型的方差为:
基学习器数量为B,基学习器方差为σ2,两两基学习器间的相关性为ρ。所以基于PEP剪枝算法进行剪枝并结合网格搜索法选取基学习器的最优值。
本发明的技术效果为:本发明为基于特征行为的频繁度并结合内存特征的方法,使用基于参数优化的随机森林算法构造模型。实验表明,与以往的勒索代码检测方法相比,在降低构建特征的维度、复杂度的同时,能很好的检测勒索软件与未知的勒索软件。
附图说明
图1是本发明的勒索软件检测的方法的系统结构示意图;
图2是本发明的算法的流程图。
具体实施方式
下面将结合附图和实施例对本发明做进一步地说明。
如图1-图2所示,勒索软件检测的方法,所述勒索软件检测的方法分为先后顺序执行的两个部分,
勒索软件的检测模型训练:
首先,需要确定训练勒索软件检测模型的训练集,训练集分为2个子集:①勒索软件样本集合;②正常样本集合;利用分布式沙箱对训练集合中样本进行动态分析,提取沙箱分析后的报告;
2)勒索软件的检测模型的测试;
根据特征构造算法建立特征集,采用五折交叉法进行模型的训练与测试,使用准确率这样的指标衡量模型性能。
为了降低恶意样本在执行中可能造成的危害,将所述样本的动态分析的实验环境设置在虚拟机中,设置了快照与检查机制,当系统检测到恶意样本尝试逃逸分析机时,启动快照回滚到干净状态。
所述勒索软件的检测模型包括:如图1所示,勒索软件样本集合和正常样本集合;
把所述勒索软件样本集合和正常样本集合利用分布式沙箱对训练集合中的样本进行动态分析,提取沙箱分析后的报告;
根据特征构造算法建立特征集,采用五折交叉法进行模型的训练与测试,使用准确率这样的指标衡量模型性能。
根据分析,勒索软件会频繁访问个人文件夹以及目录,加密敏感文件。此外,还会进行注册表项更新,以保持持久性,或访问密钥来检索已安装的设备列表。勒索软件通常会试图搜索Python代理,检测是否在虚拟环境内。本专利主要目的在于检测勒索软件,所以从勒索软件刚植入电脑时的行为出发进行分析,基于此构建了三类特征集,所述特征集分别为API函数特征、行为特征以及内存特征。即如表1所示的构建的特征及特征的说明:
表1
大多数情况下,勒索软件会启动大量的系统调用,单个系统调用的计数量大,并难以表征勒索软件的行为。所以根据系统调用类别定义了API函数特征的特征向量,确定了不同类别的系统调用类型,所述API函数特征的类别如表2所示包括加密应用程序API类crypto、系统进程管理类API类process、进程服务类APIservices、注册表类APIregistry、资源类APIresource。如表2所示:
表2
类别 | 描述 |
crypto | 加密应用程序API类 |
process | 系统进程管理类API类 |
services | 进程服务类API |
registry | 注册表类API |
resource | 资源类API |
... | ... |
通常系统调用不是由程序直接访问,而是通过调用实际系统调用本身的高级应用程序接口(API),例如Windows API。而API由各种API函数实现,包含在几个API库文件中,通常是动态链接库dll文件。所以本方法抽取了256个API函数,以及96个动态链接库文件,计算样本的API调用、dll调用的频繁度,如表3所示:
表3
所述行为特征的网络行为是基于勒索软件遍历敏感文件后,通常会建立多个网络连接。由此构建一组特征,表示样本的网络行为中建立连接的主机域名个数,建立的tcp或者udp连接。
所述注册表行为关注注册表的四个功能的计数,包括注册表的访问、读取、修改与删除。当读取和访问大量注册表项时,考虑到嵌套的路径遍历。
所述文件行为,通过对勒索软件常加密的文件以及攻击方式进行分析,定义了一组描述对敏感文件的向量,捕获样本对敏感文件的操作,敏感文件集由"dll","exe","jpg","doc"这样的扩展名组成。
所述文件夹行为基于勒索软件执行后,通常会在文件系统中特定的路径或位置下创建文件。并在Windows操作系统中命名。由此包括敏感路径删除、移动、读取、遍历的计数值。如表4所示:
表4
所述内存特征考虑到恶意软件的对抗分析的技术,基于沙箱的行为捕获不能完全捕获样本的行为,结合Volatility内存取证工具以及Yara匹配工具,使用内存行为特征对沙箱捕获到的行为进行补充;在沙箱分析样本完毕后,首先使用Volatility获取执行后的沙箱的内存镜像,再使用Yara匹配工具根据匹配规则对镜像进行扫描、分析,获取行为标签。根据前期对勒索软件的分析,结合Yara匹配工具构造行为标签特征,构造了一组基于行为标签的特
征,此外另定义了一组描述互斥体(mutex)的特征,如表5所示:
表5
相比SVM及逻辑回归的方式,所述特征构造算法为随机森林(Random Forest,RF)算法有更高的稳定性和鲁棒性,恰当的训练参数可以获得更好的分类,随机森林算法是Bagging算法和Random Subspace算法的组合,基本构成单元是决策树,通过多棵决策树的组合h1(x),h2(x),…,hn(x)(可能是二叉树,也可能是多叉树)来提高分类的准确性,通过子树的最终投票对未知类别的样本进行分类。
从特征集k中选取最佳分类节点有三种,分别是根据信息增益、信息增益率或基尼系数。对应决策树类型为ID3、C4.5和CART,属性筛选的方法对算法性能影响较小,由此基于基尼系数选取最佳子树特征集。根据信息论中的熵值定义,信息熵越大表示数据的纯度越高。所述样本T的信息熵为公式(1)所示:
其中,Pi表示类别i样本占总样本数量的比例,在特征A作用后,样本T被分成了k个部分,此时基尼系数计算为公式(2)和公式(3)所示:
剪枝是训练树重要的一部分,RF算法中当子树划分的太细时,会发生过拟合。RF中降低过拟合的方式为剪枝,使用悲观剪枝(Pessimistic Error Pruning)进行剪枝,PEP首先计算规则在它应用的训练样例上的精度,然后假定此估计精度为二项式分布,并计算它的标准差。对于给定的置信区间,采用下界估计作为规则性能的度量,其中当节点Tt满足公式(4)时,Tt就会被裁剪掉,
e′(t)≤e′(Tt)+Se(e′(Tt)) (4)
e(t)为结点t的误差;i为覆盖Tt的叶子结点;Nt为子树Tt的叶子树;n(t)为在结点t处的训练集合数量。
在进行RF框架选择和改进时,选取完最佳子树特征集后,另一个影响过拟合能力的参数为基学习器。RF框架中,基学习器(base learner)的偏差小但方差较大,RF框架中整体模型的方差为:
基学习器数量为B,基学习器方差为σ2,两两基学习器间的相关性为ρ。一般来说B值太小,容易欠拟合,太大容易过拟合。对于RF来说,增加B值可以明显降低整体模型的方差,且不会对子模型的偏差和方差有任何影响。
所以基于PEP剪枝算法进行剪枝并结合网格搜索法选取基学习器的最优值。基于PEP剪枝算法的流程图如图2所示。
经由实践,即从互联网下载近几年的勒索病毒,并且从360官方商城下载正常样本。正常样本集中包含16类软件共397个样本(办公软件类、聊天工具类、数据恢复类、驱动工具类等)。勒索样本集中包含16类勒索家族共1412个勒索样本,包含当前主流与新出现的勒索软件(CryptoWall、CryptLocker、CryptMIC、Cerber、TeslaCrypt等)。正常样本集仅从360的官方应用商店,按软件使用比例下载软件。并检测两者数据集在Virus Total上的结果,筛选未被污染的样本。实验的环境如表6所示:
表6
接着与其他分类算法进行比较,即通过上面特征的选取,所生成的特征向量空间被转换为Data Frame格式,然后使用python的scikit-learn库进行处理分类,为了评价用于检测勒索样本的特征向量与模型的性能,将本专利提出的优化随机森林算法OP-RandomForest方法与SVM,Logistic Regression,Decision Tree进行比较,评估的指标包括准确率、F1值。实验结果如表7所示:
表7
从表7中可以看出,五种分类器的准确率都高于89%。其中使用随机森林算法构建的分类器性能最好准确率为96.57%,优化参数后的随机森林准确率下降了2%,但oob_score提高了0.7%,泛化能力有所提升。SVM和决策树的F1值以及准确率较低。在时间上分类器分类所有样本所消耗的时间中除SVM外,所用时间都低于6.6s。
另外还与常见杀毒软件进行比较,即本次取另一组勒索样本,首先计算每个样本在Virus Total上被杀毒软件检测的平均检测率`R=P/T,T为Virus Total上所有杀毒软件的计数,P为杀毒软软件检测为阳性的计数。
根据平均检测率低于0.1,0.3分两组勒索样本集合N1和N2。使用本专利提出的模型分别检测两组样本集并与杀毒软件AVG、Avira、ClamAV、Kaspersky、McAfee进行对比,对比`R1=0.1与`R2=0.3的结果,如表8所示,N为样本集的总数。其中杀毒软件McAfee的检测率最高,其次检测率较好的杀毒软件为Avira,而本专利提出的方法在两组实验中检测率都不低于95%,可以得出本方法相比常见杀毒软件,并且对于未知的勒索软件有更好的检测率。
表8
本发明的技术效果为:本发明为基于特征行为的频繁度并结合内存特征的方法,使用基于参数优化的随机森林算法构造模型。实验表明,与以往的勒索代码检测方法相比,在降低构建特征的维度、复杂度的同时,能很好的检测勒索软件与未知的勒索软件。
以上以附图说明的方式对本发明作了描述,本领域的技术人员应当理解,本公开不限于以上描述的实施例,在不偏离本发明的范围的情况下,可以做出各种变化、改变和替换。
Claims (10)
1.一种勒索软件检测的方法,其特征在于,所述勒索软件检测的方法分为先后顺序执行的两个部分,
1)勒索软件的检测模型训练:
首先,需要确定训练勒索软件检测模型的训练集,训练集分为2个子集:①勒索软件样本集合;②正常样本集合;利用分布式沙箱对训练集合中样本进行动态分析,提取沙箱分析后的报告;
2)勒索软件的检测模型的测试;
根据特征构造算法建立特征集,采用五折交叉法进行模型的训练与测试,使用准确率这样的指标衡量模型性能。
2.根据权利要求1所述的勒索软件检测的方法,其特征在于,将所述样本的动态分析的实验环境设置在虚拟机中,设置了快照与检查机制,当系统检测到恶意样本尝试逃逸分析机时,启动快照回滚到干净状态。
3.根据权利要求1所述的勒索软件检测的方法,其特征在于,所述勒索软件的检测模型包括:勒索软件样本集合和正常样本集合;
把所述勒索软件样本集合和正常样本集合利用分布式沙箱对训练集合中的样本进行动态分析,提取沙箱分析后的报告;
根据特征构造算法建立特征集,采用五折交叉法进行模型的训练与测试,使用准确率这样的指标衡量模型性能。
所述特征集分别为API函数特征、行为特征以及内存特征。
4.根据权利要求3所述的勒索软件检测的方法,其特征在于,所述API函数特征的类别包括加密应用程序API类crypto、系统进程管理类API类process、进程服务类APIservices、注册表类APIregistry、资源类APIresource。
5.根据权利要求3所述的勒索软件检测的方法,其特征在于,所述行为特征的网络行为构建一组特征,表示样本的网络行为中建立连接的主机域名个数,建立的tcp或者udp连接。
6.根据权利要求3所述的勒索软件检测的方法,其特征在于,所述注册表行为包括注册表的访问、读取、修改与删除。
7.根据权利要求3所述的勒索软件检测的方法,其特征在于,所述文件行为定义了一组描述对敏感文件的向量,捕获样本对敏感文件的操作,敏感文件集由"dll","exe","jpg","doc"这样的扩展名组成。
8.根据权利要求3所述的勒索软件检测的方法,其特征在于,所述文件夹行为包括敏感路径删除、移动、读取、遍历的计数值。
9.根据权利要求8所述的勒索软件检测的方法,其特征在于,所述内存特征基于沙箱的行为捕获不能完全捕获样本的行为,结合Volatility内存取证工具以及Yara匹配工具,使用内存行为特征对沙箱捕获到的行为进行补充;在沙箱分析样本完毕后,首先使用Volatility获取执行后的沙箱的内存镜像,再使用Yara匹配工具根据匹配规则对镜像进行扫描、分析,获取行为标签。
10.根据权利要求9所述的勒索软件检测的方法,其特征在于,所述特征构造算法为随机森林(Random Forest,RF)算法有更高的稳定性和鲁棒性,恰当的训练参数可以获得更好的分类,随机森林算法是Bagging算法和Random Subspace算法的组合,基本构成单元是决策树,通过多棵决策树的组合h1(x),h2(x),…,hn(x)来提高分类的准确性,通过子树的最终投票对未知类别的样本进行分类。
所述样本T的信息熵为公式(1)所示:
<mrow>
<mi>E</mi>
<mi>n</mi>
<mi>t</mi>
<mi>r</mi>
<mi>o</mi>
<mi>p</mi>
<mi>y</mi>
<mrow>
<mo>(</mo>
<mi>T</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mo>-</mo>
<msubsup>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>c</mi>
</msubsup>
<msub>
<mi>P</mi>
<mi>i</mi>
</msub>
<msub>
<mi>log</mi>
<mn>2</mn>
</msub>
<msub>
<mi>P</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
其中,Pi表示类别i样本占总样本数量的比例,在特征A作用后,样本T被分成了k个部分,此时基尼系数计算为公式(2)和公式(3)所示:
<mrow>
<mi>G</mi>
<mi>i</mi>
<mi>n</mi>
<mi>i</mi>
<mrow>
<mo>(</mo>
<mi>T</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mn>1</mn>
<mo>-</mo>
<msubsup>
<mi>&Sigma;</mi>
<mi>i</mi>
<mi>c</mi>
</msubsup>
<msub>
<mi>P</mi>
<mi>i</mi>
</msub>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mi>G</mi>
<mi>i</mi>
<mi>n</mi>
<mi>i</mi>
<mrow>
<mo>(</mo>
<mi>T</mi>
<mo>,</mo>
<mi>A</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<msubsup>
<mi>&Sigma;</mi>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>k</mi>
</msubsup>
<mfrac>
<mrow>
<mo>|</mo>
<msub>
<mi>T</mi>
<mi>j</mi>
</msub>
<mo>|</mo>
</mrow>
<mrow>
<mo>|</mo>
<mi>T</mi>
<mo>|</mo>
</mrow>
</mfrac>
<mi>G</mi>
<mi>i</mi>
<mi>n</mi>
<mi>i</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>T</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>3</mn>
<mo>)</mo>
</mrow>
</mrow>
RF中降低过拟合的方式为剪枝,使用悲观剪枝(Pessimistic Error Pruning)进行剪枝,PEP首先计算规则在它应用的训练样例上的精度,然后假定此估计精度为二项式分布,并计算它的标准差。对于给定的置信区间,采用下界估计作为规则性能的度量,其中当节点Tt满足公式(4)时,Tt就会被裁剪掉,e'(t)≤e'(Tt)+Se(e'(Tt)) (4)
<mrow>
<msup>
<mi>e</mi>
<mo>&prime;</mo>
</msup>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mo>&lsqb;</mo>
<mi>e</mi>
<mrow>
<mo>(</mo>
<mi>t</mi>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
<mo>&rsqb;</mo>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>5</mn>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<msup>
<mi>e</mi>
<mo>&prime;</mo>
</msup>
<mrow>
<mo>(</mo>
<msub>
<mi>T</mi>
<mi>t</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mi>&Sigma;</mi>
<mi>e</mi>
<mrow>
<mo>(</mo>
<mi>i</mi>
<mo>)</mo>
</mrow>
<mo>+</mo>
<mfrac>
<msub>
<mi>N</mi>
<mi>t</mi>
</msub>
<mn>2</mn>
</mfrac>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>6</mn>
<mo>)</mo>
</mrow>
</mrow>
e(t)为结点t的误差;i为覆盖Tt的叶子结点;Nt为子树Tt的叶子树;n(t)为在结点t处的训练集合数量。
在进行RF框架选择和改进时,选取完最佳子树特征集后,另一个影响过拟合能力的参数为基学习器。RF框架中,基学习器(base learner)的偏差小但方差较大,RF框架中整体模型的方差为:
<mrow>
<mi>S</mi>
<mo>=</mo>
<msup>
<mi>&sigma;</mi>
<mn>2</mn>
</msup>
<mo>&times;</mo>
<mi>&rho;</mi>
<mo>+</mo>
<mfrac>
<mrow>
<msup>
<mi>&sigma;</mi>
<mn>2</mn>
</msup>
<mrow>
<mo>(</mo>
<mrow>
<mn>1</mn>
<mo>-</mo>
<mi>&rho;</mi>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
<mi>B</mi>
</mfrac>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>7</mn>
<mo>)</mo>
</mrow>
</mrow>
基学习器数量为B,基学习器方差为σ2,两两基学习器间的相关性为ρ。所以基于PEP剪枝算法进行剪枝并结合网格搜索法选取基学习器的最优值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710365035.9A CN107273747A (zh) | 2017-05-22 | 2017-05-22 | 勒索软件检测的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710365035.9A CN107273747A (zh) | 2017-05-22 | 2017-05-22 | 勒索软件检测的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107273747A true CN107273747A (zh) | 2017-10-20 |
Family
ID=60064730
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710365035.9A Pending CN107273747A (zh) | 2017-05-22 | 2017-05-22 | 勒索软件检测的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107273747A (zh) |
Cited By (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108021806A (zh) * | 2017-11-24 | 2018-05-11 | 北京奇虎科技有限公司 | 一种恶意安装包的识别方法和装置 |
CN108804924A (zh) * | 2018-06-15 | 2018-11-13 | 深信服科技股份有限公司 | 一种基于沙盒的病毒检测方法、系统及相关装置 |
CN109409089A (zh) * | 2018-09-28 | 2019-03-01 | 西安电子科技大学 | 一种基于虚拟机自省的Windows加密型勒索软件检测方法 |
CN109614797A (zh) * | 2018-12-14 | 2019-04-12 | 北京车和家信息技术有限公司 | 车载信息娱乐系统的锁屏勒索软件查杀方法、装置及设备 |
CN109766691A (zh) * | 2018-12-20 | 2019-05-17 | 广东电网有限责任公司 | 一种勒索病毒监控方法及装置 |
CN109918692A (zh) * | 2018-11-08 | 2019-06-21 | 北京华风超越科技有限公司 | 一种基于数值模拟的统计模型建立方法和装置 |
CN110012013A (zh) * | 2019-04-04 | 2019-07-12 | 电子科技大学成都学院 | 一种基于knn的虚拟平台威胁行为分析方法及系统 |
TWI668593B (zh) * | 2018-03-27 | 2019-08-11 | 崑山科技大學 | 網路勒索病毒防護系統及其方法 |
CN110334510A (zh) * | 2018-03-28 | 2019-10-15 | 蓝盾信息安全技术有限公司 | 一种基于随机森林算法的恶意文件检测技术 |
CN110460611A (zh) * | 2019-08-16 | 2019-11-15 | 国家计算机网络与信息安全管理中心 | 基于机器学习的全流量攻击检测技术 |
CN110659485A (zh) * | 2018-06-28 | 2020-01-07 | 国际商业机器公司 | 通过诱饵训练检测对抗攻击 |
CN110837638A (zh) * | 2019-11-08 | 2020-02-25 | 鹏城实验室 | 一种勒索软件的检测方法、装置、设备及存储介质 |
CN111062035A (zh) * | 2019-11-18 | 2020-04-24 | 哈尔滨安天科技集团股份有限公司 | 一种勒索软件检测方法、装置、电子设备及存储介质 |
WO2020134311A1 (zh) * | 2018-12-26 | 2020-07-02 | 中兴通讯股份有限公司 | 一种恶意软件检测方法和装置 |
CN111600893A (zh) * | 2020-05-19 | 2020-08-28 | 山石网科通信技术股份有限公司 | 勒索软件的防御方法、装置、存储介质、处理器和主机 |
CN112615819A (zh) * | 2020-12-03 | 2021-04-06 | 北京锐服信科技有限公司 | 一种基于深度学习的入侵行为检测方法及系统 |
CN112965789A (zh) * | 2021-03-25 | 2021-06-15 | 绿盟科技集团股份有限公司 | 一种虚拟机内存空间处理方法、装置、设备和介质 |
CN113505826A (zh) * | 2021-07-08 | 2021-10-15 | 西安电子科技大学 | 基于联合特征选择的网络流量异常检测方法 |
CN113779573A (zh) * | 2021-08-04 | 2021-12-10 | 国家计算机网络与信息安全管理中心 | 一种基于系统溯源图的大规模勒索软件分析方法和分析装置 |
CN114091046A (zh) * | 2020-08-24 | 2022-02-25 | 卡巴斯基实验室股份制公司 | 识别对计算机系统的文件进行编码的加密器的系统和方法 |
US11270016B2 (en) | 2018-09-12 | 2022-03-08 | British Telecommunications Public Limited Company | Ransomware encryption algorithm determination |
CN114969734A (zh) * | 2022-05-16 | 2022-08-30 | 北京航空航天大学 | 一种基于api调用序列的勒索病毒变种检测方法 |
US11449612B2 (en) | 2018-09-12 | 2022-09-20 | British Telecommunications Public Limited Company | Ransomware remediation |
US11677757B2 (en) | 2017-03-28 | 2023-06-13 | British Telecommunications Public Limited Company | Initialization vector identification for encrypted malware traffic detection |
EP3918500B1 (en) * | 2019-03-05 | 2024-04-24 | Siemens Industry Software Inc. | Machine learning-based anomaly detections for embedded software applications |
WO2024093290A1 (zh) * | 2022-10-31 | 2024-05-10 | 华为技术有限公司 | 勒索软件的检测方法及装置 |
US12008102B2 (en) | 2018-09-12 | 2024-06-11 | British Telecommunications Public Limited Company | Encryption key seed determination |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160253498A1 (en) * | 2015-02-27 | 2016-09-01 | Qualcomm Incorporated | Methods and Systems for On-Device High-Granularity Classification of Device Behaviors using Multi-Label Models |
CN106203122A (zh) * | 2016-07-25 | 2016-12-07 | 西安交通大学 | 基于敏感子图的安卓恶意重打包软件检测方法 |
CN106529293A (zh) * | 2016-11-09 | 2017-03-22 | 东巽科技(北京)有限公司 | 一种用于恶意软件检测的样本类别判定方法 |
-
2017
- 2017-05-22 CN CN201710365035.9A patent/CN107273747A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160253498A1 (en) * | 2015-02-27 | 2016-09-01 | Qualcomm Incorporated | Methods and Systems for On-Device High-Granularity Classification of Device Behaviors using Multi-Label Models |
CN106203122A (zh) * | 2016-07-25 | 2016-12-07 | 西安交通大学 | 基于敏感子图的安卓恶意重打包软件检测方法 |
CN106529293A (zh) * | 2016-11-09 | 2017-03-22 | 东巽科技(北京)有限公司 | 一种用于恶意软件检测的样本类别判定方法 |
Non-Patent Citations (3)
Title |
---|
DANIELE SGANDURRA: "Automated Dynamic Analysis of Ransomware:Benefits, Limitations and use for Detection", 《COMPUTER SCIENCE》 * |
赵毅: "恶意代码分析系统的研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
黄小猛: "异构代价敏感决策树与随机森林核心技术", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11677757B2 (en) | 2017-03-28 | 2023-06-13 | British Telecommunications Public Limited Company | Initialization vector identification for encrypted malware traffic detection |
CN108021806A (zh) * | 2017-11-24 | 2018-05-11 | 北京奇虎科技有限公司 | 一种恶意安装包的识别方法和装置 |
TWI668593B (zh) * | 2018-03-27 | 2019-08-11 | 崑山科技大學 | 網路勒索病毒防護系統及其方法 |
CN110334510A (zh) * | 2018-03-28 | 2019-10-15 | 蓝盾信息安全技术有限公司 | 一种基于随机森林算法的恶意文件检测技术 |
CN108804924A (zh) * | 2018-06-15 | 2018-11-13 | 深信服科技股份有限公司 | 一种基于沙盒的病毒检测方法、系统及相关装置 |
US11829879B2 (en) | 2018-06-28 | 2023-11-28 | International Business Machines Corporation | Detecting adversarial attacks through decoy training |
CN110659485B (zh) * | 2018-06-28 | 2023-04-18 | 国际商业机器公司 | 用于通过诱饵训练检测对抗攻击的方法和装置 |
CN110659485A (zh) * | 2018-06-28 | 2020-01-07 | 国际商业机器公司 | 通过诱饵训练检测对抗攻击 |
US11270016B2 (en) | 2018-09-12 | 2022-03-08 | British Telecommunications Public Limited Company | Ransomware encryption algorithm determination |
US11449612B2 (en) | 2018-09-12 | 2022-09-20 | British Telecommunications Public Limited Company | Ransomware remediation |
US12008102B2 (en) | 2018-09-12 | 2024-06-11 | British Telecommunications Public Limited Company | Encryption key seed determination |
CN109409089A (zh) * | 2018-09-28 | 2019-03-01 | 西安电子科技大学 | 一种基于虚拟机自省的Windows加密型勒索软件检测方法 |
CN109918692A (zh) * | 2018-11-08 | 2019-06-21 | 北京华风超越科技有限公司 | 一种基于数值模拟的统计模型建立方法和装置 |
CN109614797A (zh) * | 2018-12-14 | 2019-04-12 | 北京车和家信息技术有限公司 | 车载信息娱乐系统的锁屏勒索软件查杀方法、装置及设备 |
CN109766691B (zh) * | 2018-12-20 | 2023-08-22 | 广东电网有限责任公司 | 一种勒索病毒监控方法及装置 |
CN109766691A (zh) * | 2018-12-20 | 2019-05-17 | 广东电网有限责任公司 | 一种勒索病毒监控方法及装置 |
CN111368289A (zh) * | 2018-12-26 | 2020-07-03 | 中兴通讯股份有限公司 | 一种恶意软件检测方法和装置 |
WO2020134311A1 (zh) * | 2018-12-26 | 2020-07-02 | 中兴通讯股份有限公司 | 一种恶意软件检测方法和装置 |
CN111368289B (zh) * | 2018-12-26 | 2023-08-29 | 中兴通讯股份有限公司 | 一种恶意软件检测方法和装置 |
EP3918500B1 (en) * | 2019-03-05 | 2024-04-24 | Siemens Industry Software Inc. | Machine learning-based anomaly detections for embedded software applications |
CN110012013A (zh) * | 2019-04-04 | 2019-07-12 | 电子科技大学成都学院 | 一种基于knn的虚拟平台威胁行为分析方法及系统 |
CN110460611A (zh) * | 2019-08-16 | 2019-11-15 | 国家计算机网络与信息安全管理中心 | 基于机器学习的全流量攻击检测技术 |
CN110460611B (zh) * | 2019-08-16 | 2022-01-11 | 国家计算机网络与信息安全管理中心 | 基于机器学习的全流量攻击检测技术 |
CN110837638A (zh) * | 2019-11-08 | 2020-02-25 | 鹏城实验室 | 一种勒索软件的检测方法、装置、设备及存储介质 |
CN110837638B (zh) * | 2019-11-08 | 2020-09-01 | 鹏城实验室 | 一种勒索软件的检测方法、装置、设备及存储介质 |
CN111062035B (zh) * | 2019-11-18 | 2024-02-20 | 安天科技集团股份有限公司 | 一种勒索软件检测方法、装置、电子设备及存储介质 |
CN111062035A (zh) * | 2019-11-18 | 2020-04-24 | 哈尔滨安天科技集团股份有限公司 | 一种勒索软件检测方法、装置、电子设备及存储介质 |
CN111600893A (zh) * | 2020-05-19 | 2020-08-28 | 山石网科通信技术股份有限公司 | 勒索软件的防御方法、装置、存储介质、处理器和主机 |
CN114091046A (zh) * | 2020-08-24 | 2022-02-25 | 卡巴斯基实验室股份制公司 | 识别对计算机系统的文件进行编码的加密器的系统和方法 |
CN112615819A (zh) * | 2020-12-03 | 2021-04-06 | 北京锐服信科技有限公司 | 一种基于深度学习的入侵行为检测方法及系统 |
CN112965789B (zh) * | 2021-03-25 | 2024-05-03 | 绿盟科技集团股份有限公司 | 一种虚拟机内存空间处理方法、装置、设备和介质 |
CN112965789A (zh) * | 2021-03-25 | 2021-06-15 | 绿盟科技集团股份有限公司 | 一种虚拟机内存空间处理方法、装置、设备和介质 |
CN113505826A (zh) * | 2021-07-08 | 2021-10-15 | 西安电子科技大学 | 基于联合特征选择的网络流量异常检测方法 |
CN113505826B (zh) * | 2021-07-08 | 2024-04-19 | 西安电子科技大学 | 基于联合特征选择的网络流量异常检测方法 |
CN113779573B (zh) * | 2021-08-04 | 2023-08-29 | 国家计算机网络与信息安全管理中心 | 一种基于系统溯源图的大规模勒索软件分析方法和分析装置 |
CN113779573A (zh) * | 2021-08-04 | 2021-12-10 | 国家计算机网络与信息安全管理中心 | 一种基于系统溯源图的大规模勒索软件分析方法和分析装置 |
CN114969734B (zh) * | 2022-05-16 | 2024-05-14 | 北京航空航天大学 | 一种基于api调用序列的勒索病毒变种检测方法 |
CN114969734A (zh) * | 2022-05-16 | 2022-08-30 | 北京航空航天大学 | 一种基于api调用序列的勒索病毒变种检测方法 |
WO2024093290A1 (zh) * | 2022-10-31 | 2024-05-10 | 华为技术有限公司 | 勒索软件的检测方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107273747A (zh) | 勒索软件检测的方法 | |
CN110958220B (zh) | 一种基于异构图嵌入的网络空间安全威胁检测方法及系统 | |
Suarez-Tangil et al. | Droidsieve: Fast and accurate classification of obfuscated android malware | |
Kouliaridis et al. | A survey on mobile malware detection techniques | |
US8549649B2 (en) | Systems and methods for sensitive data remediation | |
CN109684835A (zh) | 使用机器学习来检测恶意文件的系统和方法 | |
Ye et al. | Hierarchical associative classifier (HAC) for malware detection from the large and imbalanced gray list | |
Kloft et al. | Automatic feature selection for anomaly detection | |
Verma et al. | An Android Malware Detection Framework-based on Permissions and Intents. | |
CN107665164A (zh) | 安全数据检测方法和装置 | |
Bahrani et al. | Ransomware detection using process mining and classification algorithms | |
CN113901465A (zh) | 一种基于异质网络的Android恶意软件检测方法 | |
CN109344614A (zh) | 一种Android恶意应用在线检测方法 | |
CN106375303A (zh) | 攻击防御方法及装置 | |
Yousef et al. | Measuring the effectiveness of user and entity behavior analytics for the prevention of insider threats | |
Da et al. | Detection of Android malware security on system calls | |
J. Alyamani | Cyber security for federated learning environment using AI technique | |
CN115987687B (zh) | 网络攻击取证方法、装置、设备及存储介质 | |
Sahin et al. | An efficient firewall for web applications (EFWA) | |
Abraham et al. | A survey on preventing crypto ransomware using machine learning | |
Balasubramanian et al. | Obfuscated Malware detection using Machine Learning models | |
Mohd Saudi et al. | iOS mobile malware analysis: a state-of-the-art | |
Tiwari et al. | Identification of possibly intemperate permission demands in android apps | |
Hughes et al. | Performance measures of behavior-based signatures: an anti-malware solution for platforms with limited computing resource | |
Obimbo et al. | Comparison of SVMs with radial-basis function & polynomial kernels in classification of categories in intrusion detection |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171020 |