一种动静态特征结合的僵尸程序检测与分类方法技术

技术编号:17541900 阅读:46 留言:0更新日期:2018-03-24 19:15
本发明专利技术公开了一种动静态特征结合的僵尸程序检测与分类方法,基于静态特征信息,进行僵尸程序检测;检测过程中的特征选择采用了采用改进的TF‑IDF算法,改进的TF‑IDF算法是在TF‑IDF算法计算TF‑IDF权重时加入类区分度因子GF,用于表征特征项在某一类别中的出现程度与在其他所有类别中出现程度的比例;运行检测的僵尸程序,提取僵尸程序运行的API序列和网路流量信息,处理获得僵尸程序家族分类特征;基于僵尸程序家族分类特征,对僵尸程序进行分类。本发明专利技术能够自动进行分类,降低耗时,提高分类效率。

A method of detection and classification of zombie programs with dynamic and static characteristics

The invention discloses a method of combining static and dynamic characteristics of Botnet detection and classification, the static characteristic based on the information of Botnet detection; feature selection in the process of detection by using TF improved IDF algorithm, TF improved IDF algorithm in TF IDF algorithm TF IDF weight added class discrimination factor GF, used to characterize features in a certain category in degree and in all other categories in proportion to the extent of operation; detection of bots, extracting API sequence and network traffic information BOT operation, processing was BOT family classification feature; BOT family classification based on feature of classification of bots. The invention can automatically classify, reduce time consuming and improve the classification efficiency.

【技术实现步骤摘要】
一种动静态特征结合的僵尸程序检测与分类方法
本专利技术涉及信息安全
,具体涉及一种动静态特征结合的僵尸程序检测与分类方法。
技术介绍
僵尸程序是攻击者完成入侵某台计算机之后,在被感染的计算机上部署的用于完成攻击目的的恶意程序。在被感染的计算机上部署僵尸程序组成僵尸网络,攻击者就能够实施各种攻击手段。近年来,物联网技术得以迅速发展,这使得网络攻击者将目标瞄准到了物联网设备上,寄生于物联网设备的僵尸程序开始大批量出现。云计算技术的进步使僵尸程序的发展得以增速,攻击者只需要在云端花费很低的成本申请虚机资源,就可以利用这些资源快速构建僵尸网络,发起僵尸网络攻击变得更加低廉迅速,一些攻击者采用非法盗取的信用卡进行支付,这就隐藏了攻击者的身份,无法做到实名制的管理。并且在云环境中,用户数目很大,良莠不齐,用户并不能都具有很好的安全观念,虚机操作系统和应用的可利用漏洞或弱口令数目很多,这就导致很多虚拟机被入侵,成为了僵尸网络的“肉鸡”。目前针对僵尸程序的研究主要针对的是僵尸程序的入侵检测上,对僵尸程序根据家族进行分类的研究较少。主要是对恶意代码的源码以及反汇编生成的asm格式文件和bytes文件进行分析。目前针对僵尸程序的研究主要针对的是僵尸程序的入侵检测上,对僵尸程序进行家族分类的研究较少。僵尸程序的检测方法有:1)使用面向对象的关联挖掘方法在WindowsAPI的执行序列上进行检测。2)在反编译文件中提取与数据流相关的API,然后用改进的K-邻近算法来检测僵尸程序。3)基于语义的检测方法,该方法认为恶意代码的行为与语义特征息息相关,采用抽象解释方法检测恶意行为从而检测恶意程序。4)对P2P僵尸程序反汇编,进而分析其传播和恶意行为,对僵尸程序特性进行了总结,利用僵尸程序的特性对僵尸程序进行检测。5)通过模拟真实的环境让恶意代码运行,从而捕捉恶意软件与系统的交互来获取其行为特征。如:捕获僵尸程序运行时的api、对僵尸网络产生的流量进行分析。目前对僵尸程序的研究,主要还是集中在僵尸程序的入侵检测上,对其进行家族分类的相关研究较少,僵尸程序的家族分类仍是一个有待攻克的难题。当前对僵尸程序进行家族分类时,主要采用的是人工逆向工程方法,该方法不仅耗时长,效率低下,而且对分析人员的专业素养要求较高,这些问题是的人工逆向分析难以解决大批量的僵尸程序。
技术实现思路
有鉴于此,本专利技术提出了一种动静态特征结合的僵尸程序分类方法,能够自动进行分类,降低耗时,提高分类效率。为了解决上述技术问题,本专利技术是这样实现的。一种动静态特征结合的僵尸程序检测与分类方法,基于静态特征信息,进行僵尸程序检测;检测过程中的特征选择采用了采用改进的TF-IDF算法,改进的TF-IDF算法是在TF-IDF算法计算TF-IDF权重时加入类区分度因子GF,用于表征特征项在某一类别中的出现程度与在其他所有类别中出现程度的比例;运行检测的僵尸程序,提取僵尸程序运行的API序列和网路流量信息,处理获得僵尸程序家族分类特征;基于僵尸程序家族分类特征,对僵尸程序进行分类。优选地,所述静态特征信息包括opcode、PE节信息和DLL序列。优选地,所述类区分度因子GF为:其中,对于特征项tj,类别i中包含特征项tj的样本数记为Cji,除去类别i的其他所有类别中包含特征项tj的样本数记为C!ji。优选地,在获得僵尸程序家族分类特征时,针对API序列,采用n-gram方法来对API序列进行抽取,抽取后的n-gram作为僵尸程序家族分类特征的一部分。优选地,所述n-gram方法的n取值为3。优选地,所述处理获得僵尸程序家族分类特征为:采用改进的TF-IDF算法进行处理。优选地,在对僵尸程序进行分类时,采用改进的决策树ID3算法对僵尸程序进行分类;改进的决策树ID3算法为属性的信息增益计算添加了修正因子,该修正因子将属性取值数目偏多的属性对应的信息增益相对变小,用引入该修正因子后信息增益作为划分样本的标准。优选地,所述修正因子为其中,s为修正因子所对应属性的s个不同取值。有益效果:(1)本专利技术采用静态和动态相结合的方法,提供了一种僵尸程序检测和分类实现渠道,能够实现僵尸程序自动分类,不需要人工参与,降低了对人员的要求。(2)在僵尸程序检测中,用于特征选择采用TF-IDF算法,但是该算法会随着它在特征库中出现的频率而下降,除此之外,如果某个特征项在一个类的样本中频繁出现,而在其他类别的样本中很少出现,TF-IDF并不能体现该特征项具有很好的类区分性。为了弥补以上缺陷,本专利技术对TF-IDF算法进行了改进,提出了TF-IDF-GF算法。利用优化特征进行检测,提高了检测有效性。(3)在对僵尸程序进行家族分类时,本专利技术基于决策树ID3算法,并对该算法不一定能得到最佳的划分属性的弱点进行优化,提出了ID3-N算法,提高了分类的正确性。附图说明图1为本专利技术基本流程图;图2为提取静态特征并进行特征处理过程的示意图;图3为僵尸程序的动态特征提取与处理过程示意图;图4为决策树的示意图。具体实施方式下面结合附图并举实施例,对本专利技术进行详细描述。本专利技术提供了一种动静态特征结合的僵尸程序检测和分类方法,如图1所示,包括如下步骤:步骤一:僵尸程序的检测利用opcode(是机器语言中用于描述需要执行某种操作的机器码)、PE(可移植执行)节信息和DLL(动态链接库)序列,可以对僵尸程序和其他恶意代码进行区分。静态检测具有安全性高、检测效率高的优点。检测过程中的特征选择采用了优化后TF-IDF-GF算法。主要流程如下:TF-IDF的核心思想是特征项的重要性随着它在文件中出现的次数而增加,但同时会随著它在特征库中出现的频率而下降。其计算方式如下文所示:TF权重:特征频(特征值频率)。不同种类的样本中,特征出现的频率差别很大。如果某一类样本中有一个特征出现的频率很高,说这意味着该特征能够很好的代表这一类文本。这种方法认为它的作用随着它出现的频率增大而增大,并把特征频当做特征项的权重。其计算公式ni,j表示特征项tj在某一类(i)样本中出现的次数,表示特征项tj在所有样本中出现的次数。IDF权重:反比文档频率。特征项在很多样本中出现比不上那些只在小部分样本中出现的具有代表性。这意味着,如果一个特征只在某一类样本中出现,那么它具有很高的重要性。它的目的在于增强只在小部分样本中出现的特征项的重要度。IDF的值越大说明该特征项在样本中分布非常集中,代表性越强。其计算公式为其中N表示整个集合中的样本数目,nj是包含特征项tj的样本总数。假如特征项在样本集合中的每个样本中都存在,则idf的值就等于0。在实际应用中为了避免0值的出现,可以将idf的式子定义为其中c∈(0,1)为常数,常用的取值为c=0.01。TF-IDF权重:即TF权重和IDF权重的组合,是当前应用最多的特征加权算法,在现实生活和研究中具有很好的效果。公式如下:Wi,j=tfi,j*idfj(4)但是,TF-IDF有明显的缺点,主要体现在如果某个特征项在某一类的样本中频繁出现,而在其他类别的样本中很少出现,则该特征项具有很好的类区分性,应该具有较大的权值,但是TF-IDF并不能体现该特点;以下例子证实了TF-IDF的缺陷问题:共有C1和C2两个类别,每个本文档来自技高网
...
一种动静态特征结合的僵尸程序检测与分类方法

