CN110555305A - 基于深度学习的恶意应用溯源方法及相关装置 - Google Patents
基于深度学习的恶意应用溯源方法及相关装置 Download PDFInfo
- Publication number
- CN110555305A CN110555305A CN201810555620.XA CN201810555620A CN110555305A CN 110555305 A CN110555305 A CN 110555305A CN 201810555620 A CN201810555620 A CN 201810555620A CN 110555305 A CN110555305 A CN 110555305A
- Authority
- CN
- China
- Prior art keywords
- malicious
- sample
- samples
- tracing
- index information
- 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/562—Static detection
- G06F21/563—Static detection by source code analysis
-
- 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/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于深度学习的恶意应用溯源方法、装置、计算机设备及存储介质,涉及网络安全领域。该方法包括:针对特定业务使用场景,获取多个已知恶意样本中每个样本的至少一个指标信息;利用相似度算法构建每个已知恶意样本所有指标信息的拓扑图;利用node2vec算法对每个拓扑图进行训练,得到所有已知恶意样本每个指标信息的拓扑图embedding特征向量,作为训练集;利用SVR算法对训练集进行训练,得到溯源恶意样本函数关系模型;利用该模型对待溯源恶意样本进行溯源。本方法采用针对特定业务使用场景的至少一个指标信息作为特征,利用node2vec算法和SVR算法进行溯源,相比与现有所有场景单一维度人工溯源,溯源结果更真实,计算量更小,溯源效率和准确度大大提高。
Description
技术领域
本发明涉及计算机网络安全领域,尤其涉及恶意应用的溯源方法、装置、计算机设备及计算机存储介质。
背景技术
近年来,随着网络的不断普及,移动互联网攻击者采用的攻击技术及攻击手段也有了新的发展趋势,攻击面呈立体化和多样化的特点,攻击者追求经济利益的目的越来越强,这种趋利性引发了大量的移动网络犯罪活动,且犯罪分子呈现集团化发展趋势。然而,由于恶意样本是零散、碎片化的,因此针对日益产业化、集团化的网络犯罪现象,有必要掌握恶意样本的发展趋势以及恶意样本直接的制作链条,对恶意样本进行溯源以便快速分析恶意应用。
传统的恶意样本溯源方法采用单一维度,通过人工制定的规则人工进行样本相似性比较来实现溯源,例如在图标维度,对图标进行相似度关联,这种方法会漏掉攻击者采用不同的图标相同的代码的攻击情况,同时由于采用人工提取的特征直接确定溯源结果,导致得到的溯源结果不真实。
发明内容
本发明实施例提供了一种基于深度学习的恶意应用溯源方法、相关装置、计算机设备及计算机存储介质,用以解决现有方法中所存在的溯源结果不真实的技术问题。。
第一方面,本发明实施方式提供了一种基于深度学习的恶意应用溯源方法。
具体地,所述方法包括:
针对特定业务使用场景,获取待溯源恶意样本和多个已知恶意样本中每个样本的至少一个指标信息;
计算每个已知恶意样本与其它已知恶意样本的所有对应指标信息的相似度,进而构建每个已知恶意样本的所有指标信息的拓扑图,另外计算待溯源恶意样本与所有已知恶意样本的所有对应指标信息的相似度,进而构建待溯源恶意样本的所有指标信息的拓扑图;
利用node2vec算法分别对所有已知恶意样本的每个指标信息的拓扑图以及待溯源恶意样本的每个指标信息拓扑图进行训练,得到所有已知恶意样本的每个指标信息的拓扑图embedding特征向量和待溯源恶意样本的每个指标信息的拓扑图embedding特征向量,以分别作为训练集和测试集;
利用SVR算法对所述训练集进行训练,得到溯源恶意样本函数关系模型;
使用所述溯源恶意样本函数关系模型对所述预测集进行预测,得到待溯源恶意样本与所述所有已知恶意样本之间的相似度;
根据所有样本之间的相似度结果以及所有所述已知恶意样本的捕获时间,确定所述待溯源恶意样本的溯源结果。
本发明实施例基于深度学习的恶意应用溯源方法,根据恶意应用针对特定业务使用场景提取的至少一个特征进行溯源,相对于任何业务场景使用单一指标特征溯源而言,溯源结果的真实性更高;另外,本方法采用node2vec算法对每个指标信息的拓扑图进行训练得到每个指标信息的拓扑图embedding特征向量以进行后续溯源,其中node2vec算法为训练网络节点潜在特征向量表示的方法,其通过结合宽度优先搜索(BFS)和深度优先搜索(DFS),借鉴语言模型,基于半监督深度学习方法进行训练,以提取每个指标信息的拓扑图的embedding特征向量,一方面能最大限度地发掘拓扑图的属性特征,另一方面对网络拓扑图进行降维处理,减小了后续溯源的计算量;再者,本方法采用SVR算法对由所有已知恶意样本的每个指标信息的拓扑图embedding特征向量构成的训练集进行训练,得到后续利用来预测的溯源恶意样本函数关系模型,SVR算法为基于SVM(支持向量机)的回归算法,其能综合考量大量数据彼此之间的影响,快速准确地获得恶意样本之间的相似程度,使得预测结果更精确。另外,相比与现有通过人工制定的规则人工一步一步进行样本相似性比较来实现溯源,本发明利用了深度学习提高了溯源效率和准确度。
本发明的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单的介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明方法实施例一的基于深度学习的恶意应用溯源方法的流程图;
图2为本发明方法实施例二的基于深度学习的恶意应用溯源方法的流程图;
图2a、图2b、图2c分别指示图2所示恶意应用溯源方法中待溯源恶意样本的资源文件的md5值、类名方法名、常量字符串数组;
图2d~2g分别为图2所示恶意应用溯源方法中,资源文件拓扑图、代码结构拓扑图、图标相似拓扑图、敏感常量拓扑图的节点embedding特征向量的示意图;
图3为本发明装置实施例的基于深度学习的恶意应用溯源装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
在本发明的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的标号如102、104等,仅仅是用于区分开各个不同的操作,标号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
下面将结合附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有付出创造性劳动的前提下所获得的所有其他实施方式,都属于本发明保护的范围。
【方法实施例1】
图1是根据本发明方法实施例1的基于深度学习的恶意应用溯源方法的流程图。参见图1,在本实施例中,所述方法包括:
步骤S101,针对特定业务使用场景,提取待溯源恶意样本和多个已知恶意样本中每个样本的至少一个指标信息;
对于不同的业务使用场景,选取每个恶意样本的多个信息作为指标信息进行跟踪溯源,例如,对于移动钓鱼场景,恶意样本的指标信息为资源文件信息、类名方法名信息、图标信息和常量字符串信息,对于其他业务场景,可以采用函数调用关系信息、文件名、文件生成时间信息等信息。本方法不限于对指标信息的筛选。多种维度的待溯源恶意样本信息,提高了溯源结果的准确可靠性。
其中,资源文件和类名方法名的获取可以采用对apk文件的反编译解析获取,图标信息通过DHASH的图标算法得到,常量字符串信息通过动态养殖和静态扫描得到。
需要说明的是,上述“多个已知恶意样本”可以是恶意样本规则库中的样本。
步骤S102,计算每个已知恶意样本与其它已知恶意样本的所有对应指标信息的相似度,进而构建每个已知恶意样本的所有指标信息的拓扑图,另外计算待溯源恶意样本与所有已知恶意样本的所有对应指标信息的相似度,进而构建待溯源恶意样本的所有指标信息的拓扑图;
计算相似度的方法可包括欧式距离、曼哈顿距离、字符串编辑聚类算法、simhash算法、dhash相似度算法等,当然也可采用其他方式来衡量恶意样本之间的相似性,本申请对此不做任何限定。
每个恶意样本的每个指标信息的拓扑图,是以涉及到的所有恶意样本的指标信息为各个节点,以计算出来的对应节点的指标信息的相似度值为对应边的权重,该拓扑图本质上就是关系图,通过拓扑关系,可以在下一步骤中利用node2vec算法来刻画出每个样本的特征向量。
步骤S103,利用node2vec算法分别对所有已知恶意样本的每个指标信息的拓扑图以及待溯源恶意样本的每个指标信息拓扑图进行训练,得到所有已知恶意样本的每个指标信息的拓扑图embedding特征向量和待溯源恶意样本的每个指标信息的拓扑图embedding特征向量,以分别作为训练集和测试集;
node2vec算法是一种将拓扑图中节点转化为节点向量的方法。该算法主要借鉴了word2vec,将拓扑图通过随机游走(Random Walks)的方式,转换为类似“sentence”的节点序列的形式。即在拓扑图中,通过一个节点本身,按照一个搜索的方法生成节点序列,这个节点序列可以对应于指标信息相似度的相关数据,后面通过word2vec框架,将节点embedding为一个向量。生成节点序列的搜索策略比较重要,这里通过随机游走,可例如,是通过一个节点恶意样本,然后查看该节点恶意样本的所有相关性恶意样本,接着遍历其中的一个相关性恶意样本,通过一个随机生成0,1的随机数,如果是0则进行广度搜索,继续遍历其他的相关性恶意样本,如果是1,则是深度搜索,遍历该相关性恶意样本的所有相关性恶意样本。
具体地,node2vec算法的所有输入为随机游走的每一条路线,对于随机游走,可以设定步数,这里假定20步(可根据计算能力尽量多选择),由于随机,则有可能回原点,即形成n个联通的点(n<=20),若有m个节点,会走出来m条n个联通的点组成的路线,然后利用Word2vec,把每条路线当成一句话,每个节点当成一个word,学习Word2vec(具体原理可以参考https://zhuanlan.zhihu.com/p/28922616),得到拓扑图embedding特征向量,至此,m个节点用了m个特征向量去表示,转化成为机器学习的变量形式。得到的该拓扑图embedding特征向量为深度学习的向量标识,是高度降维的标识,能够标识出这个样本的特征。
本步骤通过所有已知恶意样本的每个指标信息的拓扑图,利用node2vec算法获取所有已知恶意样本的每个指标信息的拓扑图embedding特征向量的方式,一方面,能够准确方便的获取恶意样本之间的特征数据,提高后续溯源结果的准确度,另外,能对每个指标信息的拓扑图进行修正,从而学习到拓扑图中每个节点的低维表示,能减小后续溯源的计算量。
步骤S104,利用基于SVM(支持向量机,Support Vector Machine)的SVR(支持向量回归,support vector regression)算法对所述训练集进行训练,得到溯源恶意样本函数关系模型;
支持向量机SVM的理论基础是统计学习理论,不同于最小化经验训练误差的传统方法,如:神经网络学习算法和最小二乘法等等,支持向量机使用结构风险最小化原则,即通过最大化分类超平面与训练数据之间的距离来最大限度地降低泛化误差,这也使得其对小样本数据同样有着良好的泛化能力。支持向量机对数据的预测方法是根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度)和学习能力(即无错误地识别任意样本的能力)之间寻求最佳折衷,以求获得最好的推广能力。
SVR算法能综合考量大量数据彼此之间的影响,快速准确的获得恶意样本之间的相似程度,使得预测结果更精确。为适应训练样本集的非线性,传统的拟合方法通常是在线性方程后面加高阶项,但是由此增加的可调参数增加了过拟合的风险。SVR算法采用核函数代替线性方程中的线性项可以使原来的线性算法“非线性化”,即能做非线性回归。与此同时,引进核函数达到了“升维”的目的,而增加的可调参数虽然是过拟合但依然能控制。
本实施例利用SVR算法对训练集“所有已知恶意样本的每个指标信息的拓扑图embedding特征向量”进行训练的详细原理,参考《数据挖掘导论》完整版(英文书名Introduction to Data Mining,陈封能、斯坦巴赫、库玛尔著,范明、范宏建等译;出版社:人民邮电出版社;出版时间:2011-01-01)的第156~180页。得到的溯源恶意样本函数关系模型就是支持向量机最终迭代出来的非线性的模型表达。
步骤S105,使用溯源恶意样本函数关系模型对预测集进行预测,得到待溯源恶意样本与所有已知恶意样本之间的相似度;
通过溯源恶意样本函数关系模型,将预测集中的待溯源恶意样本的每个指标信息的拓扑图embedding特征向量作为该模型的输入,此时获得的输出结果为待溯源恶意样本与所有已知恶意样本之间的相似度。
步骤S106,根据所有样本之间的相似度结果以及所有已知恶意样本的捕获时间,确定待溯源恶意样本的溯源结果。
作为示例,可以通过流量数据获取到所有已知恶意样本第一次出现在网络中的时间,即捕获时间,利用时间线,就可以得到待溯源恶意样本的溯源结果。
由上述技术方案可知,本发明实施例基于深度学习的恶意应用溯源方法,针对一个获取到的恶意样本通过针对特定业务使用场景的多个特征簇,针对每个特征簇为维度计算的样本相似度,采用深度学习node2vec算法的思想进行改进计算恶意样本的同构性,最后利用SVR算法进行学习函数关系。这个函数,结合活跃时间计算出样本演化和溯源信息。整套方法的实现基于Hadoop平台,使用mapreduce并行计算,将数据存储于HDFS中,可适应性好。
由于人工提取特征的片面性,本方法引入深度学习的相关方法,特别是node2vec,让机器来发现特征,以对特征进行向量化训练,更能接近真实的制作场景的关联,另外还加入了样本之间的关系特征,期望加入深度网络来增加机器对宏观网络上的特征提取和训练,从而提高恶意样本溯源的准确度。
进一步地,上述步骤S106可以包括:
当待溯源恶意样本为稀有样本时,根据样本之间的相似度结果选择相似度值由大到小排序靠前的预设个数的已知恶意样本作为溯源样本集合;
需要说明的是,相似性越大,则样本作为参考的意义较大。
当待溯源恶意样本为非稀有样本时,根据样本之间的相似度结果选择满足相似度阈值的已知恶意样本作为溯源样本集合;
确定上述溯源样本集合中捕获时间最早的已知恶意样本为待溯源恶意样本的溯源结果。
需要说明的是,非稀有样本是指某类样本被复制或者重写非常多。本技术方案采用的溯源样本集合充分考虑场景的多样性,因此溯源结果更有效。
综上所述,本方法根据恶意应用针对特定业务使用场景提取的至少一个特征进行溯源,相对于任何业务场景使用单一指标特征溯源而言,溯源结果的真实性更高;另外,本方法采用node2vec算法对每个指标信息的拓扑图进行训练得到每个指标信息的拓扑图embedding特征向量以进行后续溯源,一方面能最大限度地发掘拓扑图的属性特征,另一方面对网络拓扑图进行降维处理,减小了后续溯源的计算量;再者,本方法采用SVR算法对由所有已知恶意样本的每个指标信息的拓扑图embedding特征向量构成的训练集进行训练,得到后续利用来预测的溯源恶意样本函数关系模型,综合考量了大量数据彼此之间的影响,能快速准确地获得恶意样本之间的相似程度,使得预测结果更精确。相比与现有通过人工制定的规则人工一步一步进行样本相似性比较来实现溯源,本方法利用了深度学习从而提高了溯源效率和准确度。
【方法实施例2】
本实施例基于深度学习的恶意应用溯源方法,其具体对待溯源恶意样本615E12812A15652559671F5F776EE02B进行溯源,参考图2,该方法包括如下步骤:
步骤S201,针对移动钓鱼场景,获取待溯源恶意样本和多个已知恶意样本中每个样本的资源文件信息、类名方法名信息、图标信息和常量字符串信息;
作为示例,待溯源恶意样本615E12812A15652559671F5F776EE02B的上述指标信息中,资源文件的md5值见图2a,类名方法名见图2b,图标dhash为:f0d4ec9696c8c4f0;常量字符串数组见图2c。
步骤S202,根据资源文件信息、类名方法名信息、图标信息和常量字符串信息,计算每个已知恶意样本与其它已知恶意样本的资源文件相似度、类名方法名相似度、图标相似度以及常量字符串相似度,进而构建每个已知恶意样本的资源文件拓扑图、代码结构拓扑图、图标相似拓扑图、敏感常量拓扑图,另外计算待溯源恶意样本与所有已知恶意样本的资源文件相似度、类名方法名相似度、图标相似度以及常量字符串相似度,进而构建待溯源恶意样本的资源文件拓扑图、代码结构拓扑图、图标相似拓扑图、敏感常量拓扑图;
其中,资源文件拓扑图,以资源文件名称(不含路径名称)为节点,相似度算法采用字符串编辑聚类算法,计算出来的相似度值标准化为0-1后,作为边的权重;代码结构拓扑图,以代码段simhash值(不含路径名称)为节点,相似度算法采用simhash算法,计算出来的相似度值标准化为0-1后,作为边的权重;图标相似拓扑图,以图标dhash(不含路径名称)为节点,相似度算法采用dhash相似度算法,计算出来的相似度值标准化为0-1后,作为边的权重;敏感常量拓扑图,以静态反编译出的字符串常量为节点,相似度算法采用精准匹配的欧式距离算法,计算出来的相似度值标准化为0-1后,作为边的权重。
步骤S203,利用node2vec算法分别对所有已知恶意样本的资源文件拓扑图、代码结构拓扑图、图标相似拓扑图、敏感常量拓扑图进行训练,得到所有已知恶意样本的每个拓扑图的embedding特征向量,以作为训练集;利用node2vec算法分别对待溯源恶意样本的资源文件拓扑图、代码结构拓扑图、图标相似拓扑图、敏感常量拓扑图进行训练,得到待溯源恶意样本的每个拓扑图的embedding特征向量,以作为测试集,参见图2d~2g,图2d~2g中,点代表样本,线代表样本之间的相似度,当相似度为0的时候样本之间没有线。
步骤S204,利用SVR算法对上述训练集进行训练,得到溯源恶意样本函数关系模型;
步骤S205,使用上述溯源恶意样本函数关系模型对预测集中的待溯源恶意样本的每个拓扑图的embedding特征向量进行预测,得到待溯源恶意样本与所有已知恶意样本之间的相似度;
步骤S206,根据所有样本之间的相似度结果以及所有已知恶意样本的捕获时间,确定待溯源恶意样本的溯源结果。
根据本方法,对恶意样本615E12812A15652559671F5F776EE02B进行预测,最终得到溯源样本如下:
已知恶意样本:8ABBAC2D9C20856E52CB1A2562C6844:相似度为0.987;捕获时间为8月20日;
已知恶意样本:6FD0E36BC8DF58A58CD5FC251AB499DD:相似度为0.942;捕获时间为8月16日;
已知恶意样本:D713E85CDA848DE14429993BA52AE371:相似度为0.961;捕获时间为8月3日,
由上,可以确定已知恶意样本D713E85CDA848DE14429993BA52AE371为我们要找到的最早的与恶意样本关联的样本。
【装置实施例】
图3是根据本发明装置实施例的基于深度学习的恶意应用溯源装置的示意图。参见图3,在本实施例中,所述装置包括:
指标信息获取模块31,用于针对特定业务使用场景,获取待溯源恶意样本和多个已知恶意样本中每个样本的至少一个指标信息;
指标信息相似度计算及拓扑图构建模块32,用于计算每个已知恶意样本与其它已知恶意样本的所有对应指标信息的相似度,进而构建每个已知恶意样本的所有指标信息的拓扑图,另外计算待溯源恶意样本与所有已知恶意样本的所有对应指标信息的相似度,进而构建待溯源恶意样本的所有指标信息的拓扑图;
embedding特征向量获取模块33,用于利用node2vec算法分别对所有已知恶意样本的每个指标信息的拓扑图以及待溯源恶意样本的每个指标信息拓扑图进行训练,得到所有已知恶意样本的每个指标信息的拓扑图embedding特征向量和待溯源恶意样本的每个指标信息的拓扑图embedding特征向量,以分别作为训练集和测试集;
溯源恶意样本函数关系模型建立模块34,用于利用SVR算法对所述训练集进行训练,得到溯源恶意样本函数关系模型;
样本相似度确定模块35,用于使用所述溯源恶意样本函数关系模型对所述预测集进行预测,得到待溯源恶意样本与所述所有已知恶意样本之间的相似度;
溯源结果确定模块36,用于根据所有样本之间的相似度结果以及所有所述已知恶意样本的捕获时间,确定所述待溯源恶意样本的溯源结果。
在本实施例的一种实施方式中,特定业务使用场景为移动钓鱼场景,至少一个指标信息包括资源文件信息、类名方法名信息、图标信息和常量字符串信息。
在本实施例的一种实施方式中,溯源结果确定模块36包括:
第一溯源样本集合确定单元361,用于当待溯源恶意样本为稀有样本时,根据样本之间的相似度结果选择相似度值由大到小排序靠前的预设个数的已知恶意样本作为溯源样本集合;
第二溯源样本集合确定单元362,用于当待溯源恶意样本为非稀有样本时,根据样本之间的相似度结果选择满足相似度阈值的已知恶意样本作为溯源样本集合;
溯源结果确定单元363,用于将所述溯源样本集合中捕获时间最早的已知恶意样本作为待溯源恶意样本的溯源结果。
由上述技术方案可知,本装置通过指标信息获取模块31根据恶意应用针对特定业务使用场景提取的至少一个特征进行溯源,相对于任何业务场景使用单一指标特征溯源而言,溯源结果的真实性更高;另外,本装置通过embedding特征向量获取模块33采用node2vec算法对每个指标信息的拓扑图进行训练得到每个指标信息的拓扑图embedding特征向量以进行后续溯源,一方面能最大限度地发掘拓扑图的属性特征,另一方面对网络拓扑图进行降维处理,减小了后续溯源的计算量;再者,本装置通过溯源恶意样本函数关系模型建立模块34采用SVR算法对由所有已知恶意样本的每个指标信息的拓扑图embedding特征向量构成的训练集进行训练,得到后续利用来预测的溯源恶意样本函数关系模型,综合考量了大量数据彼此之间的影响,能快速准确地获得恶意样本之间的相似程度,使得预测结果更精确。相比与现有通过人工制定的规则人工一步一步进行样本相似性比较来实现溯源,本装置利用了深度学习从而提高了溯源效率和准确度。
本发明的实施例还提供了一种计算机设备,包括处理器以及用于存放计算机程序的存储器,该处理器用于执行存储器上所存放的计算机程序,以实现方法实施例1或方法实施例2所述的基于深度学习的恶意应用溯源方法,或者,以实现装置实施例1所述的基于深度学习的恶意应用溯源装置所执行的处理。
此外,本发明的实施例还提供了一种计算机存储介质,该计算机存储介质内存储有计算机程序,其中计算机程序被处理器执行时实现方法实施例1或方法实施例3所述的基于深度学习的恶意应用溯源方法,或者,实现装置实施例1基于深度学习的恶意应用溯源装置所执行的处理。
上述存储介质和计算机设备,由于实现了上述基于深度学习的恶意应用溯源方法,因此同理能根据针对特定业务使用场景所提取的至少一个特征进行恶意样本溯源,溯源结果的真实性更高,由于采用了node2vec算法和SVR算法,故能发掘拓扑图的属性特征,综合考量大量数据彼此之间的影响,从而快速准确地获得恶意样本之间的相似程度,溯源效率和准确度大大提高。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同及相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
本领域的技术人员可以清楚地了解到本发明可全部通过软件实现,也可借助软件结合硬件平台的方式来实现。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,所述计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、智能手机或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本文中所使用的“软件”等词均指一般意义上的任意类型的计算机编码或者计算机可执行指令集,可以运行所述编码或者指令集来使计算机或其他处理器程序化以执行如上所述的本发明的技术方案的各个方面。此外,需要说明的是,根据实施例的一个方面,在执行时实施本发明的技术方案的方法的一个或多个计算机程序不必须要在一台计算机或处理器上,而是可以分布于多个计算机或者处理器中的模块中,以执行本发明的技术方案的各个方面。
计算机可执行指令可以有许多形式,如程序模块,可以由一台或多台计算机或是其他设备执行。一般地,程序模块包括例程、程序、对象、组件以及数据结构等等,执行特定的任务或是实施特定的抽象数据类型。特别地,在各种实施例中,程序模块进行的操作可以根据各个不同实施例的需要进行结合或者拆分。
并且,本发明的技术方案可以体现为一种方法,并且已经提供了所述方法的至少一个示例。可以通过任何一种合适的顺序执行动作,所述动作表现为所述方法中的一部分。因此,实施例可以构造成可以按照与所示出的执行顺序不同的顺序执行动作,其中,可以包括同时地执行一些动作(尽管在示出的实施例中,这些动作是连续的)。
在本发明的各个具体实施例中,所描述的特征、架构或功能可在一个或一个以上实施例中以任何方式组合,其中众所周知的操作过程、程序模块、单元及其相互之间的连接、链接、通信或操作没有示出或未作详细说明。本领域技术人员应当理解,下述的各种实施例只用于举例说明,而非用于限制本发明的保护范围。本领域的技术人员还可以容易理解,本文所述和附图所示的各实施方式中的程序模块、单元或步骤可以按多种不同配置进行组合和设计。
对于未在本说明书中进行具体说明的技术术语,除非另有特定说明,都应以本领域最宽泛的意思进行解释。本文所给出的和使用的定义,应当对照字典、通过引用而并入的文档中的定义、和/或其通常意思进行理解。本文使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。
在权利要求书中以及上述的说明书中,所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项的任何或所有可能组合。应当理解,尽管在本文可能采用术语第一、第二、第三等来描述各种信息和/或模块,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息和/或模块彼此区分开。例如,在不脱离本文范围的情况下,第一信息和/或模块也可以被称为第二信息和/或模块,类似地,第二信息和/或模块也可以被称为第一信息和/或模块。另外,在此所使用的词语“如果”,其意思取决于语境,可以被解释成为“在……时”或“当……时”或“响应于确定”。
在权利要求书中以及上述的说明书中,所有的过度短语,例如“包括”、“具有”、“包含”、“承载”、“具有”、“涉及”、“主要由…组成”以及其任何其它变体是应理解为是开放式的,即,包含但不限于,意在涵盖非排它性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明说明书中使用的术语和措辞仅仅为了举例说明,并不意味构成限定。本领域技术人员应当理解,在不脱离所公开的实施例的基本原理的前提下,对上述实施例中的各细节可进行各种变化。因此,本发明的范围只由权利要求确定,在权利要求中,除非另有说明,所有的术语应按最宽泛合理的意思进行理解。
Claims (8)
1.一种基于深度学习的恶意应用溯源方法,包括:
针对特定业务使用场景,获取待溯源恶意样本和多个已知恶意样本中每个样本的至少一个指标信息;
计算每个已知恶意样本与其它已知恶意样本的所有对应指标信息的相似度,进而构建每个已知恶意样本的所有指标信息的拓扑图,另外计算待溯源恶意样本与所有已知恶意样本的所有对应指标信息的相似度,进而构建待溯源恶意样本的所有指标信息的拓扑图;
利用node2vec算法分别对所有已知恶意样本的每个指标信息的拓扑图以及待溯源恶意样本的每个指标信息拓扑图进行训练,得到所有已知恶意样本的每个指标信息的拓扑图embedding特征向量和待溯源恶意样本的每个指标信息的拓扑图embedding特征向量,以分别作为训练集和测试集;
利用SVR算法对所述训练集进行训练,得到溯源恶意样本函数关系模型;
使用所述溯源恶意样本函数关系模型对所述预测集进行预测,得到待溯源恶意样本与所述所有已知恶意样本之间的相似度;
根据所有样本之间的相似度结果以及所有所述已知恶意样本的捕获时间,确定所述待溯源恶意样本的溯源结果。
2.如权利要求1所述的基于深度学习的恶意应用溯源方法,其特征在于,所述特定业务使用场景为移动钓鱼场景,所述至少一个指标信息包括资源文件信息、类名方法名信息、图标信息和常量字符串信息。
3.如权利要求1或2所述的基于深度学习的恶意应用溯源方法,其特征在于,所述根据所有样本之间的相似度结果以及所有所述已知恶意样本的捕获时间,确定所述待溯源恶意样本的溯源结果,包括:
当待溯源恶意样本为稀有样本时,根据样本之间的相似度结果选择相似度值由大到小排序靠前的预设个数的已知恶意样本作为溯源样本集合;
当待溯源恶意样本为非稀有样本时,根据样本之间的相似度结果选择满足相似度阈值的已知恶意样本作为溯源样本集合;
确定所述溯源样本集合中捕获时间最早的已知恶意样本为待溯源恶意样本的溯源结果。
4.一种基于深度学习的恶意应用溯源装置,包括:
指标信息获取模块,用于针对特定业务使用场景,获取待溯源恶意样本和多个已知恶意样本中每个样本的至少一个指标信息;
指标信息相似度计算及拓扑图构建模块,用于计算每个已知恶意样本与其它已知恶意样本的所有对应指标信息的相似度,进而构建每个已知恶意样本的所有指标信息的拓扑图,另外计算待溯源恶意样本与所有已知恶意样本的所有对应指标信息的相似度,进而构建待溯源恶意样本的所有指标信息的拓扑图;
embedding特征向量获取模块,用于利用node2vec算法分别对所有已知恶意样本的每个指标信息的拓扑图以及待溯源恶意样本的每个指标信息拓扑图进行训练,得到所有已知恶意样本的每个指标信息的拓扑图embedding特征向量和待溯源恶意样本的每个指标信息的拓扑图embedding特征向量,以分别作为训练集和测试集;
溯源恶意样本函数关系模型建立模块,用于利用SVR算法对所述训练集进行训练,得到溯源恶意样本函数关系模型;
样本相似度确定模块,用于使用所述溯源恶意样本函数关系模型对所述预测集进行预测,得到待溯源恶意样本与所述所有已知恶意样本之间的相似度;
溯源结果确定模块,用于根据所有样本之间的相似度结果以及所有所述已知恶意样本的捕获时间,确定所述待溯源恶意样本的溯源结果。
5.如权利要求1所述的基于深度学习的恶意应用溯源装置,其特征在于,所述特定业务使用场景为移动钓鱼场景,所述至少一个指标信息包括资源文件信息、类名方法名信息、图标信息和常量字符串信息。
6.如权利要求1或2所述的基于深度学习的恶意应用溯源装置,其特征在于,所述溯源结果确定模块包括:
第一溯源样本集合确定单元,用于当待溯源恶意样本为稀有样本时,根据样本之间的相似度结果选择相似度值由大到小排序靠前的预设个数的已知恶意样本作为溯源样本集合;
第二溯源样本集合确定单元,用于当待溯源恶意样本为非稀有样本时,根据样本之间的相似度结果选择满足相似度阈值的已知恶意样本作为溯源样本集合;
溯源结果确定单元,用于将所述溯源样本集合中捕获时间最早的已知恶意样本作为待溯源恶意样本的溯源结果。
7.一种计算机设备,包括:
处理器;
用于存放计算机程序的存储器,
其特征在于,所述处理器用于执行所述存储器上所存放的计算机程序,以实现权利要求1或2或3所述的基于深度学习的恶意应用溯源方法。
8.一种计算机存储介质,其特征在于,所述计算机存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1或2或3所述的基于深度学习的恶意应用溯源方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810555620.XA CN110555305A (zh) | 2018-05-31 | 2018-05-31 | 基于深度学习的恶意应用溯源方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810555620.XA CN110555305A (zh) | 2018-05-31 | 2018-05-31 | 基于深度学习的恶意应用溯源方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110555305A true CN110555305A (zh) | 2019-12-10 |
Family
ID=68734546
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810555620.XA Pending CN110555305A (zh) | 2018-05-31 | 2018-05-31 | 基于深度学习的恶意应用溯源方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110555305A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111325578A (zh) * | 2020-02-20 | 2020-06-23 | 深圳市腾讯计算机系统有限公司 | 预测模型的样本确定方法及装置、介质和设备 |
CN111667075A (zh) * | 2020-06-12 | 2020-09-15 | 杭州浮云网络科技有限公司 | 一种业务执行方法、装置及其相关设备 |
CN112579840A (zh) * | 2020-12-22 | 2021-03-30 | 中检集团溯源技术服务有限公司 | 一种展示不同追溯结果的查询系统及方法 |
CN113610034A (zh) * | 2021-08-16 | 2021-11-05 | 脸萌有限公司 | 识别视频中人物实体的方法、装置、存储介质及电子设备 |
CN114185937A (zh) * | 2021-11-03 | 2022-03-15 | 王伟强 | 基于数字金融的大数据溯源方法及系统 |
CN115277127A (zh) * | 2022-07-12 | 2022-11-01 | 清华大学 | 基于系统溯源图搜索匹配攻击模式的攻击检测方法及装置 |
US11544530B2 (en) * | 2018-10-29 | 2023-01-03 | Nec Corporation | Self-attentive attributed network embedding |
CN117176416A (zh) * | 2023-09-01 | 2023-12-05 | 中国信息通信研究院 | 一种基于图模型的攻击团伙发现方法和系统 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101140611A (zh) * | 2007-09-18 | 2008-03-12 | 北京大学 | 一种恶意代码自动识别方法 |
CN102790706A (zh) * | 2012-07-27 | 2012-11-21 | 福建富士通信息软件有限公司 | 海量事件安全分析方法及装置 |
CN104866765A (zh) * | 2015-06-03 | 2015-08-26 | 康绯 | 基于行为特征相似性的恶意代码同源性分析方法 |
CN105956473A (zh) * | 2016-05-15 | 2016-09-21 | 广东技术师范学院 | 基于sdn网络的恶意代码检测方法 |
CN106203122A (zh) * | 2016-07-25 | 2016-12-07 | 西安交通大学 | 基于敏感子图的安卓恶意重打包软件检测方法 |
CN106503558A (zh) * | 2016-11-18 | 2017-03-15 | 四川大学 | 一种基于社团结构分析的Android恶意代码检测方法 |
CN106844346A (zh) * | 2017-02-09 | 2017-06-13 | 北京红马传媒文化发展有限公司 | 基于深度学习模型Word2Vec的短文本语义相似性判别方法和系统 |
CN107122455A (zh) * | 2017-04-26 | 2017-09-01 | 中国人民解放军国防科学技术大学 | 一种基于微博的网络用户增强表示方法 |
CN107169358A (zh) * | 2017-05-24 | 2017-09-15 | 中国人民解放军信息工程大学 | 基于代码指纹的代码同源性检测方法及其装置 |
CN107194251A (zh) * | 2017-04-01 | 2017-09-22 | 中国科学院信息工程研究所 | Android平台恶意应用检测方法及装置 |
CN107256357A (zh) * | 2017-04-18 | 2017-10-17 | 北京交通大学 | 基于深度学习的安卓恶意应用的检测和分析方法 |
CN107341401A (zh) * | 2017-06-21 | 2017-11-10 | 清华大学 | 一种基于机器学习的恶意应用监测方法和设备 |
US20170353481A1 (en) * | 2016-06-06 | 2017-12-07 | Samsung Electronics Co., Ltd. | Malware detection by exploiting malware re-composition variations using feature evolutions and confusions |
CN107563201A (zh) * | 2017-09-08 | 2018-01-09 | 北京奇虎科技有限公司 | 基于机器学习的关联样本查找方法、装置及服务器 |
-
2018
- 2018-05-31 CN CN201810555620.XA patent/CN110555305A/zh active Pending
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101140611A (zh) * | 2007-09-18 | 2008-03-12 | 北京大学 | 一种恶意代码自动识别方法 |
CN102790706A (zh) * | 2012-07-27 | 2012-11-21 | 福建富士通信息软件有限公司 | 海量事件安全分析方法及装置 |
CN104866765A (zh) * | 2015-06-03 | 2015-08-26 | 康绯 | 基于行为特征相似性的恶意代码同源性分析方法 |
CN105956473A (zh) * | 2016-05-15 | 2016-09-21 | 广东技术师范学院 | 基于sdn网络的恶意代码检测方法 |
US20170353481A1 (en) * | 2016-06-06 | 2017-12-07 | Samsung Electronics Co., Ltd. | Malware detection by exploiting malware re-composition variations using feature evolutions and confusions |
CN106203122A (zh) * | 2016-07-25 | 2016-12-07 | 西安交通大学 | 基于敏感子图的安卓恶意重打包软件检测方法 |
CN106503558A (zh) * | 2016-11-18 | 2017-03-15 | 四川大学 | 一种基于社团结构分析的Android恶意代码检测方法 |
US20180144132A1 (en) * | 2016-11-18 | 2018-05-24 | Sichuan University | Kind of android malicious code detection method on the base of community structure analysis |
CN106844346A (zh) * | 2017-02-09 | 2017-06-13 | 北京红马传媒文化发展有限公司 | 基于深度学习模型Word2Vec的短文本语义相似性判别方法和系统 |
CN107194251A (zh) * | 2017-04-01 | 2017-09-22 | 中国科学院信息工程研究所 | Android平台恶意应用检测方法及装置 |
CN107256357A (zh) * | 2017-04-18 | 2017-10-17 | 北京交通大学 | 基于深度学习的安卓恶意应用的检测和分析方法 |
CN107122455A (zh) * | 2017-04-26 | 2017-09-01 | 中国人民解放军国防科学技术大学 | 一种基于微博的网络用户增强表示方法 |
CN107169358A (zh) * | 2017-05-24 | 2017-09-15 | 中国人民解放军信息工程大学 | 基于代码指纹的代码同源性检测方法及其装置 |
CN107341401A (zh) * | 2017-06-21 | 2017-11-10 | 清华大学 | 一种基于机器学习的恶意应用监测方法和设备 |
CN107563201A (zh) * | 2017-09-08 | 2018-01-09 | 北京奇虎科技有限公司 | 基于机器学习的关联样本查找方法、装置及服务器 |
Non-Patent Citations (4)
Title |
---|
ADITYA GROVER等: "node2vec:Scalabnle Feature Learning for Networks", 《ACM》 * |
张林等: "基于卷积神经网络的链接表示及预测方法", 《浙江大学学报(工学版)》 * |
李旭姣: "APP检测技术在移动互联网安全管控中的应用", 《电信快报》 * |
杜炜等: "基于半监督学习的安卓恶意软件检测及其恶意行为分析", 《信息安全研究》 * |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11544530B2 (en) * | 2018-10-29 | 2023-01-03 | Nec Corporation | Self-attentive attributed network embedding |
CN111325578B (zh) * | 2020-02-20 | 2023-10-31 | 深圳市腾讯计算机系统有限公司 | 预测模型的样本确定方法及装置、介质和设备 |
CN111325578A (zh) * | 2020-02-20 | 2020-06-23 | 深圳市腾讯计算机系统有限公司 | 预测模型的样本确定方法及装置、介质和设备 |
CN111667075A (zh) * | 2020-06-12 | 2020-09-15 | 杭州浮云网络科技有限公司 | 一种业务执行方法、装置及其相关设备 |
CN112579840A (zh) * | 2020-12-22 | 2021-03-30 | 中检集团溯源技术服务有限公司 | 一种展示不同追溯结果的查询系统及方法 |
CN112579840B (zh) * | 2020-12-22 | 2024-04-09 | 中检计量有限公司 | 一种展示不同追溯结果的查询系统及方法 |
CN113610034A (zh) * | 2021-08-16 | 2021-11-05 | 脸萌有限公司 | 识别视频中人物实体的方法、装置、存储介质及电子设备 |
CN113610034B (zh) * | 2021-08-16 | 2024-04-30 | 脸萌有限公司 | 识别视频中人物实体的方法、装置、存储介质及电子设备 |
CN114185937B (zh) * | 2021-11-03 | 2022-12-06 | 苏州汇成软件开发科技有限公司 | 基于数字金融的大数据溯源方法及系统 |
CN114185937A (zh) * | 2021-11-03 | 2022-03-15 | 王伟强 | 基于数字金融的大数据溯源方法及系统 |
CN115277127A (zh) * | 2022-07-12 | 2022-11-01 | 清华大学 | 基于系统溯源图搜索匹配攻击模式的攻击检测方法及装置 |
CN115277127B (zh) * | 2022-07-12 | 2024-07-09 | 清华大学 | 基于系统溯源图搜索匹配攻击模式的攻击检测方法及装置 |
CN117176416A (zh) * | 2023-09-01 | 2023-12-05 | 中国信息通信研究院 | 一种基于图模型的攻击团伙发现方法和系统 |
CN117176416B (zh) * | 2023-09-01 | 2024-05-24 | 中国信息通信研究院 | 一种基于图模型的攻击团伙发现方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110555305A (zh) | 基于深度学习的恶意应用溯源方法及相关装置 | |
Li et al. | Multi-level network embedding with boosted low-rank matrix approximation | |
CN109471938A (zh) | 一种文本分类方法及终端 | |
Shen et al. | Identity inference on blockchain using graph neural network | |
Li et al. | A minimum enclosing ball-based support vector machine approach for detection of phishing websites | |
Nunes et al. | GraphHD: Efficient graph classification using hyperdimensional computing | |
Aziguli et al. | A robust text classifier based on denoising deep neural network in the analysis of big data | |
Ma et al. | A comprehensive study on learning-based PE malware family classification methods | |
Yang et al. | A novel detection method for word-based DGA | |
Zhu et al. | CCBLA: a lightweight phishing detection model based on CNN, BiLSTM, and attention mechanism | |
Zhao et al. | Text sentiment analysis algorithm optimization and platform development in social network | |
Said et al. | DGSD: Distributed graph representation via graph statistical properties | |
Assefa et al. | Intelligent phishing website detection using deep learning | |
Chen et al. | PSO-ANE: Adaptive network embedding with particle swarm optimization | |
CN113569118A (zh) | 自媒体推送方法、装置、计算机设备及存储介质 | |
Ying et al. | FrauDetector+ An Incremental Graph-Mining Approach for Efficient Fraudulent Phone Call Detection | |
Guo et al. | Android malware adversarial attacks based on feature importance prediction | |
Alsaedi et al. | Multi-Modal Features Representation-Based Convolutional Neural Network Model for Malicious Website Detection | |
Chen et al. | See more for scene: Pairwise consistency learning for scene classification | |
Annam et al. | Entropy based informative content density approach for efficient web content extraction | |
Dutta et al. | Comparative Analysis of Various Ensemble Approaches for Web Page Classification | |
Lee et al. | Generation of network traffic using WGAN-GP and a DFT filter for resolving data imbalance | |
Gamboa et al. | Further enhancement of knn algorithm based on clustering applied to it support ticket routing | |
Wang et al. | Semi-GSGCN: social robot detection research with graph neural network | |
Han et al. | A generalization of recurrent neural networks for graph embedding |
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: 20191210 |