CN104331664B - 一种在取证场景下自动分析未知恶意程序特征的方法 - Google Patents

一种在取证场景下自动分析未知恶意程序特征的方法 Download PDF

Info

Publication number
CN104331664B
CN104331664B CN201410696330.9A CN201410696330A CN104331664B CN 104331664 B CN104331664 B CN 104331664B CN 201410696330 A CN201410696330 A CN 201410696330A CN 104331664 B CN104331664 B CN 104331664B
Authority
CN
China
Prior art keywords
dynamic link
link library
malware
classification
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410696330.9A
Other languages
English (en)
Other versions
CN104331664A (zh
Inventor
伏晓
端恒
端一恒
骆斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Original Assignee
Nanjing University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University filed Critical Nanjing University
Priority to CN201410696330.9A priority Critical patent/CN104331664B/zh
Publication of CN104331664A publication Critical patent/CN104331664A/zh
Application granted granted Critical
Publication of CN104331664B publication Critical patent/CN104331664B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/563Static detection by source code analysis

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

本发明提供了一种在取证场景下自动分析未知恶意程序特征的方法;包括下列步骤:1)选择关键动态链接库并建立动态链接库数据模型;2)对恶意软件进程进行聚类分析得到分类;3)获取恶意软件进程特征并进行取证分析。与现有的恶意软件分析取证方法相比,本发明通过对动态链接库数据进行聚类实现了在无先验知识的情况下基于恶意软件进程自身特点的自动分类,并能够通过频繁项集挖掘的方式,在高层语义上对恶意软件行为进行解释;此外,本发明还能为恶意软件取证提供信息和线索;本发明特别适用于无先验知识和大规模自动化取证的场景;实践证明在常规应用场景下,本方法能达到超过百分之九十以上的准确率而时间消耗仅为数秒。

Description