【技术保护点】
一种动静态特征结合的僵尸程序检测与分类方法,其特征在于,基于静态特征信息,进行僵尸程序检测;检测过程中的特征选择采用了采用改进的TF‑IDF算法,改进的TF‑IDF算法是在TF‑IDF算法计算TF‑IDF权重时加入类区分度因子GF,用于表征特征项在某一类别中的出现程度与在其他所有类别中出现程度的比例;运行检测的僵尸程序,提取僵尸程序运行的API序列和网路流量信息,处理获得僵尸程序家族分类特征;基于僵尸程序家族分类特征,对僵尸程序进行分类。

【技术特征摘要】
1.一种动静态特征结合的僵尸程序检测与分类方法,其特征在于,基于静态特征信息,进行僵尸程序检测;检测过程中的特征选择采用了采用改进的TF-IDF算法,改进的TF-IDF算法是在TF-IDF算法计算TF-IDF权重时加入类区分度因子GF,用于表征特征项在某一类别中的出现程度与在其他所有类别中出现程度的比例;运行检测的僵尸程序,提取僵尸程序运行的API序列和网路流量信息,处理获得僵尸程序家族分类特征;基于僵尸程序家族分类特征,对僵尸程序进行分类。2.如权利要求1所述的方法,其特征在于,所述静态特征信息包括opcode、PE节信息和DLL序列。3.如权利要求1所述的方法,其特征在于,所述类区分度因子GF为:其中,对于特征项tj,类别i中包含特征项tj的样本数记为Cji,除去类别i的其他所有类别中包含特征项tj的样本数记为C!ji...

【专利技术属性】
技术研发人员:薛静锋张继郭宇单纯刘康
申请(专利权)人:北京理工大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1