CN109784047B - 基于多特征的程序检测方法 - Google Patents

基于多特征的程序检测方法 Download PDF

Info

Publication number
CN109784047B
CN109784047B CN201811496392.XA CN201811496392A CN109784047B CN 109784047 B CN109784047 B CN 109784047B CN 201811496392 A CN201811496392 A CN 201811496392A CN 109784047 B CN109784047 B CN 109784047B
Authority
CN
China
Prior art keywords
features
program
feature
sensitive api
optimal
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
CN201811496392.XA
Other languages
English (en)
Other versions
CN109784047A (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.)
Peoples Liberation Army Strategic Support Force Aerospace Engineering University
Original Assignee
Peoples Liberation Army Strategic Support Force Aerospace Engineering 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 Peoples Liberation Army Strategic Support Force Aerospace Engineering University filed Critical Peoples Liberation Army Strategic Support Force Aerospace Engineering University
Priority to CN201811496392.XA priority Critical patent/CN109784047B/zh
Publication of CN109784047A publication Critical patent/CN109784047A/zh
Application granted granted Critical
Publication of CN109784047B publication Critical patent/CN109784047B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于多特征的程序类别检测方法,包括:提取待测程序的多个特征;去除所述多个特征中的权限特征和敏感应用程序编程接口API特征中的无效特征,得到所述权限特征和所述敏感API特征的最佳特征子集;计算所述最佳特征子集中特征的权重系数;对所述多个特征中的图片特征、XML文件特征以及组件特征进行回归分析;基于所述最佳特征子集、所述权重系数、所述回归分析的结果及预先建立的分类模型确定待测程序的类别。通过本方法能够提高对恶意程序的检测率,并降低对正常程序的误报率。

Description

