论文研究-基于Android权限信息的恶意软件检测.pdf

所需积分/C币:7 2019-07-22 20:51:19 1.37MB .PDF

Android恶意软件对手机安全造成的威胁日益严重,为了防止恶意软件对手机造成的安全威胁,提出了一种从应用程序提取权限信息的方法,以此来检测软件的恶意行为。首先,在信息提取实验中,提取应用程序自身的权限信息和应用程序间具有权限提升威胁的信息,并对该信息进行统计分析,分别获得恶意软件和良性软件的差异和规律;其次,在检测实验中,根据提取实验的结果,利用机器学习和数据挖掘技术对应用软件进行分类,实现对恶意软件的静态检测。该方法能有效地对恶意软件进行预判断,达到检测的目的。实验结果表明,所提出的权限信息提取方法能较大地提高检测恶意软件的准确率。
3038· 计算机应用研究 第32卷 更新了当今流行的 Android恶意软件的样本。样本类别包括 getlntentList()/获取 Intent标签的列表 隐私窃取、资费消耗及恶意扣费、后台下载应用程序、修改系统 if exported Label! false and len( intentList)!=0 get Exporled Feature()〃获取权限提升特征值 配置、包含恶意链接等。良性样木来源为 Googleplay手机应用 if exported Feature ==true 商店,其中包括社交类、新闻类、办公类、电商类、影视娱乐类、 exportedNum-=1//权限提升威胁计数器 旅游类等。实验中将样本分为两组,分别为训练样本集合和测 试样本集合。其中训练集合有样本256个,包含恶意样本131 通过此函数检测每个组件是否存在权限提升特征cx 个,良性样本115个;测试集合有样本201个,包含恶意样本 tedFeature,若存在则让计数器 exportedNun自加1。其中计数 122个,良性样本79个。该实验步骤分以下三步进行 器 exportedNum为全局变量,统计该应用程序中具有权限提升 a)将k样本文件解压后,得到 AndroidManifest.xml的原威胁的组件个数。为了公平地衡量一个应用程序的权限提升 始二进制格式文件,使用 AXMlPrinter2.jar对文件进行反编威胁程度,本文提!通过计算权限提升比率 exportedRate来 译,得到可读数据。 衡量应用程序的威胁程度。权限提比率 exported Rate的计算 b)根据权限特征提取方案,编写 Python脚本对反编泽后方法如式(1)(2)所示,其中 componcntNun是该应用程序的组 的 AndroidManifest. xml文件进行批量数据读取,利用xml.dom件总数。要检测的组件类型 component包括 Android的四大组 对关键节点进行权限特征的提取。 件,即 activity、 service、 recelver和 provider c)将提取到的权限特征生成arf格式的数据文件,将该文 exportedRate( component)=exporledNum 件导入Weka进行数据分析和统计。 3.2程序自身权限信息的提取 component ei activity, service, Receiver, provider 通过上述方法分别对恶意样本和良性样本中的每个应用 编写 Python脚本文件 getgoogle pms.py,批量自动获取官 程序进行权限提升的特征提取,提取结果如表1所示。从表1 方权限列表,牛成有序列表 googlePmsList存入本地文件可以看出,除 provider组件外,其他组件中恶意软件的权限提 googlePms. txt getSoftwarePms.py对每个样本的权限进行遍升率的数值都高于良性软件,其中组件acti是权限提升的 历,批量获取样本的所有权限特征信息,将得到的程序中所声 主要组件。 明的权限映射到有序列表 googlePmsList,生成样本权限列表 表1权限提升攻击比率(Mal= Malware,Ben= Benign,lvcr= Average) softEns list,如程序1所示。映射过程是:先声明与 actvity servIce receIver novice googlel'msList长度相等且初值为全0的 softl'mslist;然后遍历 exported exported 样本中的用户权限,若找到与 googlepmslist对应的权限元素 Mal Bel. Mal. Ben. Mal. Bell. M. bel 0.nn9 0 就获取该元素在 googlepmsList中的索引号 indexNum:接着在 0 softens list屮索引号为 pinDex的位置将数值置1,若搜不到 0. C.5270.0840.0250.3010.2850 0 匹配的权限,则全局变量 third Part Pms count自加1,表示引用了 第三方权限的数量。 程序1获取样本权限列表伪代码 06 soft pmslist=[O]* googleP'msCounV//初始化列表 hirdPartPms count=0/第三方权限数量 node valt ge P /获取权限 if node value in googlePms gleams. index( node value)//获取索引 图3良性软件权限使用Tpl0 third parAms cou 12 0.8 根据权限列表的提取结果,得到良性软件和恶意软件的统 0.6 计信息。图3说明了良性软件的权限更多地分布在与性能优 04 化相关的功能上,如 CHANGE_ WIFI STATE、 GET TASK READ_LOGS等。而图4说明了恶意软件的权限更多地分布 NEEWFY 在与隐私相关的功能上,如READ_SMS、READ_ CONTACT CAIⅠPION等。此统计结果进一步说明∫在对权限声明的 ACCESS COARS 选择上,恶意软件与良性软件有着不同的側重点。 图4恶意软件权限使用Top10 3.3程序之间权限提升信息的提取 4恶意软件检测实验 根据权限提升攻击模型,该模型对每个应用程序中每 个组件进行权限提升的逻辑检测。对每个组件进行检测,函数 实验在OSX10.9.3、CPU为 Inter core i5、RAM为4GHz 如程序2所示。 的操作系统上执行。为了保证生成模型的准确性不至于出现 程序2权限提升检测函数伪代码 过拟合的现象,有必要采用10折交叉驗证来评估模型。将 if! permission i 数据集分成10份,轮流将其屮9份作为训练数据,1份作为测 tExportedLabel()/获取 exported标签的布尔值 试数据进行实验,每次实验得出相应的正确率。而10次结果 第10期 周裕娟,等:基于 Android权限信息的恶意软件检测 3039 的正确率平均值作为对算法精确度的估计,这样有利于提高模预测能力越差。同理,AUC值越大,表示分类器作越好。 型的准确度。实验中先将ar文件导入Weka进行数据分析和 将实验结果中每个模型的恶意样本和良性样本的(FPR 分类建模,得到实验结果;然后将得到的实验结果与 Aswini 5 TPR)坐标绘制在ROC空间,生成该模型的ROC曲线,如图5 方案对比,分析本方案的可行性。 和6所示。从图中可以看出,RF模型曲线相比其他的模型曲 4.1实验分析 线更趋向左上角,表明了RF分类模型对恶意样木和良性样木 实验中训练样本256个,其中包含恶意软件131个,良性的判别能力均优于共他的分类模型。从实验结果表2中AUC 软件15个;测试样本共201个,其中恶意样本122个,良性样的数据可以直观地看出,RF模型的ALC值均高丁其他分类 本79个。通过NB( Naive Bayes)、IBK5、 ada boost mi、J48,RF模型。 ( Random Forest)五种分类算法对样本进行训练和测试。因为 09 本实验中对样本的训练采用的是10折交叉验证,生成的模型 0.8 0. 已具有测试效果。但为了测试模型的稳定性,将测试样本通过 06 0.5 0.4 对生成的模型进行测试。其中测试样木与训练样本使用不同 0.3 00000000 0. 的数据,数据集相互独立。实验结果如表2所示,结果通过准 0.1 0.1 确率、FI- Measure值、ROC曲线和AUC值进行分析。 02040.60.81 0.20.40.60.8 图5恶意应用程序ROC曲线图6良性应用程序ROC曲线 表2分类训练实验结果 评价方法 4.2实验对比 样本类型 Aceurate/n AL(average 本方案与 Aswini方案的不同点是对权限信息的提取方法 洲练测试训练测试训练测试 和提取内容:a)提取方法, aswini方案通过文本分类技术和互 86.1876.530.7670.8620.8990.948 信息技术的方法来确定特征,得到恶意软件和良性软件样本中 1BK-s 88.6291.330.9110.886 10.94 权限代码的差异,而本文方案通过对权限列表的提取,并通过 Adaboost m82.9369.390.690.8290.8920.92 分类模型来确定组合关系和权值;b)提取内容, Aswin方案仅 86.1889.280.8930.8610.8710.9 对程序自身的权限信息进行提取分析,而本文方案除了提取程 RF(40)sed493.9092.860.9280.9390.9740.975 序白身的权限信息还对程序之间具有权限提升威胁的权限特 定义1 F-Measure又称Fsre,是信息检索领域的一个征信息进行了提取。 评价标准,通常作为评价分类器好坏的指标之一,综合反映整 木方案与 Aswin方案的对比结果如表3所小。横向比较 体的性能,如式(3)所示。 中,木方案在各个分类模型下的各项结果均优于 aswini方案; Fe PR (3) 纵向比较中,RF模型的精确度最高,为93.90%,相比As 6-P+R 方案提高了15.13%,F值提高了14.00%。因此证明了本文 其中:3是参数;P是精确度( precision);R是召国率(reca).提出的权限提取方案具有一定的有效性和可行性,说明∫程序 P、R这两个值相互制约,在一定条件下会出现矛盾的情况。 间的权限提升特征也是检测恶意软件的关键因素。 β=1时,就是最常见的F1- Measure,如式(4)所小 表3 Aswin方案与本文方案实验结果对比 P+R 特征提取方法 定义2ROC曲线3指受试者工作特征曲线( receiver 评价方法 Aswini方案(MI) 本文方案 ccurate/% /l operating characteristic curve),是反映敏感性和特异性连续变 accurate/% FI 量的综合指标,是用构图法揭示敏感性和特异性的相互关系 71.42 86.18 0.767 IBK-S 88.62 它通过将连续变量设定出多个不同的临界值,从而计算出·系 Adaboost mi 0.808 82.93 列敏感性和特异性,再以敏感性为纵坐标、(I-持异性)为横坐 标绘制成曲线。曲线下面积AUC值越大,诊断准确性越高。 74.650.76386.180.893 RF(40Se481.56 0.814 0.928 在ROC曲线上,最靠近坐标图左上方的点为敏感性和特异性 均较高的临界值。 结束语 1)准确度纵向比较中,RF多决策树模型训练实验的准 确率为93.90%,在这五个分类器中准确度最高;横向比较中, 本文方案提高了恶意软件检测的准确率,并且通过分析结 RF模型测试实验的准确率为92.86%,与训练准确率较为接果可知,RF分类模型对 android的权限信息的分析具有一定 近,表明了此模型在对未知数据进行检测时发生故障的可能性的优势。在未来工作的静态检测中,将根据本文方案结合RF 较低,而其他模型的训练准确率和测试准确率都差距较大,在分类器输岀的模型结果作为恶意软件的检测依据。 对未知数据进行检测时难免会造成误判。 由于检测恶意软件的方法有静态检测和动态检测,而本文 2)門值由定义1可知,F绦合反映∫分类器的整体性存在的不足是仅通过静态检测对应用软件的权限特征进行∫ 能。通过表2的观察可知,分类结果中F的F值较高,因此初步的分析和检测,对忐意软件的检测范围还不够全面,所以 该分类器的整体性能相对较好。 在未來工作中将对动态检测过行硏究,使用静态检测与动态检 3)ROC曲线与AC值由定义2可知,曲线越靠近左上测相结合的方案对恶意软件进行检测,提高检测恶意软件的准 角,表示该模型对样本的预测能力越好;反之,则表示该模型的确率。 3040· 计算机应用研究 第32卷 参考文献 [9 Su Mingyang, Chang Wenchuan. Permission-based malware detection [1 Chebyshev V, Unuchek R. Mobile malware evolution: 2013[EB/ mechanisims for smart phones[C]//Pr c of International Conference Olj.(2014-02-24).http://www.securelist.co-m/en/analysis/ on Information Networking. 2014: 449-452 204792326/Mobile Malware_ Evolution_ 2013 [IU] Felt A P, Chin E, Hanna S, et al. Android permissions demystified [2 Enck W, Ongtang M, Meda-Niel P. On lightweight mobile phone ap- [C//Proc of the 18 th ACM Conference on Computer and Communi plic at ion certification[ C]//Proc of the 16th ACM Conference ol cations Security. 2011: 627-638 Computer and Communications Security. New York: ACM Press, L11 Bartel A, Klein J, Monperrus M, et al. Static analysis for extracting 2009:235-245 permission checks of a large scale framework: the challenges and so- [3 Nauman M, Khan S, Zhang Xinwen. Apex: extending Android per- lutions for analyzing Android[ J]. IEEE Trans on Software Engi mission model and enforcement with user-defined runtime constraint peerIng,2014,40(6):617-632 「C]/Tmκ of the 5th ACM Symposium on Information, Computer[12]陈伟,邱道尨.一种增强的 Android安全机制模型[J].无线通 and Communications Security. 2010: 328-332 信技术,2014,23(1):37-41 [4. Gloden w, Harang R. Rapid permissions-based detection and analy[13]刘昌平,范明钰,王光卫,等, Android手机的轻量级访问控削[J sis of mobile malware using random decision forests C//Proc of 计算机应用研究,2010,27(7):2611-2613,2628 IEEE Military Communicat ions Conference. [S IEEE Press [14 Tang Wei, Jin Guang, He Jiaming, et al. Extending Android security 2013:980985 enforcement with a security distance model[ C]//Proc of Internation- A M, Vinod P. Droid permission miner: mining prominent al Conference on Internet Technology and Applications 2011: 1-4 permissions for Android malware analysis[ C]//Proc of the 5th Inter [15Mila.MobileMalwareminidump[eb/ol].http://contagiomini national Conference on the Applications of Digital Information and Web Technologies. 2014. 81-86 dump. blogspot. com [16 Google. Developers-develop-reference manifest. permission [EB/ [6 Moonsamy V, Rong Jia, Liu Shaowu. Mining permission patterns for contrasting clean and malicious Android applications LJ. Future Ol-.http://developer.androidcom/reference/android/manifest Generation Computer Systems, 2014. 36: 122-132 peRMiSsiOn.htIn 7]沈才樑,科萍,贪立峰,等 Android权限提升漏洞攻击的检测l7 Rodriguez JL, Perez A, Lozano J A. Sensitivity analysis of k:d 「J1.电信科学,2012(5):15-19 eross validation in prediction error estimation J 1. Pattern Analysis [8 Wu Dongjie, Mao CH, Wei T E, et al. Droid Mat: Android malware and Machine Intelligence, 2010, 32(3): 569-575 detection through manifest and API calls tracing[ C]//Proc of the 7th [18 Fawcett T. An introduction to ROC analysis[ J]. Pattern Recogni Asia Joint Conference on Information Security 2012: 62-69 tion letters,2006,27(8):86l-874. (上接第3008页) [11 OWASP OW ASP_ WebScarab_project[ EB/OL.(2013)[ 2014-03 L2」刘仁千,张玉中,张超永.基于源代码的软件安全性测试研究LJ」 26.https://www.owasp.org/index.php/'category:Owaspweb- 计算机安全,2013(8):32-35. [3 Halfond W G J, Orso A, Manolios P. WASP: protecting Web appl [ 12OWASP. OWASP top ten for 2013 L EB/OL.(2013)[2014-03 ations using positive tainting and syntax-aware evaluation[J.IEEE 26].https://www.owasp.org/index.php/top_10_2013-top_10 Trans on Software Engineering, 2008, 34(1): 65-81 [13 Wikiperlia. SQL injection introduction [EB/OL].(2014-01-18 [4 Balzarotti D, Cova M, Felmetsger V, et al. Saner: comp-osing static L2014-03-26. hIp: //en. wikipedia. ory/wiki/SQI_injeel and dynamic analysis to validate sanitization in Web application [14 Wikipedia. Cross-site scripting introduction [EB/OL..(2014-01 [C]//Proc of IEEE Symposium on Security and Privacy. 2008: 387 3)[2014-03-26. htlp: //er. wikipedia. ory/wiki/ CrIss-site stripling [5 Cook WR, Rai S. Safe query objects: statically typed objects as re- [15] Stuttard D, Pinto M. The Web Application hackers handbook find- motely executable queries C]// Proc of the 27 th ACM/IEEE Interna ing and exploiting security flaws[M]..SI]: Wiley, 2011 tional Conference on Software Engineering. 2005: 97-106 [16]OWASP. SQL injection prevention cheat sheet EB/OL].(2013 L6」阎旭.C+十代码缺陷尬测系统的研究与没;LD」.大连:大连理 工大学,2011 [2014-03-26].https://www.owasporg/index.php/sql_injectioN Pre-vention Cheat Sheet [7 Kieyzun A, Guo PJ, Jayaraman K, et al. Automatic creation of SQL injection and cross-site scripting attacks[cl//Proe of the 31st ACM/ L17] OWASP. Cross site scripting prevention cheat sheet EB/OL] IEEE International Conference on Software Engineering. 2009:199- (2013)2014-03-261.https://www.owasp.org/index.php/xs 209 Cross_ Site_Scripting )_Prevention_Cheat_Sheet r8 Beizer B. black-box testing: lechniques for functional testing of soft. 18 OWASP. OWASP broken Web applications projeet I EB/OL T are and systems[ M.[.l.: Wiley, 1995 (2013)[2014-03-15].https://www.owasp.org/index.php [9 Test ing Securily Paros proxy[ EB/OL].( 2010)[ 2014-03-26]hl- OWASP_Broken_ Web_Applications_Project p://www.testingsecurity.com/paros_proxy [19 OWASP. OWASP broken Web applications bug report [ EB/OL 10 SQLmap SQLmap introduction EB/OL].( 2013)[2014-03-261 (2014)[2014-03-26].http://sourceforge.net/p/owaspbwa/tic- http://sqlm

...展开详情
img

关注 私信 TA的资源

上传资源赚积分,得勋章
    最新推荐