CN102779249B - 恶意程序检测方法及扫描引擎 - Google Patents

恶意程序检测方法及扫描引擎 Download PDF

Info

Publication number
CN102779249B
CN102779249B CN201210222414.XA CN201210222414A CN102779249B CN 102779249 B CN102779249 B CN 102779249B CN 201210222414 A CN201210222414 A CN 201210222414A CN 102779249 B CN102779249 B CN 102779249B
Authority
CN
China
Prior art keywords
fileinfo
rogue program
characteristic
chi
feature
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 - Reinstated
Application number
CN201210222414.XA
Other languages
English (en)
Other versions
CN102779249A (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.)
Beijing Qizhi Business Consulting Co ltd
Beijing Qihoo Technology Co Ltd
360 Digital Security Technology Group Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
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 Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201210222414.XA priority Critical patent/CN102779249B/zh
Publication of CN102779249A publication Critical patent/CN102779249A/zh
Application granted granted Critical
Publication of CN102779249B publication Critical patent/CN102779249B/zh
Active - Reinstated legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请提供了一种恶意程序检测方法及扫描引擎,其中,恶意程序检测方法包括:从恶意程序样本和正常程序样本中获取文件信息,其中,所述文件信息包括文件名和文件路径;使用特征选择算法对获取的所述文件信息进行特征提取;根据所述特征提取所提取的特征数据,使用机器学习算法生成特征模型;使用所述特征模型检测恶意程序,对检测到的所述恶意程序进行处理。通过本申请,实现了恶意程序的有效查杀。

Description