基于多特征的程序检测方法
技术领域
本发明涉及程序类别检测领域,特别是指一种基于多特征的程序检测方法。
背景技术
具有Android系统的终端,因系统的开源性、服务的免费性、功能的多样化以及便携性而广受设备生产商、服务运营商、开发者和消费者的支持,智能终端极大的改变了人们的生活方式,目前已连续5年保持接入互联网操作系统市场占有率的第一。
伴随着智能终端的普及和飞速发展,恶意程序也层出不穷,据统计,Android用户被感染数高达2.14亿。从用户角度而言,恶意程序被安装后,会在用户不知情的情况下,触发系统破坏、资费消耗、恶意扣费、隐私窃取等恶意行为,使得用户的隐私、财产等受到损害。从国家层面而言,恶意程序能够通过智能终端搜集敏感信息,利用数据挖掘等技术,能够很容易的窃取国家的经济、政治、军事等涉密信息,威胁到国家安全。
现有技术中,基于机器学习的检测手段从人工智能的角度出发,利用分类算法对已知恶意程序的特征构建具有不断演进和泛化能力的智能检测模型,从而检测未知程序是否为恶意应用程序。朴素贝叶斯分类算法时间复杂度低、性能稳定,与其他分类算法相比,具有最小的误差率,用来进行分类有较好的效果。但是现有技术中的缺点是将每一个特征的权重都视为是相同的,忽视了越重要的特征对分类的贡献越多,因而导致最终分类精度下降。并且由于恶意程序趋向智能化发展,具有自我保护功能的恶意程序逐渐出现,它们会对自身进行伪装、自动清除行为痕迹,具有反检测能力,因此通过单一的特征无法有效检测出恶意程序。
发明内容
有鉴于此,本发明的目的在于提出一种基于多特征的程序检测方法。
基于上述目的本发明提供的一种基于多特征的程序检测方法,包括:
提取待测程序的多个特征;
去除所述多个特征中的权限特征和敏感应用程序编程接口API特征中的无效特征,得到所述权限特征和所述敏感API特征的最佳特征子集;
计算所述最佳特征子集中特征的权重系数;
对所述多个特征中的图片特征、XML文件特征以及组件特征进行回归分析;
基于所述最佳特征子集、所述权重系数、所述回归分析的结果及预先建立的分类模型确定待测程序的类别。
在一实施例中,所述方法还包括:
提取原始样本集中各样本的多个特征,所述多个特征包括:权限特征、敏感API特征、图片特征、XML特征及组件特征;
去除所述权限特征和所述敏感API特征中的无效特征,得到所述权限特征和所述敏感API特征的最佳特征子集;
确定所述最佳特征子集中的特征的后验概率;
计算所述最佳特征子集中的特征的权重系数;
对所述图片特征、所述XML文件特征以及所述组件特征进行回归分析,计算所述图片特征、所述XML文件特征以及所述组件特征的后验概率;
基于所述权限系数,所述最佳特征子集中的特征的后验概率、及所述图片特征、所述XML文件特征及所述组件特征的后验概率生成分类模型。
在一实施例中,所述提取原始样本集中各样本的多个特征,包括:
获取所述样本的安卓安装包;
从所述安卓安装包中提取权限特征、敏感API特征、图片特征、XML特征以及组件特征。
在一实施例中,所述原始样本集包括正常程序样本集和恶意程序样本集,所述正常程序样本集包括多个正常程序样本,所述恶意程序样本集包括多个恶意程序样本,所述去除所述权限特征和敏感API特征中的无效特征,得到所述权限特征和所述敏感API特征的最佳特征子集,包括:
根据所述恶意程序样本集中的特征出现的特征频率与所述正常程序样本集中的相同特征出现的特征频率的差值,去除所述权限特征和所述敏感API特征中的不相关特征。
在一实施例中,所述去除所述权限特征和敏感API特征中的无效特征,得到所述权限特征和所述敏感API特征的最佳特征子集,还包括:
根据所述恶意程序样本集中和所述正常程序样本集中的熵与特征出现条件下的条件熵的差值,去除所述权限特征和所述敏感API特征中的噪声特征。
在一实施例中,所述去除所述权限特征和敏感API特征中的无效特征,得到所述权限特征和所述敏感API特征的最佳特征子集,还包括:
根据特征之间一阶自由度的卡方分布值,过滤所述权限特征和所述敏感API特征中的冗余特征,得到所述权限特征和所述敏感API特征的最佳特征子集。
在一实施例中,所述计算所述最佳特征子集中特征的权重系数,包括:
计算特征的信息增益值以及所述最佳特征子集的信息增益值;
基于所述特征的信息增益值及所述最佳特征子集的信息增益值的比值确定所述最佳特征子集中的特征的权重系数。
在一实施例中,所述确定所述权限特征及所述敏感API特征的后验概率,包括:
基于提取的特征确定所述权限特征及所述敏感API特征的先验概率及条件概率;
基于所述先验概率及条件概率确定所述权限特征和所述敏感API特征的后验概率,所述后验概率包括在正常程序类别下的后验概率及在恶意程序类别下的后验概率。
在一实施例中,所述对所述图片特征、所述XML文件特征以及所述组件特征进行回归分析,计算所述图片特征、所述XML文件特征以及所述组件特征的后验概率,包括:
基于所述回归分析的结果确定所述图片特征、所述XML文件特征及所述组件特征的条件概率;
基于提取的特征确定所述图片特征、所述XML文件特征及所述组件特征的先验概率;
基于所述先验概率和所述条件概率计算所述图片特征、所述XML文件特征以及所述组件特征的后验概率。
在一实施例中,所述基于所述最佳特征子集、所述权重系数、所述回归分析的结果及预先建立的分类模型确定待测程序的类别,包括:
基于所述最佳特征子集、所述权重系数、所述回归分析的结果及预先建立的分类模型确定所述待测程序在正常程序类别下的后验概率及在恶意程序类别下的后验概率;
将所述待测程序在正常程序类别下的后验概率和在恶意程序类别下的后验概率中较大的后验概率的类别作为所述待测程序的类别。
从上面所述可以看出,本发明提供的检测方法,提取待测程序的多个特征,由于权限特征能够用于授权访问系统资源,敏感API特征能够反映应用程序的行为,而组件特征能够实现应用程序的功能,图片特征能用来更好地完善应用程序的功能,XML文件特征能用于页面布局以及描述应用程序的各类资源,因而通过这五种特征的联合处理,并利用机器学习算法进行训练,能够有效提高程序类别检测的精度,明显提高对恶意程序的检测率,降低对正常程序的误报率;另一方面,由于通过量化特征与类别之间的关联程度,并将此值作为权重系数,对特征集中的特征取值进行加权,能够提高朴素贝叶斯的分类性能。
附图说明
图1为本发明实施例提供的一种基于多特征的程序类别检测方法的示意图;
图2为本发明实施例提供的另一种基于多特征的程序类别检测方法的示意图;
图3为本发明实施例提供的检测方法和训练方法的对比示意图;
图4为本发明实施例提供的另一种基于多特征的程序类别检测方法的示意图;
图5为本发明实施例提供的另一种基于多特征的程序类别检测方法的示意图;
图6为本发明实施例提供的一种分类模型的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
如图1所示,为本发明实施例提供的一种基于多特征的程序检测方法的流程示意图,该方法可以包括以下步骤:
步骤110、提取待测程序的多个特征。
其中待测程序可以是安装在手机上的Android程序,本方法的目的是为了确定该程序为正常程序还是恶意程序。
多个特征可以包括权限特征、敏感API(Application Programming Interface,应用程序编程接口)特征、图片特征、XML特征及组件特征。
步骤120、去除多个特征中的权限特征和敏感API特征中的无效特征,得到权限特征和敏感API特征的最佳特征子集。
其中,无效特征可以包括不相关特征、冗余特征以及噪声特征,本公开实施例中可以通过特征选择优化算法去除无效特征。
步骤130、计算最佳特征子集中特征的权重系数。
步骤140、对多个特征中的图片特征、XML文件特征以及组件特征进行回归分析。
步骤150、基于最佳特征子集、权重系数、回归分析的结果及预先建立的分类模型确定待测程序的类别。
如图2所示,为本实施例提供的另一种基于多特征的程序检测方法的流程示意图,如图3所示,示出了本实施例提供的检测方法及分类模型的构建方法(即训练方法)的示意图,结合图2和图3所示,可以看出检测方法及分类模型的构建方法的部分步骤是相同的,其中分类模型的构建方法可以包括以下步骤:
步骤210、提取原始样本集中各样本的多个特征。
其中,原始样本集包括正常程序样本集和恶意程序样本集,正常程序样本集包括多个正常程序样本,恶意程序样本集包括多个恶意程序样本。
在本公开步骤中,通过采用逆向工程对样本进行反编译,提取权限特征、敏感API特征、组件特征、图片特征和XML文件特征。
具体而言,如图4所示,步骤210可以包括如下子步骤:
步骤211、获取样本的APK包(AndroidPackage,Android安装包),并对APK包进行逆向反编译。
其中,APK包为压缩文件包。
步骤212、从APK包的AndroidManifest.xml文件中提取权限特征和组件特征。
其中,权限特征,为描述程序具有哪些权限的信息,例如:是否具有联网权限,是否具有发送本地信息的权限,是否具有通话权限,是否具有开机自启动权限等。
组件特征,为描述程序的组件构成的信息,例如:构成程序的各种文本框、图片框等,包括文本框、图片框的类型、以及文本框、图片框的个数等。
步骤213、从APK包的smali文件中提取敏感API特征。
其中,敏感API特征位于classes.dex文件下,本公开步骤可以使用Apktool工具,对APK包进行处理,将dex文件反编译为一系列包含源代码的.smali文件,然后从smali文件中提取敏感API特征。
其中,敏感API特征可以理解为:操作的功能函数,为Android程序提供框架支撑和行为实现。例如当点击程序中的某个图标时,手机页面跳转到某个投票页面,那么使得手机页面跳转的跳转函数即敏感API特征。
步骤214、从APK包的res资源文件夹中提取图片特征和XML文件特征。
其中,图片特征可以包括程序中的图片或图标的类型,例如:图片的格式为.JPG格式还是.PGJ格式等,图片或图标的个数等等。
XML文件特征指的是:将程序页面上的各种资源件分门别类的以数字编号的形式统一进行保存的信息。
例如:根据图片的属性对图片进行分类并对应的生成一个XML文件,例如以颜色进行分类并对应的生成XML文件。
再例如,根据图片的大小对应的生成一个XML文件。
步骤215、将上述步骤中提取的特征通过语义映射抽象成数字表示形式,得到权限特征和敏感API信息的高维向量进行存储,并统计图片特征、XML特征以及组件特征的数量进行存储。
由于经过Python提取出的权限特征和API特征还是语义信息,为了方便机器学习分类算法进行训练,本公开步骤中将语义信息抽象成易于分析的数字表示形式。用1表示某特征出现在该样本中;0表示特征未出现。对于权限特征,例如具有某个权限特征可以用1来表示,没有某个权限特征可以用0来表示。敏感API特征也是如此,例如具有某个指令,则用1来表示,不具有某个指令,则用0来表示。
因而可以将权限特征和敏感API特征抽象成一类特征,随后按照特征字母从低到高的顺序将数字化后的特征存入数据库。最终通过一个二进制的矩阵描述样本集的特征,即高维向量,其中行表示样本,列表示特征。
对于图片特征、组件特征和XML文件特征,可以基于所统计的具体的个数,例如图片的个数,XML文件的个数以及组件的个数来存储。
步骤216、基于存储的特征数据计算权限特征、敏感API特征、图片特征、XML特征和组件特征的先验概率,并计算权限特征和敏感API特征的条件概率,从而得到权限特征和敏感API特征的后验概率。
其中,先验概率包括特征在正常程序类别下的先验概率和特征在恶意程序类别下的先验概率。条件概率也包括特征在正常程序类别下的条件概率及在恶意程序类别下的条件概率。
本公开实施例中,将正常程序样本出现的概率,即正常程序样本的数量与总的样本数量之比,视为特征在正常程序类别下的先验概率P(Y=cb),将特征在正常样本中出现的频率,即特征在正常程序样本中出现的次数与在总样本中出现的次数之比,视为该特征在正常程序类别下的条件概率P(f|Y=cb)。
将恶意程序样本出现的概率,即恶意程序样本的数量与总的样本的数量之比视为特征在恶意程序类别下的先验概率P(Y=cm),将特征在恶意程序样本中出现频率,即特征在恶意程序样本中出现的次数与特征在总的样本中出现的次数之比,作为该特征在恶意程序类别下的条件概率P(f|Y=cm)。
步骤220、计算高维向量中各个特征的权重。
在本公开步骤中,可以利用特征选择优化算法过滤权限特征和敏感API组合特征集中的无效特征,得到最佳特征子集,然后计算最佳特征子集中的每个特征在正常样本和恶意样本中出现的次数,通过信息增益值得到每个特征的权重。
具体而言,如图5所示,步骤220可以包括以下步骤:
步骤221、基于特征频率过滤不相关特征。
其中,不相关特征为对于分类结果无影响的权限特征和敏感API特征,例如权限特征中的存储权限。
本公开步骤中,利用恶意程序样本集中特征出现的特征频率与正常程序样本集中的相同特征出现的特征频率的差值,过滤掉原始程序样本集中的不相关特征。
恶意程序样本集中特征出现的特征频率可以理解为:某个特征在恶意程序样本集中出现的样本数,与恶意程序样本集中的恶意程序的样本总数目的比值;正常程序样本集中特征出现的特征频率可以理解为:某个特征在正常程序样本集中出现的样本数,与正常程序样本集中的正常程序的样本总数目的比值。
本实施例中通过下述公式(1)计算特征频率值:
Figure BDA0001896997520000081
式中,TF(fj)表示特征频率值,即恶意程序样本集中特征出现的特征频率与正常程序集中相同特征出现的特征频率的差值,
Figure BDA0001896997520000082
表示特征fj在恶意程序样本集中出现的样本数,Nmalware表示恶意程序样本集中的恶意程序的样本总数目;
Figure BDA0001896997520000083
表示特征fj在正常程序样本集中出现的样本数,Nbenign表示正常程序样本集中的正常样本的样本总数目。
特征频率值越大,表明特征fj越能够区分正常样本和恶意样本,特征频率值越小,表明特征fj在正常样本和恶意样本中出现的可能性越接近,从而越不能够区分正常样本和恶意样本。因而基于特征频率值能够去掉不相关特征。
步骤222、基于信息增益去除噪声特征。
本公开步骤中,由于噪声可能导致程序分类结果的误判断,因而利用恶意程序样本和正常程序样本的熵与特征出现条件下的条件熵的差值,剔除高维向量中的噪音。
本实施例中通过下述公式(2)计算信息增益值:
Figure BDA0001896997520000084
式中,IG(fj)表示特征fj的信息增益值,P(c0)为正常程序样本在原始程序样本集出现的概率,P(c1)为恶意程序样本在原始程序样本集中出现的概率,概率P(fj=1)是出现特征fj的样本数与原始程序样本集中的总样本数的比值,概率P(fj=0)是未出现特征fj的样本数与原始程序样本集中的总样本数的比值;P(ci|fj=1)表示特征fj出现情况下的条件概率,P(ci|fj=0)表示特征fj未出现情况下的条件概率;H(Y)表示分类模型系统的熵,H(Y|fj)表示特征fj出现条件下的分类模型系统的条件熵。
其中,信息增益的值越大,越能够反应程序所属的类别,因而能够说明不是噪声特征。反之,信息增益的值越小,越能够说明是噪声特征。
步骤223、基于χ2统计去除冗余特征。
本公开步骤中,利用特征之间一阶自由度的χ2分布值,过滤权限特征和敏感API信息中出现的冗余特征。
本实施例中具体通过下述公式(3)计算χ2值:
Figure BDA0001896997520000091
式中,CHI(fi,fj)表示特征fi和特征fj之间的χ2值;
Figure BDA0001896997520000092
为两个特征同时出现的样本数,
Figure BDA0001896997520000093
为同时未出现的样本数,
Figure BDA0001896997520000094
为特征fi出现而fj未出现的样本数,
Figure BDA0001896997520000095
为特征fj出现而fi未出现的样本数,N为总样本数。
χ2值越大,说明特征fi和特征fj之间越相似,从而可以说明其中任一特征为冗余特征。
通过上述步骤去除掉权限特征和敏感API组合特征集中的无效特征之后,得到最佳特征子集F={f1,f2,…fj,…fm}。
步骤224、生成最佳特征子集中各特征的权重系数。
本公开步骤中,特征权重为特征的信息增益值与最佳特征子集的信息增益值之比。
本实施例中通过下述公式(4)得到权重系数:
Figure BDA0001896997520000096
式中,IG(fj)为最佳特征子集中该特征fj的信息增益值,
Figure BDA0001896997520000102
表示特征fj的权重系数。
其中,特征指的是组合特征,即权限特征和敏感API特征。
步骤230、对图片特征、XML文件特征和组件特征进行回归分析。
通过对组件特征、XML文件特征和图片特征进行回归分析,得到回归方程。
具体而言,根据恶意程序中特征数量与样本概率组成坐标,形成统计散点图,通过拟合这些散点得到曲线,该曲线的数字表示形式即属于恶意程序类别的特征回归方程。
同理,根据正常程序中特征数量与样本概率组成坐标,形成统计散点图,通过拟合这些散点得到曲线,该曲线的数字表示形式即属于正常程序类别的特征回归方程。
通过回归方程,能够得到图片特征、XML特征和组件特征的条件概率,继而根据先验概率和条件概率可以得到图片特征、XML特征及组件特征的后验概率。
步骤240、分类模型生成。
利用上述步骤得到的权重系数、先验概率和条件概率,结合朴素贝叶斯分类算法,得到加权朴素贝叶斯分类模型,即本实施例的分类模型,如图6所示。
本公开步骤中,通过加权朴素贝叶斯算法可以分别得到组合特征(权限特征与敏感API特征)与组件特征、图片特征和XML文件特征在正常程序类别下的后验概率P(Y=cb|f∩fcont∩fpic∩fxml)和恶意程序类别下的后验概率P(Y=cb|f∩fcont∩fpic∩fxml)。
其中,正常程序类别下的后验概率通过下式(5)进行表示:
Figure BDA0001896997520000101
恶意程序类别下的后验概率通过下式(6)进行表示:
Figure BDA0001896997520000111
最终可得分类模型,待测程序的类别为后验概率较大的类,计算公式如下式(7)所示:
Figure BDA0001896997520000112
式中,
Figure BDA0001896997520000113
为权限和敏感API组合特征的最佳子集;
Figure BDA0001896997520000114
为组件特征、图片特征和XML文件特征在正常类别和恶意类别下的回归方程。
为验证本发明提供的检测方法的检测效果,本实施例采用安智市场上经检测的5000个正常程序和VirusShare上的5000个恶意程序作为样本集,采用10折交叉验证法进行测试,其中10折交叉验证法即将样本数据划分为10个大小相似的互斥子集,每次使用9个子集的并集作为训练集,将剩下的那1个子集作为测试集,来进行10次训练和测试,最终得到的是这10次测试结果的均值。实验结果如下:
表1
Figure BDA0001896997520000115
Figure BDA0001896997520000121
其中,加权朴素贝叶斯多特征联合检测即本发明提供的方法,基于加权朴素贝叶斯,及权限特征、敏感API特征、图片特征、XML特征及组件特征进行程序类别检测的方法。
加权朴素贝叶斯权限+敏感API特征检测,则是基于现有技术中的加权朴素贝叶斯及权限特征和敏感API特征进行程序类别检测的方法。
经典朴素贝叶斯多特征检测,则是基于现有技术中的经典朴素贝叶斯及多特征进行程序类别检测的方法。
经典朴素贝叶斯权限+敏感API特征检测,则是基于现有技术中的经典朴素贝叶斯及权限特征和敏感API特征进行程序类别检测的方法。
表1中,各性能指标的意义如下:
(1)TPR(检测率),表示是分类器(分类模型)最终分类正确的正例与实际正例的比值,TPR越大,表明分类器对正例分类效果越好。计算公式如下:
Figure BDA0001896997520000122
(2)FPR(误报率)是分类器最终分类错误的正例与实际反例的比值,FPR越大,表明分类器对反例分类效果越差。计算公式如下:
Figure BDA0001896997520000123
(3)Acc(准确率)是分类器最终所有分类正确的样例与总样例的比值,表示分类器准确分类程度,Acc越大,表明该分类器的整体分类能力越好。计算公式如下:
Figure BDA0001896997520000124
式中,TP(真正例)为真实情况为正的样例被检测为正例的个数,即检测正确的正例;FP(假正例)为真实情况为反的样例被检测为正例的个数,即检测错误的反例;FN(假反例)为真实情况为正的样例被检测为反例的个数,即分类错误的正例;TN(真反例)为真实情况为反的样例被检测为反例的个数,即检测正确的反例。
由上述表1可以看出,基于加权朴素贝叶斯的多特征联合检测方法能明显提高对恶意程序的检测率,降低对正常程序的误报率,比经典朴素贝叶斯算法利用权限和敏感API组合特征检测恶意程序的检测率提高了5.6%,误报率下降了8.4%,准确分类程度得到显著提高。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本发明难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本发明难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本发明的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本发明的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本发明。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本发明的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本发明的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于多特征的程序类别检测方法,其特征在于,包括:
提取待测程序的多个特征;
去除所述多个特征中的权限特征和敏感应用程序编程接口API特征中的无效特征,得到所述权限特征和所述敏感API特征的最佳特征子集;
计算所述最佳特征子集中特征的权重系数;
对所述多个特征中的图片特征、XML文件特征以及组件特征进行回归分析;
基于所述最佳特征子集、所述权重系数、所述回归分析的结果及预先建立的分类模型确定待测程序的类别。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
提取原始样本集中各样本的多个特征,所述多个特征包括:权限特征、敏感API特征、图片特征、XML特征及组件特征;
去除所述权限特征和所述敏感API特征中的无效特征,得到所述权限特征和所述敏感API特征的最佳特征子集;
确定所述最佳特征子集中的特征的后验概率;
计算所述最佳特征子集中的特征的权重系数;
对所述图片特征、所述XML文件特征以及所述组件特征进行回归分析,计算所述图片特征、所述XML文件特征以及所述组件特征的后验概率;
基于所述权重系数,所述最佳特征子集中的特征的后验概率、及所述图片特征、所述XML文件特征及所述组件特征的后验概率生成分类模型。
3.根据权利要求2所述的方法,其特征在于,所述提取原始样本集中各样本的多个特征,包括:
获取所述样本的安卓安装包;
从所述安卓安装包中提取权限特征、敏感API特征、图片特征、XML特征以及组件特征。
4.根据权利要求2所述的方法,其特征在于,所述原始样本集包括正常程序样本集和恶意程序样本集,所述正常程序样本集包括多个正常程序样本,所述恶意程序样本集包括多个恶意程序样本,所述去除所述权限特征和所述敏感API特征中的无效特征,得到所述权限特征和所述敏感API特征的最佳特征子集,包括:
根据所述恶意程序样本集中的特征出现的特征频率与所述正常程序样本集中的相同特征出现的特征频率的差值,去除所述权限特征和所述敏感API特征中的不相关特征。
5.根据权利要求4所述的方法,其特征在于,所述去除所述权限特征和所述敏感API特征中的无效特征,得到所述权限特征和所述敏感API特征的最佳特征子集,还包括:
根据所述恶意程序样本集中和所述正常程序样本集中的熵与特征出现条件下的条件熵的差值,去除所述权限特征和所述敏感API特征中的噪声特征。
6.根据权利要求4所述的方法,其特征在于,所述去除所述权限特征和所述敏感API特征中的无效特征,得到所述权限特征和所述敏感API特征的最佳特征子集,还包括:
根据特征之间一阶自由度的卡方分布值,过滤所述权限特征和所述敏感API特征中的冗余特征,得到所述权限特征和所述敏感API特征的最佳特征子集。
7.根据权利要求2所述的方法,其特征在于,所述计算所述最佳特征子集中特征的权重系数,包括:
计算特征的信息增益值以及所述最佳特征子集的信息增益值;
基于所述特征的信息增益值及所述最佳特征子集的信息增益值的比值确定所述最佳特征子集中的特征的权重系数。
8.根据权利要求2所述的方法,其特征在于,所述确定所述最佳特征子集中的特征的后验概率,包括:
基于提取的特征确定所述权限特征及所述敏感API特征的先验概率及条件概率;
基于所述先验概率及条件概率确定所述权限特征和所述敏感API特征的后验概率,所述后验概率包括在正常程序类别下的后验概率及在恶意程序类别下的后验概率。
9.根据权利要求2所述的方法,其特征在于,所述对所述图片特征、所述XML文件特征以及所述组件特征进行回归分析,计算所述图片特征、所述XML文件特征以及所述组件特征的后验概率,包括:
基于所述回归分析的结果确定所述图片特征、所述XML文件特征及所述组件特征的条件概率;
基于提取的特征确定所述图片特征、所述XML文件特征及所述组件特征的先验概率;
基于所述先验概率和所述条件概率计算所述图片特征、所述XML文件特征以及所述组件特征的后验概率。
10.根据权利要求1所述的方法,其特征在于,所述基于所述最佳特征子集、所述权重系数、所述回归分析的结果及预先建立的分类模型确定待测程序的类别,包括:
基于所述最佳特征子集、所述权重系数、所述回归分析的结果及预先建立的分类模型确定所述待测程序在正常程序类别下的后验概率及在恶意程序类别下的后验概率;
将所述待测程序在正常程序类别下的后验概率和在恶意程序类别下的后验概率中较大的后验概率的类别作为所述待测程序的类别。
CN201811496392.XA 2018-12-07 2018-12-07 基于多特征的程序检测方法 Active CN109784047B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811496392.XA CN109784047B (zh) 2018-12-07 2018-12-07 基于多特征的程序检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811496392.XA CN109784047B (zh) 2018-12-07 2018-12-07 基于多特征的程序检测方法