一种在取证场景下自动分析未知恶意程序特征的方法
技术领域
本发明涉及恶意进程分析与计算机取证领域,且特别是有关于一种在取证场景下基于进程的动态链接库数据自动分析未知恶意程序特征的方法。
背景技术
随着国民经济和社会的快速发展,我国各行各业的信息化水平也在不断提高。在全民信息化的背景下,计算机恶意程序的数量越来越大,出现的频率也越来越高,而对这些未知恶意程序特征的自动化分析和取证就显得尤为重要。目前自动分析未知恶意程序特征该领域还是更多地依赖于先验知识,关注自动化、统一以及无先验知识的方法还很少。
发明内容
本发明目的在于,提供一种在取证场景下基于进程的动态链接库数据自动分析未知恶意程序特征的方法,通过对动态链接库数据进行聚类实现了在无先验知识的情况下基于恶意软件进程自身特点的自动分类,并能够通过频繁项集挖掘的方式,在高层语义上对恶意软件行为进行解释。适用于无先验知识和大规模自动化取证的场景。
为达成上述目的,本发明提出一种在取证场景下基于进程的动态链接库数据自动分析未知恶意程序特征的方法。方法包括下列步骤:
1)选择关键动态链接库并建立动态链接库数据模型;
定义1:一个N元元组是一个长度为N的由0或者1组成的序列,这里N为非负整数;
为了能通过识别算法来快速分析和处理动态链接库数据,需要将每个进程的动态链接库数据映射到成一个数据结构,即定义1中的N元元组;动态链接库集是映射的标准,针对一个包含N个动态链接库的动态链接库集,映射对应的数据结构为一个N元元组;
这里需要选择一些动态链接库作为关键动态链接库放入动态链接库集中;选择的原则是通过这些被选中的动态链接库来表现出各类恶意程序的特点从而使得类似的恶意程序能被聚类到同一个类中;通过统计出在训练集的恶意软件进程中出现的动态链接库并按照出现频率排序,用户能选择一个出现频率的区间来确定关键动态链接库集;
映射方式如下:
a.将元组每一位都设为0;
b.遍历关键动态链接库集,对于每个动态链接库,在目标进程的动态链接库数据中搜索,如果存在,则把目标进程所对应的记录的该动态链接库所对应的位置设为1;
2)对恶意软件进程进行聚类分析得到恶意软件的分类;
为了进行聚类分析得到恶意软件的分类,需要对聚类算法进行参数设置:根据用户对分类数量上下限、噪音比率上下限等条件的期望,预先进行参数组合枚举并建立模型得出结果来匹配期望,从而自动确定符合期望的参数;
进行参数组合枚举并建立模型的特点和要求:
a.建立模型之前事先无确定分类的个数;
b.能够发现任意形状的簇即分类;
c.能否不受少数离群值的干扰;
d.对训练集中数据输入的顺序不敏感;
e.计算复杂度较低;
综合考虑上述因素,在确定参数后,采用较为常见并且符合上述要求的基于密度的聚类算法DBSCAN对进程的动态链接库中的训练数据进行建模;这里每一条数据对应一个N元元组,也对应N维空间上的一个点,DBSCAN的两个参数分别是每一个簇能达到距离内最少需要的点的个数以及能达距离的上限;逐步输入训练集上的点后,通过定义的距离运算来度量点与点之间的长度,在训练数据集输入完毕后,即形成了一个个符合参数要求的簇,而不属于任何一个簇的点即为噪音;
当模型确定后,将待根据聚类算法建模进行分类的数据映射到元组并作为测试集,能够输出进程的动态链接库中各个恶意软件进程所属于的分类的编号;
3)获取恶意软件进程特征并进行取证分析;
定义2:频繁项集:项的集合称为项集;包含k个项的项集称为k项集;项集的出项频率是包含项集的事务数,简称为项集的频率,支持度计数或计数;如果项集I的相对支持度满足预定义的最小支持度阈值,则I是频繁项集;
为了理解恶意软件的行为、目的并获得更多相关证据,用频繁项集作为每个恶意软件类的行为特征,并以此为基础指导对进程相关证据的获取;为了对恶意软件的动态链接库数据进行频繁项集挖掘,需要将每个进程的动态链接库数据映射到一个N元元组;
由于观察到各个恶意软件分类中包含的训练数据在各个属性上的取值都较为集中,具体表现为对某一个关键动态链接库大部分都包含或者大部分都不包含;通过统计和验证结合的方式,获得步骤2)中得到的各个恶意软件分类的频繁项集;
具体步骤陈述如下:
a.统计各个关键动态链接库在各个恶意软件分类所包含数据中的出现频率;
b.选择超过设定频率的关键动态链接库,进行组合,并进行验证它们同时出现的频率是否符合设定的下限;
c.重复b来获得有意义的频繁项集;
频繁项集中的动态链接库描述了该类恶意进程的共同行为特征;此外,如果训练数据来源于反病毒软件厂商,能够通过统计的方式来获得各个恶意软件分类内部占比率最高的恶意软件,并用其行为作为分类标签,而这个标签也暗示了该分类的共同行为特征;
定义3:一个恶意软件档案是一个用高层语义描述恶意软件进程的数据结构;它包括了它所属于的恶意软件分类的频繁项集以及标签;
在获得了上述信息后,取证调查者即可以根据被调查进程所属类别的恶意软件档案来推测进程行为,并提取相关证据。
进一步,其中上述步骤1)的具体步骤如下:
步骤1)-1:起始状态;
步骤1)-2:统计出在训练集的恶意软件进程中出现的动态链接库;
步骤1)-3:将动态链接库按照出现频率排序;
步骤1)-4:用户选择出现频率的区间来确定关键动态链接库集;
步骤1)-5:将元组每一位都设为0;
步骤1)-6:遍历动态链接库集,对于每个动态链接库,在目标进程的动态链接库数据中搜索,如果存在,则把目标进程所对应的记录中该动态链接库所对应的位置设为1;
步骤1)-7:选择关键动态链接库并建立动态链接库数据模型完毕。
进一步,其中上述步骤2)的具体步骤如下:
步骤2)-1:起始状态;
步骤2)-2:用户设定分类数量上下限、噪音比率上下限;
步骤2)-3:进行参数组合枚举并建立模型得出结果来匹配用户设定得出符合要求的参数;
步骤2)-4:针对用户选择,计算出符合要求的参数;
步骤2)-5:如果参数存在,进入2)-6,否则继续2)-3;
步骤2)-6:采用一个基于密度的聚类算法DBSCAN对训练数据进行建模;
步骤2)-7:输出各个恶意进程所属于的分类的编号;
步骤2)-8:对恶意软件进程进行聚类分析得到分类完毕。
进一步,其中上述步骤3)的具体步骤如下:
步骤3)-1:起始状态;
步骤3)-2:统计各个关键动态链接库在各个恶意软件分类所包含数据中的出现频率;
步骤3)-3:选择超过设定频率的关键动态链接库,进行组合,并进行验证它们同时出现的频率是否符合设定的下限;
步骤3)-4:如果组合验证完毕则进入3)-5,否则继续3)-3;
步骤3)-5:如果训练数据来源于反病毒软件厂商进入3)-6,否则进入3)-7;
步骤3)-6:统计各个恶意软件分类内部占比率最高的恶意软件被表示的分类标签;
步骤3)-7:根据频繁项集(以及标签)与具体取证工具功能的映射关系来获得取证操作线索和指导;
步骤3)-8:根据操作线索和指导进行取证工作;
步骤3)-9:获取恶意软件进程特征并进行取证分析完毕。
本发明的有益效果,提供一种在取证场景下基于进程的动态链接库数据自动分析未知恶意程序特征的方法,与现有的恶意软件分析取证方法相比,本发明无须更多地依赖于先验知识,通过对动态链接库数据进行聚类实现了在无先验知识的情况下基于恶意软件进程自身特点的自动分类,并能够通过频繁项集挖掘的方式,在高层语义上对恶意软件行为进行解释。此外,本发明还能为恶意软件取证提供信息和线索。本发明特别适用于无先验知识和大规模自动化取证的场景。实践证明在常规应用场景下,本方法能达到超过百分之九十以上的准确率而时间消耗仅为数秒。
附图说明
图1为本发明实施例的一种在取证场景下基于进程的动态链接库数据自动分析未知恶意程序特征的方法的流程图。
图2为图1中选择关键动态链接库并建立动态链接库数据模型的流程图。
图3为图1中对恶意软件进程进行聚类分析得到分类的流程图。
图4为图1中获取恶意软件进程特征并进行取证分析的流程图。
具体实施方式
为了更了解本发明的技术内容,特举具体实施例并配合所附图式说明如下。
图1为本发明实施例的一种在取证场景下基于进程的动态链接库数据自动分析未知恶意程序特征的方法的流程图。
一种在取证场景下基于进程的动态链接库数据自动分析未知恶意程序特征的方法,其特征在于,包括下列步骤:
S101选择关键动态链接库并建立动态链接库数据模型。
定义1:一个N元元组是一个长度为N的由0或者1组成的序列,这里N为非负整数;
为了能通过识别算法来快速分析和处理动态链接库数据,需要将每个进程的动态链接库数据映射到成一个数据结构,即定义1中的N元元组;动态链接库集是映射的标准,针对一个包含N个动态链接库的动态链接库集,映射对应的数据结构为一个N元元组;
这里需要选择一些动态链接库作为关键动态链接库放入动态链接库集中;选择的原则是通过这些被选中的动态链接库来表现出各类恶意程序的特点从而使得类似的恶意程序能被聚类到同一个类中;通过统计出在训练集的恶意软件进程中出现的动态链接库并按照出现频率排序,用户能选择一个出现频率的区间来确定关键动态链接库集;
映射方式如下:
a.将元组每一位都设为0;
b.遍历关键动态链接库集,对于每个动态链接库,在目标进程的动态链接库数据中搜索,如果存在,则把目标进程所对应的记录的该动态链接库所对应的位置设为1;
S103对恶意软件进程进行聚类分析得到分类。
为了进行聚类分析得到恶意软件的分类,需要对聚类算法进行参数设置:根据用户对分类数量上下限、噪音比率上下限等条件的期望,预先进行参数组合枚举并建立模型得出结果来匹配期望,从而自动确定符合期望的参数;
进行参数组合枚举并建立模型的特点和要求:
a.建立模型之前事先无确定分类的个数;
b.能够发现任意形状的簇即分类;
c.能否不受少数离群值的干扰;
d.对训练集中数据输入的顺序不敏感;
e.计算复杂度较低;
综合考虑上述因素,在确定参数后,采用较为常见并且符合上述要求的基于密度的聚类算法DBSCAN对进程的动态链接库中的训练数据进行建模;这里每一条数据对应一个N元元组,也对应N维空间上的一个点,DBSCAN的两个参数分别是每一个簇能达到距离内最少需要的点的个数以及能达距离的上限;逐步输入训练集上的点后,通过定义的距离运算来度量点与点之间的长度,在训练数据集输入完毕后,即形成了一个个符合参数要求的簇,而不属于任何一个簇的点即为噪音;
当模型确定后,将待根据聚类算法建模进行分类的数据映射到元组并作为测试集,能够输出进程的动态链接库中各个恶意软件进程所属于的分类的编号;
S105获取恶意软件进程特征并进行取证分析。
定义2:频繁项集:项的集合称为项集;包含k个项的项集称为k项集;项集的出项频率是包含项集的事务数,简称为项集的频率,支持度计数或计数;如果项集I的相对支持度满足预定义的最小支持度阈值,则I是频繁项集;
为了理解恶意软件的行为、目的并获得更多相关证据,用频繁项集作为每个恶意软件类的行为特征,并以此为基础指导对进程相关证据的获取;为了对恶意软件的动态链接库数据进行频繁项集挖掘,需要将每个进程的动态链接库数据映射到一个N元元组;
由于观察到各个恶意软件分类中包含的训练数据在各个属性上的取值都较为集中,具体表现为对某一个关键动态链接库大部分都包含或者大部分都不包含;通过统计和验证结合的方式,获得S103中得到的各个恶意软件分类的频繁项集;
具体步骤陈述如下:
a.统计各个关键动态链接库在各个恶意软件分类所包含数据中的出现频率;
b.选择超过设定频率的关键动态链接库,进行组合,并进行验证它们同时出现的频率是否符合设定的下限;
c.重复b来获得有意义的频繁项集;
频繁项集中的动态链接库描述了该类恶意进程的共同行为特征;此外,如果训练数据来源于反病毒软件厂商,能够通过统计的方式来获得各个恶意软件分类内部占比率最高的恶意软件,并用其行为作为分类标签,而这个标签也暗示了该分类的共同行为特征;
定义3:一个恶意软件档案是一个用高层语义描述恶意软件进程的数据结构;它包括了它所属于的恶意软件分类的频繁项集以及标签;
在获得了上述信息后,取证调查者即可以根据被调查进程所属类别的恶意软件档案来推测进程行为,并提取相关证据。
图2为选择关键动态链接库并建立动态链接库数据模型的流程图。
定义1:一个N元元组是一个长度为N的由0或者1组成的序列,这里N为非负整数;
为了能通过识别算法来快速分析和处理动态链接库数据,需要将每个进程的动态链接库数据映射到成一个数据结构,即定义1中的N元元组;动态链接库集是映射的标准,针对一个包含N个动态链接库的动态链接库集,映射对应的数据结构为一个N元元组;
这里需要选择一些动态链接库作为关键动态链接库放入动态链接库集中;选择的原则是通过这些被选中的动态链接库来表现出各类恶意程序的特点从而使得类似的恶意程序能被聚类到同一个类中;通过统计出在训练集的恶意软件进程中出现的动态链接库并按照出现频率排序,用户能选择一个出现频率的区间来确定关键动态链接库集;
映射方式如下:
a.将元组每一位都设为0;
b.遍历关键动态链接库集,对于每个动态链接库,在目标进程的动态链接库数据中搜索,如果存在,则把目标进程所对应的记录的该动态链接库所对应的位置设为1;
具体步骤如下:
步骤1:起始状态;步骤2:统计出在训练集的恶意软件进程中出现的动态链接库;步骤3:将动态链接库按照出现频率排序;步骤4:用户选择出现频率的区间来确定关键动态链接库集;步骤5:将元组每一位都设为0;步骤6:遍历动态链接库集,对于每个动态链接库,在目标进程的动态链接库数据中搜索,如果存在,则把目标进程所对应的记录中该动态链接库所对应的位置设为1;步骤7:选择关键动态链接库并建立动态链接库数据模型完毕。
图3为对恶意软件进程进行聚类分析得到分类的流程图。为了进行聚类分析得到恶意软件的分类,需要对聚类算法进行参数设置:根据用户对分类数量上下限、噪音比率上下限等条件的期望,预先进行参数组合枚举并建立模型得出结果来匹配期望,从而自动确定符合期望的参数;
进行参数组合枚举并建立模型的特点和要求:
a.建立模型之前事先无确定分类的个数;
b.能够发现任意形状的簇即分类;
c.能否不受少数离群值的干扰;
d.对训练集中数据输入的顺序不敏感;
e.计算复杂度较低;
综合考虑上述因素,在确定参数后,采用较为常见并且符合上述要求的基于密度的聚类算法DBSCAN对进程的动态链接库中的训练数据进行建模;这里每一条数据对应一个N元元组,也对应N维空间上的一个点,DBSCAN的两个参数分别是每一个簇能达到距离内最少需要的点的个数以及能达距离的上限;逐步输入训练集上的点后,通过定义的距离运算来度量点与点之间的长度,在训练数据集输入完毕后,即形成了一个个符合参数要求的簇,而不属于任何一个簇的点即为噪音;
当模型确定后,将待根据聚类算法建模进行分类的数据映射到元组并作为测试集,能够输出进程的动态链接库中各个恶意软件进程所属于的分类的编号;
具体步骤如下:
步骤1:起始状态;步骤2:用户设定分类数量上下限、噪音比率上下限;步骤3:进行参数组合枚举并建立模型得出结果来匹配用户设定得出符合要求的参数;步骤4:针对用户选择,计算出符合要求的参数;步骤5:如果参数存在,进入6,否则继续3;步骤6:采用一个基于密度的聚类算法DBSCAN对训练数据进行建模;步骤7:输出各个恶意进程所属于的分类的编号;步骤8:对恶意软件进程进行聚类分析得到分类完毕。
图4为获取恶意软件进程特征并进行取证分析的流程图。
定义2:频繁项集:项的集合称为项集;包含k个项的项集称为k项集;项集的出项频率是包含项集的事务数,简称为项集的频率,支持度计数或计数;如果项集I的相对支持度满足预定义的最小支持度阈值,则I是频繁项集;
为了理解恶意软件的行为、目的并获得更多相关证据,用频繁项集作为每个恶意软件类的行为特征,并以此为基础指导对进程相关证据的获取;为了对恶意软件的动态链接库数据进行频繁项集挖掘,需要将每个进程的动态链接库数据映射到一个N元元组;
由于观察到各个恶意软件分类中包含的训练数据在各个属性上的取值都较为集中,具体表现为对某一个关键动态链接库大部分都包含或者大部分都不包含;通过统计和验证结合的方式,获得S103中得到的各个恶意软件分类的频繁项集;
具体步骤陈述如下:
a.统计各个关键动态链接库在各个恶意软件分类所包含数据中的出现频率;
b.选择超过设定频率的关键动态链接库,进行组合,并进行验证它们同时出现的频率是否符合设定的下限;
c.重复b来获得有意义的频繁项集;
频繁项集中的动态链接库描述了该类恶意进程的共同行为特征;此外,如果训练数据来源于反病毒软件厂商,能够通过统计的方式来获得各个恶意软件分类内部占比率最高的恶意软件,并用其行为作为分类标签,而这个标签也暗示了该分类的共同行为特征;
定义3:一个恶意软件档案是一个用高层语义描述恶意软件进程的数据结构;它包括了它所属于的恶意软件分类的频繁项集以及标签;
在获得了上述信息后,取证调查者即可以根据被调查进程所属类别的恶意软件档案来推测进程行为,并提取相关证据;
具体步骤如下:
步骤1:起始状态;步骤2:统计各个关键动态链接库在各个恶意软件分类所包含数据中的出现频率;步骤3:选择超过设定频率的关键动态链接库,进行组合,并进行验证它们同时出现的频率是否符合设定的下限;步骤4:如果组合验证完毕则进入5,否则继续3;步骤5:如果训练数据来源于反病毒软件厂商进入6,否则进入7;步骤6:统计各个恶意软件分类内部占比率最高的恶意软件被表示的分类标签;步骤7:根据频繁项集(以及标签)与具体取证工具功能的映射关系来获得取证操作线索和指导;步骤8:根据操作线索和指导进行取证工作;步骤9:获取恶意软件进程特征并进行取证分析完毕。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。