恶意程序检测方法及扫描引擎
技术领域
本申请涉及网络病毒查杀技术领域,特别是涉及一种恶意程序检测方法及扫描引擎。
背景技术
恶意程序通常是指带有攻击意图的一段程序,属于病毒的一种,是编制者在计算机程序中插入破坏计算机功能或者破坏数据,影响计算机使用并且能够自我复制的一组计算机指令或者程序代码。
目前,对恶意程序的识别方法,通常有以下几种:
(一)根据文件本身代码或数据段的特征,采用特征码的方式
这是传统杀毒引擎的常用方式,根据已经发现的病毒的样本,如果有壳,需要先脱壳,然后有专业人员抽取特征码,并入病毒特征库。杀毒时,用病毒库中的标本去对照机器中的所有程序或文件,看是不是符合这些标本,是则是病毒,否则就不一定是病毒。这是传统杀毒软件的技术机制,比如卡巴斯基,NOD32,小红伞,瑞星,360的AVE引擎等等。
(二)机器学习的方式
先准备病毒样本和正常程序样本,然后利用人工智能的方法,通过学习病毒样本和正常程序样本,产生一个模型,然后利用模型去判断未知程序是否为恶意程序。这是一种比较新颖的杀毒机制,目前已被应用的有360的QVM引擎。
(三)采用其他复杂规则
根据病毒木马的行为特点,比如写启动项,往系统文件目录下写文件等等,总结出一些规律,然后判断用户的机器上哪些程序符合这些规律,然后报毒。比如360的木马云查杀引擎。
(四)根据程序的行为规则
根据恶意程序的行为规则,先总结规律。然后实时监控待运行程序的行为,一旦符合预设规则,则立即停止其运行。比如360的实时云防御系统。
然而,上述恶意程序识别方法中,方法一和方法二不能解决未知木马病毒的问题,并且,对于已知的木马病毒,需要具备相关专业技能专业人员才能分析和提取特征码;而方法三和方法四也需要具备相关专业技能专业人员总结规则,并且,在总结出一个规则后,要先小范围的用户试用,否则容易产生大面积的误报。
可见,现有方法要么无法查杀未知恶意程序,要么查杀实现复杂、实现效率低,不管哪种方法,均无法实现恶意程序的有效查杀。
发明内容
本申请提供了一种恶意程序检测方法及扫描引擎,以解决现有恶意程序查杀方案或者无法查杀未知恶意程序,或者查杀实现复杂、实现效率低,均无法实现恶意程序有效查杀的问题。
为了解决上述问题,本申请公开了一种恶意程序检测方法,包括:从恶意程序样本和正常程序样本中获取文件信息,其中,所述文件信息包括文件名和文件路径;使用特征选择算法对获取的所述文件信息进行特征提取;根据所述特征提取所提取的特征数据,使用机器学习算法生成特征模型;使用所述特征模型检测恶意程序,对检测到的所述恶意程序进行处理。
优选地,所述文件信息还包括以下至少之一:文件资源段信息、文件版权信息、文件时间戳信息、文件长度信息。
优选地,所述使用特征选择算法对获取的所述文件信息进行特征提取的步骤包括:使用卡方检验或信息增益法,对获取的所述文件信息进行特征提取。
优选地,所述根据所述特征提取所提取的特征数据,使用机器学习算法生成特征模型的步骤包括:根据所述特征提取所提取的特征数据,使用支持向量机SVM算法或逻辑回归法生成特征模型。
优选地,在所述使用所述特征模型检测恶意程序的步骤之前,还包括:使用查杀引擎进行恶意程序检测;所述使用所述特征模型检测恶意程序,对检测到的所述恶意程序进行处理的步骤包括:对所述查杀引擎检测出的恶意程序,使用所述特征模型进行恶意程序检测,并对检测到的所述恶意程序进行处理。
为了解决上述问题,本申请还公开了一种扫描引擎,包括:获取模块,用于从恶意程序样本和正常程序样本中获取文件信息,其中,所述文件信息包括文件名和文件路径;特征提取模块,用于使用特征选择算法对获取的所述文件信息进行特征提取;特征模型建立模块,用于根据所述特征提取所提取的特征数据,使用机器学习算法生成特征模型;检测模块,用于使用所述特征模型检测恶意程序,对检测到的所述恶意程序进行处理。
优选地,所述文件信息还包括以下至少之一:文件资源段信息、文件版权信息、文件时间戳信息、文件长度信息。
优选地,所述特征提取模块,用于使用卡方检验或信息增益法,对获取的所述文件信息进行特征提取。
优选地,特征模型建立模块,用于根据所述特征提取模块提取的特征数据,使用支持向量机SVM算法或逻辑回归法生成特征模型。
优选地,所述扫描引擎还包括:基础查杀模块,用于在所述检测模块使用所述特征模型检测恶意程序之前,使用查杀引擎进行恶意程序检测;所述检测模块,用于对所述查杀引擎检测出的恶意程序,使用所述特征模型进行恶意程序检测,并对检测到的所述恶意程序进行处理。
与现有技术相比,本申请具有以下优点:
本申请使用文件信息(包括文件名和文件路径)建立恶意程序特征模型,进而利用该特征模型检测恶意程序。恶意程序的文件信息有很多特征,比如包含该恶意程序功能的描述,包含恶意程序作者特定的工作目录等,当该程序被杀毒软件识别后,作者会做程序代码的调整,以避免各种靠特征码查杀的引擎,但上面所述的文件信息,作者基本不会去调整。因此,在对文件信息进行了特征提取后,采用人工智能学习算法(也即机器学习算法),对已知的恶意程序的文件名、文件路径等各种字符串信息进行学习,然后利用生成的模型去对未知程序进行预测,实现简单,对于修改了代码而保持原文件信息的未知恶意程序也能够有效查杀。进一步地,将本申请的方案与现有查杀引擎或软件相结合时,本申请的恶意程序检测结果能够作为传统查杀结果的有益的补充,提高恶意程序查杀准确度和效率。
附图说明
图1是根据本申请实施例一的一种恶意程序检测方法的步骤流程图;
图2是根据本申请实施例二的一种恶意程序检测方法的步骤流程图;
图3是根据本申请实施例三的一种恶意程序检测方法的步骤流程图;
图4是根据本申请实施例四的一种扫描引擎的结构框图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
实施例一
参照图1,示出了根据本申请实施例一的一种恶意程序检测方法的步骤流程图。
本实施例的恶意程序检测方法包括以下步骤:
步骤S102:从恶意程序样本和正常程序样本中获取文件信息。
其中,文件信息包括文件名和文件路径。
恶意程序样本和正常程序样本可以是现有样本,也可以既包括现有样本也包括实时收集到的样本,恶意程序检测工具可以通过数据接口、或导入工具、或其它适当方式获取恶意程序样本和正常程序样本。
文件信息的获取可以采用常用方式,如从文件的文件属性中获取等,本领域技术人员可以根据实际情况采用适当方式,本申请对此不作限制。
步骤S104:使用特征选择算法对获取的文件信息进行特征提取。
特征选择是指从一组给定的特征集中,按照某一准则选择出一组具有良好区分特性的特征子集。在进行特征选择时一般都是利用某种评价函数独立地对每个原始特征项进行评分,然后将它们按分值的高低排序,从中选取若干个分值最高的特征项。
本实施例中,给定的特征集是从恶意程序样本和正常程序样本中获取的文件信息,然后使用特征选择算法,如卡方检验、信息增益法、分支定界算法、指数算法、序列算法、随机算法等,进行特征选择和提取,最终实现文件信息的特征提取。
步骤S106:根据特征提取所提取的特征数据,使用机器学习算法生成特征模型。
机器学习算法是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。其通过从数据里提取规则或模式,把数据转换成信息。这一过程中,数据首先被预处理,形成特征,然后根据特征创建某种模型。
本实施例中,利用从文件信息中提取的特征数据,使用机器学习算法,如SVM(Support Vector Machine,支持向量机)算法、逻辑回归法、决策树法、朴素贝叶斯分类器法、神经网络法等,生成恶意程序文件信息的特征模型。
步骤S108:使用生成的特征模型检测恶意程序,对检测到的恶意程序进行处理。
其中,对检测到的恶意程序的处理包括但不限于:收集恶意程序特征代码、显示检测结果、根据检测结果进行评分或评级、上报检测结果等。
本实施例使用文件信息(包括文件名和文件路径)建立恶意程序特征模型,进而利用该特征模型检测恶意程序。恶意程序的文件信息有很多特征,比如包含该恶意程序功能的描述,包含恶意程序作者特定的工作目录等,当该程序被杀毒软件识别后,作者会做程序代码的调整,以避免各种靠特征码查杀的引擎,但上面所述的文件信息,作者基本不会去调整。因此,在对文件信息进行了特征提取后,采用人工智能学习算法(也即机器学习算法),对已知的恶意程序的文件名、文件路径等各种字符串信息进行学习,然后利用生成的模型去对未知程序进行预测,实现简单,对于修改了代码而保持原文件信息的未知恶意程序也能够有效查杀。进一步地,将本实施例的方案与现有查杀引擎或软件相结合时,本实施例的恶意程序检测结果能够作为传统查杀结果的有益的补充,提高恶意程序查杀准确度和效率。
实施例二
参照图2,示出了根据本申请实施例二的一种恶意程序检测方法的步骤流程图。
本实施例的恶意程序检测方法包括以下步骤:
步骤S202:获取并整理样本,将样本分为恶意程序样本和正常程序样本。
步骤S204:整理恶意程序样本和正常程序样本,从中获取文件信息。
本实施例中,文件信息除了包括文件名和文件路径之外,还包括以下至少之一:文件资源段信息、文件版权信息、文件时间戳信息、文件长度信息。
根据对恶意程序样本的观察,文件名、文件路径、文件资源段的信息(包括产品描述,文件信息,公司名称)、文件版权信息、文件时间戳,文件长度等,具有抽取简单,且对恶意程序样本和正常程序样本的区分有较强的用处。
步骤S206:使用特征选择算法对获取的文件信息进行处理,抽取重要特征。
也即,使用特征选择算法对获取的文件信息进行特征提取。
对于文件信息,如文件名和路径信息,包含各种字符,需要组织数据字典。为从海量的文件信息的字符串组合中找出最有意义的文件信息组成数据字典,本实施例中采用卡方检验或信息增益法。
卡方检验属于非参数检验的范畴,主要是比较两个及两个以上样本率(构成比)以及两个分类变量的关联性分析。其根本思想就是在于比较理论频数和实际频数的吻合程度或拟合优度问题。
卡方检验的类型通常包括:四格表资料的卡方检验、行X列表资料的卡方检验、和列联表资料的卡方检验。
(1)四格表资料的卡方检验
四格表资料的卡方检验用于进行两个率或两个构成比的比较。若四格表资料四个格子的频数分别为a,b,c,d,则,
四格表资料卡方检验的卡方值=(ad-bc)2×n/(a+b)(c+d)(a+c)(b+d),
自由度v=(行数-1)(列数-1);
其要求样本含量应大于40且每个格子中的理论频数不应小于5。当样本含量大于40但理论频数有小于5的情况时卡方值需要校正,当样本含量小于40时只能用确切概率法计算概率。
(2)行X列表资料的卡方检验
行X列表资料的卡方检验用于多个率或多个构成比的比较。
r行c列表资料卡方检验的卡方值=n[(A11/n1n1+A12/n1n2+...+Arc/nrnc)-1];
其要求每个格子中的理论频数T均大于5或1<T<5的格子数不超过总格子数的1/5。当有T<1或1<T<5的格子较多时,可采用并行并列、删行删列、增大样本含量的办法使其符合行X列表资料卡方检验的应用条件。而多个率的两两比较可采用行X列表分割的办法。
(3)列联表资料的卡方检验
同一组对象,观察每一个个体对两种分类方法的表现,结果构成双向交叉排列的统计表就是列联表,包括R×C列联表和2×2列联表。
其中,R×C列联表的卡方检验用于R×C列联表的相关分析,卡方值的计算和检验过程与行X列表资料的卡方检验相同。
2×2列联表的卡方检验又称配对记数资料或配对四格表资料的卡方检验,根据卡方值计算公式的不同,可以达到不同的目的。当用一般四格表的卡方检验计算时,卡方值=(ad-bc)2n/(a+b)(c+d)(a+c)(b+d),此时用于进行配对四格表的相关分析,如考察两种检验方法的结果有无关系;当卡方值=(|b-c|-1)2/(b+c)时,此时卡方检验用来进行四格表的差异检验,如考察两种检验方法的检出率有无差别。
信息增益(Information Gain,IG)是一种很有效的特征量化方法(特征选择方法)。在信息增益中,重要性的衡量标准就是看特征能够为分类系统带来多少信息,带来的信息越多,该特征越重要。
在信息论中,有关信息量(就是“熵”)的定义如下,设有一个变量X,它可能的取值有n多种,分别是x1,x2,……,xn,每一种取到的概率分别是P1,P2,……,Pn,那么X的熵就定义为:
H ( X ) = - &Sigma; i = 1 n P i &CenterDot; log 2 P i
可见,一个变量可能的变化越多(反而跟变量具体的取值没有任何关系,只和值的种类多少以及发生概率有关),它携带的信息量就越大。
对分类系统来说,类别C是变量,它可能的取值是C1,C2,……,Cn,而每一个类别出现的概率是P(C1),P(C2),……,P(Cn),因此n就是类别的总数。此时,分类系统的熵就可以表示为:
H ( C ) = - &Sigma; i = 1 n P ( C i ) &CenterDot; log 2 P ( C i )
则,第二个式子与第一个式子的关系就是:
H ( C | X ) = P 1 H ( C | X = x 1 ) + P 2 H ( C | H = x 2 ) + . . . + P n H ( C | X = x n )
= &Sigma; i = 1 n P i H ( C | X = x i )
以文件信息的特征t为例,t是一个固定的特征,比如是关键词“经济”。特征t  “经济”可能的取值实际上只有两个,“经济”要么出现,要么不出现。一般地,t的取值只有t(代表t出现)和(代表t不出现)。因此,固定t时系统的条件熵就有了,为了区别t出现时的符号与特征t本身的符号,用T代表特征,而用t代表T出现,那么:
H ( C | T ) = P ( t ) H ( C | t ) + P ( t &OverBar; ) H ( C | t &OverBar; )
其中,P(t)就是T出现的概率,就是T不出现的概率。这个式子可以进一步展开,其中的
H ( C | t ) = - &Sigma; i = 1 n P ( C i | t ) &CenterDot; log 2 P ( C i | t )
另一半可以展开为:
H ( C | t &OverBar; ) = - &Sigma; i = 1 n P ( C i | t &OverBar; ) &CenterDot; log 2 P ( C i | t &OverBar; )
因此,特征T给系统带来的信息增益就可以写成系统原本的熵与固定特征T后的条件熵之差:
IG ( T ) = H ( C ) - H ( C | T ) = - &Sigma; i = 1 n P ( C i ) &CenterDot; log 2 P ( C i ) +
P ( t ) &Sigma; i = 1 n P ( C i | t ) &CenterDot; log 2 P ( C i | t ) + P ( t &OverBar; ) &Sigma; i = 1 n P ( C i | t &OverBar; ) &CenterDot; log 2 P ( C i | t &OverBar; )
例如,对文件名等信息,可以使用卡方检验或者信息增益法提取特征进行分词,比如“QQ盗号木马模板程序”,通过卡方检验或者信息增益法提取特征可以分成“QQ盗号木马模板程序”。
通过卡方检验或者信息增益法,能够有效提取恶意程序的特征。并且,相较于其它特征选择算法,特征提取更为准确有效。
步骤S208:对特征选择算法提取的文件信息特征数据使用机器学习算法,生成恶意程序的文件信息特征模型。
本实施例中,使用SVM算法或逻辑回归法对提取的文件信息特征数据进行处理,生成恶意程序的文件信息特征模型。
SVM算法是建立在统计学习理论的VC维理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性和学习能力之间寻求最佳折衷,以期获得最好的推广能力的算法。其中,VC维是对函数类的一种度量,可以简单地理解为问题的复杂程度。
逻辑回归法通过对定性变量的回归分析,建立起有效的预测模型。
通过SVM算法或逻辑回归法建立的恶意程序的文件信息特征模型,能够对恶意程序进行更为准确和有效的检测。
步骤S210:使用生成的文件信息特征模型对文件进行检测,识别恶意程序。
通过本实施例,能够根据文件信息识别未知恶意程序,文件信息易获取且具有很多特征,如包含恶意程序功能的描述、恶意程序作者特定的工作目录、程序资源段的产品描述,版权信息等,根据文件信息识别未知恶意程序使得恶意程序识别更加简单有效;并且,只需要根据文件信息提取特征,通过机器学习建立特征模型,不需要具备专业知识的人员对恶意程序中的特征代码进行特别地分析和提取,提高了对已知恶意程序的规则抽取便利性。
实施例三
参照图3,示出了根据本申请实施例三的一种恶意程序检测方法的步骤流程图。
本实施例在现有查杀引擎查杀恶意程序的基础上,进行进一步的恶意程序检测,作为现有查杀的辅助手段和有益补充。
步骤S302:从恶意程序样本和正常程序样本中获取文件信息。
本实施例中,文件信息除了包括文件名和文件路径之外,还包括以下至少之一:文件资源段信息、文件版权信息、文件时间戳信息、文件长度信息。
步骤S304:使用卡方检验对获取的文件信息进行特征提取。
比如,对于提取的文件名样本“QQ盗号木马”,使用卡方检验分别统计其在恶意程序样本特征(文件名或者资源段的文件信息)中出现的比例,以及在恶意程序样本中出现的比例,结果就会发现在恶意程序样本中出现的比例较高,在正常程序样本中出现的比例非常低。因此,可以认为“QQ盗号木马”就是一个很好的的一个特征。同样,抽取其它能代表恶意程序样本或者恶意程序样本的特征词。
步骤S306:对使用卡方检验提取的文件信息特征数据使用SVM算法,生成恶意程序的文件信息特征模型。
例如,提取出的文件信息特征为一组词,包括:QQ盗号木马、A1、A2、和A3,其中既有代表恶意程序样本的词,也有代表正常程序样本的词。然后,利用这组文件信息特征组成的特征库去匹配已知的样本,生成的数据格式如下:恶意程序样本A1:命中,A2:没有命中,A3:......;正常程序样本A1:没有命中,A2:命中,A3:......。利用这些数据,生成模型文件,也就是文件信息特征模型,其可以是一个数据文件,有着固定的格式。然后用特征库去匹配未知的样本,生成的数据格式文件仍然是:A1:命中,A2:没有命中,A3:......。然后计算该未知样本是恶意程序的可能性有多大,正常程序的可能性有多大。
步骤S308:使用传统的查杀引擎进行恶意程序检测。
例如,使用基于特征码的传统查杀引擎,或者传统机器学习方式的查杀引擎,或者基于其它复杂规则的查杀引擎,或者基于根据程序行为的规则的查杀引擎等上述传统的查杀引擎,对文件进行检测,查出恶意程序。
步骤S310:对传统的查杀引擎检测出的恶意程序,使用步骤S306中生成的特征模型进行恶意程序检测,对检测到的恶意程序进行处理。
也即,在原检测出的恶意程序的基础上,进行进一步地恶意程序检测,以提高恶意程序检测准确性和成功率。
通过本实施例,利用恶意程序的文件信息包含很多特征,比如包含该恶意程序功能的描述,包含恶意程序作者特定的工作目录,再比如程序资源段的产品描述,版权信息等,当该程序被查杀软件识别后,作者会做程序代码的调整,以避免各种靠特征码查杀的引擎,但上面所述的文件信息的字符串信息,作者不会去调整。并且,对于网上大量的以模板方式买卖的恶意程序,其包含的文件信息的字符串信息也很重要。因此,采用人工智能学习算法(比如SVM),对已知的恶意程序的文件名等各种字符串信息进行学习,然后利用生成的模型去对未知程序进行预测,把预测结果作为传统查杀结果的有益的补充,提高了恶意程序查杀准确度和效率。
实施例四
参照图4,示出了根据本申请实施例四的一种扫描引擎的结构框图。
本实施例的扫描引擎包括:获取模块402,用于从恶意程序样本和正常程序样本中获取文件信息,其中,文件信息包括文件名和文件路径;特征提取模块404,用于使用特征选择算法对获取的文件信息进行特征提取;特征模型建立模块406,用于根据特征提取所提取的特征数据,使用机器学习算法生成特征模型;检测模块408,用于使用生成的特征模型检测恶意程序,对检测到的恶意程序进行处理。
优选地,文件信息还包括以下至少之一:文件资源段信息、文件版权信息、文件时间戳信息、文件长度信息。
优选地,特征提取模块404用于使用卡方检验或信息增益法,对获取的文件信息进行特征提取。
优选地,特征模型建立模块406用于根据特征提取模块404提取的特征数据,使用SVM算法或逻辑回归法生成特征模型。
优选地,本实施例的扫描引擎还包括:基础查杀模块410,用于在检测模块408使用特征模型检测恶意程序之前,使用查杀引擎进行恶意程序检测;检测模块408,用于对查杀引擎检测出的恶意程序,使用生成的特征模型进行恶意程序检测,对检测到的恶意程序进行处理。需要说明的是,本实施例中,基础查杀模块410作为扫描引擎的一部分,但不限于此,在实际使用中,基础查杀模块410的功能可以使用独立的传统查杀引擎实现,扫描引擎可以通过调用传统查杀引擎的检测结果,实现进一步地恶意程序检测。
本实施例的扫描引擎用于实现前述多个方法实施例中相应的恶意程序检测方法,并具有相应的方法实施例的有益效果,在此不再赘述。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例扫描引擎而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上对本申请所提供的一种恶意程序检测方法和扫描引擎进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (8)