Publications (2)

Publication Number Publication Date
CN109784047A CN109784047A (zh) 2019-05-21
CN109784047B true CN109784047B (zh) 2021-03-30

Family

ID=66496110

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811496392.XA Active CN109784047B (zh) 2018-12-07 2018-12-07 基于多特征的程序检测方法

Country Status (1)

Country Link
CN (1) CN109784047B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111027065B (zh) * 2019-10-28 2023-09-08 安天科技集团股份有限公司 一种勒索病毒识别方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081655A (zh) * 2011-01-11 2011-06-01 华北电力大学 基于贝叶斯分类算法的信息检索方法
CN104778240A (zh) * 2015-04-08 2015-07-15 重庆理工大学 基于多特征融合的微博文本数据分类方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI461952B (zh) * 2012-12-26 2014-11-21 Univ Nat Taiwan Science Tech 惡意程式偵測方法與系統
CN104376262B (zh) * 2014-12-08 2018-01-09 中国科学院深圳先进技术研究院 一种基于Dalvik指令和权限组合的安卓恶意软件检测方法
CN105468977A (zh) * 2015-12-14 2016-04-06 厦门安胜网络科技有限公司 一种基于朴素贝叶斯的Android恶意软件分类方法和装置
CN105426762B (zh) * 2015-12-28 2018-08-14 重庆邮电大学 一种android应用程序恶意性的静态检测方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081655A (zh) * 2011-01-11 2011-06-01 华北电力大学 基于贝叶斯分类算法的信息检索方法
CN104778240A (zh) * 2015-04-08 2015-07-15 重庆理工大学 基于多特征融合的微博文本数据分类方法