Claims (4)

1.一种在取证场景下自动分析未知恶意程序特征的方法,其特征在于,包括下列步骤:
1)选择关键动态链接库并建立动态链接库数据模型;
定义1:一个N元元组是一个长度为N的由0或者1组成的序列,这里N为非负整数;
为了能通过识别算法来快速分析和处理动态链接库数据,需要将每个进程的动态链接库数据映射成一个数据结构,即定义1中的N元元组;动态链接库集是映射的标准,针对一个包含N个动态链接库的动态链接库集,映射对应的数据结构为一个N元元组;
这里需要选择一些动态链接库作为关键动态链接库放入动态链接库集中;选择的原则是通过这些被选中的动态链接库来表现出各类恶意程序的特点从而使得类似的恶意程序能被聚类到同一个类中;通过统计出在训练集的恶意软件进程中出现的动态链接库并按照出现频率排序,用户能选择一个出现频率的区间来确定关键动态链接库集;
映射方式如下:
1)a. 将元组每一位都设为0;
1)b. 遍历关键动态链接库集,对于每个动态链接库,在目标进程的动态链接库数据中搜索,如果存在,则把目标进程所对应的记录的该动态链接库所对应的位置设为1;
2)对恶意软件进程进行聚类分析得到恶意软件的分类;
为了进行聚类分析得到恶意软件的分类,需要对聚类算法进行参数设置:根据用户对分类数量上下限、噪音比率上下限条件的期望,预先进行参数组合枚举并建立模型得出结果来匹配期望,从而自动确定符合期望的参数;
进行参数组合枚举并建立模型的特点和要求:
2)a.建立模型之前事先无确定分类的个数;
2)b.能够发现任意形状的簇即分类;
2)c.能否不受少数离群值的干扰;
2)d.对训练集中数据输入的顺序不敏感;
2)e.计算复杂度较低;
综合考虑上述因素,在确定参数后,采用符合上述要求的基于密度的聚类算法DBSCAN对进程的动态链接库中的训练数据进行建模;这里每一条数据对应一个N元元组,也对应N维空间上的一个点,DBSCAN的两个参数分别是每一个簇能达到距离内最少需要的点的个数以及能达距离的上限;逐步输入训练集上的点后,通过定义的距离运算来度量点与点之间的长度,在训练数据集输入完毕后,即形成了一个个符合参数要求的簇,而不属于任何一个簇的点即为噪音;
当模型确定后,将待根据聚类算法建模进行分类的数据映射到元组并作为测试集,能够输出进程的动态链接库中各个恶意软件进程所属于的分类的编号;
3)获取恶意软件进程特征并进行取证分析;
定义2:频繁项集:项的集合称为项集;包含k个项的项集称为k项集;项集的出项频率是包含项集的事务数,简称为项集的频率,支持度计数或计数;如果项集I的相对支持度满足预定义的最小支持度阈值,则I是频繁项集;
为了理解恶意软件的行为、目的并获得更多相关证据,用频繁项集作为每个恶意软件类的行为特征,并以此为基础指导对进程相关证据的获取;为了对恶意软件的动态链接库数据进行频繁项集挖掘,需要将每个进程的动态链接库数据映射到一个N元元组;
通过统计和验证结合的方式,获得步骤2)中得到的各个恶意软件分类的频繁项集;
具体步骤陈述如下:
3)a.统计各个关键动态链接库在各个恶意软件分类所包含数据中的出现频率;
3)b.选择超过设定频率的关键动态链接库,进行组合,并进行验证它们同时出现的频率是否符合设定的下限;
3)c.重复3)b来获得有意义的频繁项集;
频繁项集中的动态链接库描述了该类恶意进程的共同行为特征;此外,如果训练数据来源于反病毒软件厂商,能够通过统计的方式来获得各个恶意软件分类内部占比率最高的恶意软件,并用其行为作为分类标签,而这个标签也暗示了该分类的共同行为特征;
定义3:一个恶意软件档案是一个用高层语义描述恶意软件进程的数据结构;它包括了它所属于的恶意软件分类的频繁项集以及标签;
在获得了上述信息后,取证调查者即可以根据被调查进程所属类别的恶意软件档案来推测进程行为,并提取相关证据。
2.根据权利要求1所述的在取证场景下自动分析未知恶意程序特征的方法,上述步骤1)的具体步骤如下:
步骤1)-1:起始状态;
步骤1)-2:统计出在训练集的恶意软件进程中出现的动态链接库;
步骤1)-3:将动态链接库按照出现频率排序;
步骤1)-4:用户选择出现频率的区间来确定关键动态链接库集;
步骤1)-5:将元组每一位都设为0;
步骤1)-6:遍历动态链接库集,对于每个动态链接库,在目标进程的动态链接库数据中搜索,如果存在,则把目标进程所对应的记录中该动态链接库所对应的位置设为1;
步骤1)-7:选择关键动态链接库并建立动态链接库数据模型完毕。
3.根据权利要求1所述的在取证场景下自动分析未知恶意程序特征的方法,其中上述步骤2)的具体步骤如下:
步骤2)-1:起始状态;
步骤2)-2:用户设定分类数量上下限、噪音比率上下限;
步骤2)-3:进行参数组合枚举并建立模型得出结果来匹配用户设定得出符合要求的参数;
步骤2)-4:针对用户选择,计算出符合要求的参数;
步骤2)-5:如果参数存在,进入2)-6,否则继续2)-3;
步骤2)-6:采用一个基于密度的聚类算法DBSCAN对训练数据进行建模;
步骤2)-7:输出各个恶意进程所属于的分类的编号;
步骤2)-8:对恶意软件进程进行聚类分析得到分类完毕。
4.根据权利要求1所述的在取证场景下自动分析未知恶意程序特征的方法,其特征是上述步骤3)的具体步骤如下:
步骤3)-1:起始状态;
步骤3)-2:统计各个关键动态链接库在各个恶意软件分类所包含数据中的出现频率;
步骤3)-3:选择超过设定频率的关键动态链接库,进行组合,并进行验证它们同时出现的频率是否符合设定的下限;
步骤3)-4:如果组合验证完毕则进入3)-5,否则继续3)-3;
步骤3)-5:如果训练数据来源于反病毒软件厂商进入3)-6,否则进入3)-7;
步骤3)-6:统计各个恶意软件分类内部占比率最高的恶意软件被表示的分类标签;
步骤3)-7:根据频繁项集以及标签与具体取证工具功能的映射关系来获得取证操作线索和指导;
步骤3)-8:根据操作线索和指导进行取证工作;
步骤3)-9:获取恶意软件进程特征并进行取证分析完毕。
CN201410696330.9A 2014-11-27 2014-11-27 一种在取证场景下自动分析未知恶意程序特征的方法 Active CN104331664B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410696330.9A CN104331664B (zh) 2014-11-27 2014-11-27 一种在取证场景下自动分析未知恶意程序特征的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410696330.9A CN104331664B (zh) 2014-11-27 2014-11-27 一种在取证场景下自动分析未知恶意程序特征的方法