1.一种恶意程序检测方法,其特征在于,包括:
从恶意程序样本和正常程序样本中获取文件信息,其中,所述文件信息包括文件名和文件路径;
使用特征选择算法对获取的所述文件信息进行特征提取;
所述使用特征选择算法对获取的所述文件信息进行特征提取的步骤包括:使用卡方检验对获取的所述文件信息进行特征提取,其中,卡方检验包括四表格资料的卡方检验、行X列表资料的卡方检验和列联表资料的卡方检验;
根据所述文件信息进行特征提取所提取的特征数据,使用机器学习算法生成特征模型;
使用所述特征模型检测恶意程序,对检测到的所述恶意程序进行处理;
在所述使用所述特征模型检测恶意程序的步骤之前,还包括:使用查杀引擎进行恶意程序检测;
所述使用所述特征模型检测恶意程序,对检测到的所述恶意程序进行处理的步骤包括:对所述查杀引擎检测出的恶意程序,使用所述特征模型进行恶意程序检测,并对检测到的所述恶意程序进行处理。
2.根据权利要求1所述的方法,其特征在于,所述文件信息还包括以下至少之一:文件资源段信息、文件版权信息、文件时间戳信息、文件长度信息。
3.根据权利要求1或2所述的方法,其特征在于,所述使用特征选择算法对获取的所述文件信息进行特征提取的步骤包括:
使用信息增益法,对获取的所述文件信息进行特征提取。
4.根据权利要求1或2所述的方法,其特征在于,所述根据所述文件信息进行特征提取所提取的特征数据,使用机器学习算法生成特征模型的步骤包括:
根据所述文件信息进行特征提取所提取的特征数据,使用支持向量机SVM算法或逻辑回归法生成特征模型。
5.一种扫描引擎,其特征在于,包括:
获取模块,用于从恶意程序样本和正常程序样本中获取文件信息,其中,所述文件信息包括文件名和文件路径;
特征提取模块,用于使用特征选择算法对获取的所述文件信息进行特征提取,所述特征提取模块还用于使用卡方检验对获取的所述文件信息进行特征提取,其中,卡方检验包括四表格资料的卡方检验、行X列表资料的卡方检验和列联表资料的卡方检验;
特征模型建立模块,用于根据所述文件信息进行特征提取所提取的特征数据,使用机器学习算法生成特征模型;
检测模块,用于使用所述特征模型检测恶意程序,对检测到的所述恶意程序进行处理;
所述的扫描引擎,还包括:基础查杀模块,用于在所述检测模块使用所述特征模型检测恶意程序之前,使用查杀引擎进行恶意程序检测;
所述检测模块,具体用于对所述查杀引擎检测出的恶意程序,使用所述特征模型进行恶意程序检测,并对检测到的所述恶意程序进行处理。
6.根据权利要求5所述的扫描引擎,其特征在于,所述文件信息还包括以下至少之一:文件资源段信息、文件版权信息、文件时间戳信息、文件长度信息。
7.根据权利要求5或6所述的扫描引擎,其特征在于,所述特征提取模块,用于使用信息增益法,对获取的所述文件信息进行特征提取。
8.根据权利要求5或6所述的扫描引擎,其特征在于,特征模型建立模块,用于根据所述特征提取模块提取的特征数据,使用支持向量机SVM算法或逻辑回归法生成特征模型。
CN201210222414.XA 2012-06-28 2012-06-28 恶意程序检测方法及扫描引擎 Active - Reinstated CN102779249B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210222414.XA CN102779249B (zh) 2012-06-28 2012-06-28 恶意程序检测方法及扫描引擎

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210222414.XA CN102779249B (zh) 2012-06-28 2012-06-28 恶意程序检测方法及扫描引擎