Also Published As

Publication number Publication date
CN109784047A (zh) 2019-05-21

Similar Documents

Publication Publication Date Title
CN103473346B (zh) 一种基于应用程序编程接口的安卓重打包应用检测方法
Perez et al. You are your metadata: Identification and obfuscation of social media users using metadata information
CN109145603A (zh) 一种基于信息流的Android隐私泄露行为检测方法和技术
CN107180192A (zh) 基于多特征融合的安卓恶意应用程序检测方法和系统
US11580222B2 (en) Automated malware analysis that automatically clusters sandbox reports of similar malware samples
CN106874253A (zh) 识别敏感信息的方法及装置
CN110245714B (zh) 图像识别方法、装置及电子设备
CN111614599A (zh) 基于人工智能的webshell检测方法和装置
CN112488716B (zh) 一种异常事件检测系统
Ali Alatwi et al. Android malware detection using category-based machine learning classifiers
CN108694319B (zh) 一种恶意代码家族判定方法及装置
CN109784046B (zh) 一种恶意软件检测方法、装置与电子设备
Song et al. Permission Sensitivity‐Based Malicious Application Detection for Android
Olukoya et al. Security-oriented view of app behaviour using textual descriptions and user-granted permission requests
Du et al. A static Android malicious code detection method based on multi‐source fusion
Wolfe et al. High precision screening for Android malware with dimensionality reduction
Thiyagarajan et al. Improved real‐time permission based malware detection and clustering approach using model independent pruning
Assefa et al. Intelligent phishing website detection using deep learning
CN109784047B (zh) 基于多特征的程序检测方法
CN111966920B (zh) 舆情传播的稳定条件的预测方法、装置及设备
CN113392399A (zh) 一种恶意软件分类方法、装置、设备及介质
CN112199388A (zh) 陌电识别方法、装置、电子设备及存储介质
Atacak et al. Android malware detection using hybrid ANFIS architecture with low computational cost convolutional layers
Wang et al. Malware detection using cnn via word embedding in cloud computing infrastructure
Gao et al. Quorum chain-based malware detection in android smart devices

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
GR01 Patent grant
GR01 Patent grant