Publications (2)

Publication Number Publication Date
CN104331664A CN104331664A (zh) 2015-02-04
CN104331664B true CN104331664B (zh) 2017-08-08

Family

ID=52406386

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410696330.9A Active CN104331664B (zh) 2014-11-27 2014-11-27 一种在取证场景下自动分析未知恶意程序特征的方法

Country Status (1)

Country Link
CN (1) CN104331664B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105530265B (zh) * 2016-01-28 2019-01-18 李青山 一种基于频繁项集描述的移动互联网恶意应用检测方法
CN105797377B (zh) * 2016-03-10 2019-08-23 武汉斗鱼网络科技有限公司 一种游戏进程识别和显示方法及系统
CN108804918B (zh) * 2017-12-31 2020-07-31 北京安天网络安全技术有限公司 安全性防御方法、装置、电子设备及存储介质
CN110728583A (zh) * 2019-10-11 2020-01-24 支付宝(杭州)信息技术有限公司 一种骗赔行为识别方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101154258A (zh) * 2007-08-14 2008-04-02 电子科技大学 恶意程序动态行为自动化分析系统与方法
KR20100069135A (ko) * 2008-12-16 2010-06-24 한국인터넷진흥원 악성코드 분류 시스템
CN102034042A (zh) * 2010-12-13 2011-04-27 四川大学 基于函数调用关系图特征的恶意代码检测新方法
CN102999721A (zh) * 2012-11-09 2013-03-27 北京奇虎科技有限公司 一种程序处理方法和系统
CN103853979A (zh) * 2010-12-31 2014-06-11 北京奇虎科技有限公司 基于机器学习的程序识别方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7487544B2 (en) * 2001-07-30 2009-02-03 The Trustees Of Columbia University In The City Of New York System and methods for detection of new malicious executables

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101154258A (zh) * 2007-08-14 2008-04-02 电子科技大学 恶意程序动态行为自动化分析系统与方法
KR20100069135A (ko) * 2008-12-16 2010-06-24 한국인터넷진흥원 악성코드 분류 시스템
CN102034042A (zh) * 2010-12-13 2011-04-27 四川大学 基于函数调用关系图特征的恶意代码检测新方法
CN103853979A (zh) * 2010-12-31 2014-06-11 北京奇虎科技有限公司 基于机器学习的程序识别方法及装置
CN102999721A (zh) * 2012-11-09 2013-03-27 北京奇虎科技有限公司 一种程序处理方法和系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Android手机安全检测与取证分析系统;孙润康等;《信息网络安全》;20130310;全文 *
Eureka: A framework for enabling static malware analysis;Sharif M等;《European Symposium on Research in Computer Security》;20081231;全文 *
基于内核驱动的恶意代码动态检测技术;李伟等;《中国科学院研究生院学报》;20100930;全文 *