Publications (2)

Publication Number Publication Date
CN102779249A CN102779249A (zh) 2012-11-14
CN102779249B true CN102779249B (zh) 2015-07-29

Family

ID=47124159

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210222414.XA Active - Reinstated CN102779249B (zh) 2012-06-28 2012-06-28 恶意程序检测方法及扫描引擎

Country Status (1)

Country Link
CN (1) CN102779249B (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095714A (zh) * 2013-01-25 2013-05-08 四川神琥科技有限公司 一种基于木马病毒种类分类建模的木马检测方法
CN103235753A (zh) * 2013-04-09 2013-08-07 国家电网公司 一种信息服务器监测方法及装置
CN104424435B (zh) 2013-08-22 2018-12-04 腾讯科技(深圳)有限公司 一种获取病毒特征码的方法及装置
CN104915596B (zh) * 2014-03-10 2018-01-26 可牛网络技术(北京)有限公司 apk病毒特征库构建方法、装置及apk病毒检测系统
CN104091122A (zh) * 2014-06-17 2014-10-08 北京邮电大学 一种移动互联网恶意数据的检测系统
CN105574408B (zh) * 2014-10-11 2018-04-17 安一恒通(北京)科技有限公司 用于文件病毒检测的特征获取方法及文件病毒检测的方法
CN104598820A (zh) * 2015-01-14 2015-05-06 国家电网公司 一种基于特征行为分析的木马病检测方法
US9477837B1 (en) * 2015-03-31 2016-10-25 Juniper Networks, Inc. Configuring a sandbox environment for malware testing
CN104794398A (zh) * 2015-04-17 2015-07-22 天津大学 基于机器学习的安卓平台恶意软件检测方法
CN106294529A (zh) * 2015-06-29 2017-01-04 阿里巴巴集团控股有限公司 一种识别用户异常操作方法和设备
CN105718795B (zh) * 2015-08-28 2019-05-07 哈尔滨安天科技股份有限公司 Linux下基于特征码的恶意代码取证方法及系统
CN105608382B (zh) * 2015-12-22 2019-07-02 北京奇虎科技有限公司 软件维护方法与软件问题判定方法以及其相应的装置
CN106997367B (zh) 2016-01-26 2020-05-08 华为技术有限公司 程序文件的分类方法、分类装置和分类系统
CN105763334A (zh) * 2016-03-31 2016-07-13 北京匡恩网络科技有限责任公司 一种动态生成和部署签名的方法
CN105975860B (zh) * 2016-04-26 2019-04-05 珠海豹趣科技有限公司 一种信任文件管理方法、装置及设备
CN106685964B (zh) * 2016-12-29 2020-10-30 济南大学 基于恶意网络流量词库的恶意软件检测方法及系统
CN106685963B (zh) * 2016-12-29 2020-10-30 济南大学 一种恶意网络流量词库的建立方法及建立系统
CN107659570B (zh) * 2017-09-29 2020-09-15 杭州安恒信息技术股份有限公司 基于机器学习与动静态分析的Webshell检测方法及系统
CN109726554B (zh) * 2017-10-30 2021-05-18 武汉安天信息技术有限责任公司 一种恶意程序的检测方法、装置
CN108021806B (zh) * 2017-11-24 2021-10-22 北京奇虎科技有限公司 一种恶意安装包的识别方法和装置
CN107992750A (zh) * 2017-12-19 2018-05-04 深圳豪客互联网有限公司 病毒文件识别方法和装置
CN109992969B (zh) * 2019-03-25 2023-03-21 腾讯科技(深圳)有限公司 一种恶意文件检测方法、装置及检测平台
CN111797239B (zh) * 2020-09-08 2021-01-15 中山大学深圳研究院 应用程序的分类方法、装置及终端设备
CN112948829B (zh) * 2021-03-03 2023-11-03 深信服科技股份有限公司 文件查杀方法、系统、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101639880A (zh) * 2008-07-31 2010-02-03 华为技术有限公司 一种文件检测方法和装置
CN101950336A (zh) * 2010-08-18 2011-01-19 奇智软件(北京)有限公司 一种清除恶意程序的方法和装置
CN102034043A (zh) * 2010-12-13 2011-04-27 四川大学 基于文件静态结构属性的恶意软件检测新方法
CN102142068A (zh) * 2011-03-29 2011-08-03 华北电力大学 一种未知恶意代码的检测方法
CN102479298A (zh) * 2010-11-29 2012-05-30 北京奇虎科技有限公司 基于机器学习的程序识别方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL181041A0 (en) * 2007-01-29 2007-07-04 Deutsche Telekom Ag Improved method and system for detecting malicious behavioral patterns in a computer, using machine learning
US8719939B2 (en) * 2009-12-31 2014-05-06 Mcafee, Inc. Malware detection via reputation system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101639880A (zh) * 2008-07-31 2010-02-03 华为技术有限公司 一种文件检测方法和装置
CN101950336A (zh) * 2010-08-18 2011-01-19 奇智软件(北京)有限公司 一种清除恶意程序的方法和装置
CN102479298A (zh) * 2010-11-29 2012-05-30 北京奇虎科技有限公司 基于机器学习的程序识别方法及装置
CN102034043A (zh) * 2010-12-13 2011-04-27 四川大学 基于文件静态结构属性的恶意软件检测新方法
CN102142068A (zh) * 2011-03-29 2011-08-03 华北电力大学 一种未知恶意代码的检测方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于数据挖掘和机器学习的恶意代码检测技术研究;张小康;《中国优秀硕士学位论文全文库》;20100715;第11页第1章第1.3节、第24-25页第2章第2.4节、第37-42页第4章第4.1-4.3节,图4.1 *
张福勇等.基于IRP的未知恶意代码检测方法.《华南理工大学学报(自然科学版)》.2011,第39卷(第4期),第15-20页. *

Also Published As

Publication number Publication date
CN102779249A (zh) 2012-11-14

Similar Documents

Publication Publication Date Title
CN102779249B (zh) 恶意程序检测方法及扫描引擎
CN110826059B (zh) 面向恶意软件图像格式检测模型的黑盒攻击的防御方法及其装置
CN105205397B (zh) 恶意程序样本分类方法及装置
CN102004764A (zh) 互联网不良信息检测方法以及系统
CN103577755A (zh) 一种基于支持向量机的恶意脚本静态检测方法
CN111259219B (zh) 恶意网页识别模型建立方法、识别方法及系统
CN109462575A (zh) 一种webshell检测方法及装置
CN103177215A (zh) 基于软件控制流特征的计算机恶意软件检测新方法
CN102170447A (zh) 一种基于最近邻及相似度测量检测钓鱼网页的方法
CN107066262A (zh) 源代码文件克隆邻接表合并检测方法
CN110363003B (zh) 一种基于深度学习的Android病毒静态检测方法
CN104317891B (zh) 一种对页面标注标签的方法及装置
CN111723371B (zh) 构建恶意文件的检测模型以及检测恶意文件的方法
CN103366120A (zh) 基于脚本的漏洞攻击图生成方法
CN104123501A (zh) 一种基于多鉴定器集合的病毒在线检测方法
CN104268289B (zh) 链接url的失效检测方法和装置
Jiang et al. A feature selection method for malware detection
Walenstein et al. Header information in malware families and impact on automated classifiers
Mahmoudi et al. Web spam detection based on discriminative content and link features
CN106874762A (zh) 基于api依赖关系图的安卓恶意代码检测方法
CN106330861A (zh) 一种网址检测方法及装置
CN110334510A (zh) 一种基于随机森林算法的恶意文件检测技术
Yue et al. Fine-grained mining and classification of malicious Web pages
CN110472416A (zh) 一种网页恶意代码检测方法及相关装置
CN108287831A (zh) 一种url分类方法和系统、数据处理方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
ASS Succession or assignment of patent right

Owner name: BEIJING QIHU TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: QIZHI SOFTWARE (BEIJING) CO., LTD.

Effective date: 20121107

Owner name: QIZHI SOFTWARE (BEIJING) CO., LTD.

Effective date: 20121107

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100016 CHAOYANG, BEIJING TO: 100088 XICHENG, BEIJING

TA01 Transfer of patent application right

Effective date of registration: 20121107

Address after: 100088 Beijing city Xicheng District xinjiekouwai Street 28, block D room 112 (Desheng Park)

Applicant after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Applicant after: Qizhi software (Beijing) Co.,Ltd.

Address before: The 4 layer 100016 unit of Beijing city Chaoyang District Jiuxianqiao Road No. 14 Building C

Applicant before: Qizhi software (Beijing) Co.,Ltd.

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150729

Termination date: 20190628

RR01 Reinstatement of patent right
RR01 Reinstatement of patent right

Former decision: Patent right to terminate

Former decision publication date: 20200623

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee after: Beijing Qizhi Business Consulting Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220325

Address after: 100020 1773, 15 / F, 17 / F, building 3, No.10, Jiuxianqiao Road, Chaoyang District, Beijing

Patentee after: Sanliu0 Digital Security Technology Group Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Beijing Qizhi Business Consulting Co.,Ltd.