Also Published As

Publication number Publication date
CN104331664A (zh) 2015-02-04

Similar Documents

Publication Publication Date Title
TWI776010B (zh) 用於減少光譜分類的誤報識別之設備和方法以及相關的非暫時性電腦可讀取媒體
CN107577688B (zh) 基于媒体信息采集的原创文章影响力分析系统
CN104331664B (zh) 一种在取证场景下自动分析未知恶意程序特征的方法
CN101604363B (zh) 基于文件指令频度的计算机恶意程序分类系统及分类方法
JP6807649B2 (ja) 論理パターンの検索及び取得の方法、システム、及び非一時的コンピュータ可読媒体
CN109240901B (zh) 性能分析方法、性能分析装置、存储介质和电子设备
CN102571486B (zh) 一种基于BoW模型和统计特征的流量识别方法
CN108777873A (zh) 基于加权混合孤立森林的无线传感网络异常数据检测方法
TWI519976B (zh) Category misplaced recognition methods and devices
CN103838754B (zh) 信息搜索装置及方法
CN105930470B (zh) 一种基于特征权重分析技术的文件检索方法
CN106503458A (zh) 一种地面气温数据质量控制方法
CN104040561A (zh) 通过质谱术和分数规整识别微生物的方法
CN106843941B (zh) 信息处理方法、装置和计算机设备
CN105389480A (zh) 多类不平衡基因组学数据迭代集成特征选择方法及系统
CN108268886B (zh) 用于识别外挂操作的方法及系统
CN104392171B (zh) 一种基于数据关联的自动内存证据分析方法
CN106935038B (zh) 一种停车检测系统及检测方法
CN111242318A (zh) 基于异构特征库的业务模型训练方法及装置
CN103336771A (zh) 基于滑动窗口的数据相似检测方法
CN106610977B (zh) 一种数据聚类方法和装置
JP5884293B2 (ja) 類似文字コード群検索支援方法、類似候補抽出方法、類似候補抽出プログラムおよび類似候補抽出装置
CN104376261B (zh) 一种在取证场景下自动检测恶意进程的方法
CN109426974A (zh) 竞品分析方法和装置
CN107493275A (zh) 异构网络安全日志信息的自适应提取和分析方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant