Android恶意应用智能化分析方法研究综述.pdf
《Android恶意应用智能化分析方法研究综述.pdf》由会员分享,可在线阅读,更多相关《Android恶意应用智能化分析方法研究综述.pdf(9页珍藏版)》请在咨信网上搜索。
1、第 22卷 第 10期2023年 10月Vol.22 No.10Oct.2023软 件 导 刊Software GuideAndroid恶意应用智能化分析方法研究综述张驰,汤俊伟,何儒汉,徐微,黄晋(1.纺织服装智能化湖北省工程研究中心;2.湖北省服装信息化工程技术研究中心;3.武汉纺织大学 计算机与人工智能学院,湖北 武汉 430200)摘要:Android系统是目前市场占有率最高的开源移动端操作系统,但系统的开源性使其成为了恶意软件的主要攻击目标。恶意软件严重威胁国家安全和个人隐私,且规避行为愈发隐蔽,通常难以被检测分析。为此,首先总结Android恶意应用检测使用静态、动态分析方法提取的
2、恶意应用特征类型;然后从传统机器学习、深度学习方面,梳理分析Android恶意应用检测方法,并从对抗攻击、防护层面归纳与Android恶意应用检测攻防相关的工作;接下来,在共同数据集上对Android恶意应用智能化分析方法进行比较;最后,从特征、数据集、分析模型等方面讨论与总结未来Android恶意应用智能化分析方法的研究方向和挑战,以期为其发展提供参考与借鉴。关键词:Android恶意应用;恶意应用检测;机器学习;深度学习;对抗攻击DOI:10.11907/rjdk.222301开 放 科 学(资 源 服 务)标 识 码(OSID):中图分类号:TP311.56 文献标识码:A文章编号:16
3、72-7800(2023)010-0244-09A Survey of Intelligent Analysis Methods for Android MalwareZHANG Chi,TANG Junwei,HE Ruhan,XU Wei,HUANG Jin(1.Hubei Provincial Engineering Research Center for Intelligent Textile and Fashion;2.Engineering Research Center of Hubei Province for Clothing Information;3.College of
4、 Computer Science and Artificial Intelligence,Wuhan Textile University,Wuhan 430200,China)Abstract:Android system is currently the open-source mobile operating system with the highest market share,but its open-source nature makes it the main target of malicious software attacks.Malware poses a serio
5、us threat to national security and personal privacy,and its evasion behavior is becoming increasingly covert,making it often difficult to detect and analyze.To this end,first summarize the types of malicious application features extracted using static and dynamic analysis methods for Android malicio
6、us application detection;Then,from the perspectives of traditional machine learning and deep learning,summarize and analyze Android malicious application detection methods,and summarize the work related to Android malicious application detection and defense from the perspectives of adversarial attac
7、ks and protection;Next,compare the intelligent analysis methods for Android malicious applications on a common dataset;Finally,the research directions and challenges of intelligent analysis methods for Android malicious applications in the future are discussed and summarized from aspects such as fea
8、tures,datasets,and analysis models,in order to provide reference for their development.Key Words:Android malicious application;malware detection;machine learning;deep learning;adversarial attack收稿日期:2022-11-03基金项目:湖北省教育厅科学技术研究计划中青年人才项目(Q20221709);纺织服装智能化湖北省工程研究中心开放课题(2022HBITF04);武汉纺织大学校基金项目(2022060
9、9)作者简介:张驰(1998-),男,CCF会员,武汉纺织大学计算机与人工智能学院硕士研究生,研究方向为移动安全、人工智能;汤俊伟(1990-),男,博士,CCF会员,武汉纺织大学计算机与人工智能学院讲师,研究方向为移动安全、人工智能安全;何儒汉(1974-),男,博士,CCF会员,武汉纺织大学计算机与人工智能学院教授、硕士生导师,研究方向为人工智能、多媒体检索等;徐微(1995-),男,武汉纺织大学计算机与人工智能学院硕士研究生,研究方向为移动安全、人工智能;黄晋(1982-),男,博士,CCF会员,武汉纺织大学计算机与人工智能学院讲师,研究方向为人工智能、医学图像处理等。本文通讯作者:汤俊
10、伟。第 10 期张驰,汤俊伟,何儒汉,等:Android恶意应用智能化分析方法研究综述0 引言智能手机在日常生活的参与度越来越高,使用率迅速增加,大多数用户使用社交、游戏、银行、教育等手机应用程序,包含许多敏感、有价值的数据,例如联系人信息、照片、银行信息、密码等。根据 Statcounter 全球统计数据显示,2022年10月全球移动操作系统市场份额Android占有率为71.6%。目前,Android成为了受恶意软件影响最大的移动平台,托管第三方应用程序的开放架构和应用程序编程接口(API)1,更是导致各种Android恶意软件产品的爆炸性增长2。这些恶意软件执行恶意活动,给用户带来了包括
11、资费消耗、隐私窃取、远程控制等巨大危害。为此,本文将工作分为以下5点:总结Android恶意应用检测使用静态、动态分析方法提取的恶意应用特征类型;基于机器学习技术分析Android恶意应用研究;分析、概述Android恶意应用分析模型的攻击方法,从对抗攻击、防护层面归纳与Android恶意应用检测攻防相关的工作;在共同数据集上,比较分析Android恶意应用的传统机器学习和深度学习方法,并归纳对抗分析的研究现状;讨论 Android 恶意应用智能化分析方法领域的发展趋势,从特征、数据集、分析模型方面对未来研究方向和挑战进行总结。1 Android恶意应用分析方法特征类型1.1静态分析特征静态分
12、析不涉及代码执行,是对应用程序包进行分析的过程,如图1所示。静态分析过程主要关注Android应用程序包(APK)中的清单文件和源代码文件(class.dex)。清单文件包含有关权限、硬件组件的信息及有关包的其他详细信息。源代码文件包含所有编程代码,例如 API 信息、Intent、系统事件等,还可从应用商店中提取元数据信息进行静态分析,以下示例为静态分析特征及相关描述。1.1.1权限应用程序需请求各自的特定权限来执行代码,使得应用程序在未经用户同意和批准情况下,将无法执行或运行任何后台活动3-5。1.1.2Intents该数据用于组件活动、services 等之间进行通信的消息对象,执行需要
13、系统干预或在其他操作开始时使用,通常用于分析应用程序的恶意行为3。1.1.3硬件组件例如,GPS、麦克风、等可能会被恶意软件应用程序使用,研究和分析这些活动有助于识别恶意软件应用程序3,6。1.1.4API calls将apk文件中dex文件转换成Java文件,从中提取API调用数据进行静态分析3,5-8。1.1.5数据流与函数调用图从classes.dex文件中提取源代码,创建语句依赖关系图,假设语句为节点,控制流为节点路径,将一种恶意代码模式转换为图。创建数据流图和与函数调用相关的图来设计恶意应用检测方法9-10。1.1.6污点分析污点分析是检测来自源和接收器中敏感数据流的方法11-12。
14、1.1.7操作码(opcode)/URL使用通过反汇编得到的dalvik字节码中的操作码进行分析,例如使用Java代码中的特定字符串测试、分析网络流量13-14。1.1.8Java字节码/APK-API图像将Java字节码转换为图像用于检测,将源代码中的对象和类,根据清单文件的有关权限进行分析或将APK文件的字节码转换为图像15,使用机器学习对图像进行分类16。1.1.9系统事件从API获取系统服务(使应用程序与系统交互)事件,作为分析特征17-18。1.1.10元数据信息Android应用在应用商店的信息,例如APK名称、开发者信息、评分、评论等,可能有助于分类应用3,6。1.2动态分析特征
15、动态分析涉及代码执行与观察,需要一个隔离环境来运行应用程序并实时观察信息3,19,相较于静态分析更复杂,需要一些资源和技术组合来观察并得出结论20,主要将应用程序安装到沙箱或虚拟机中模拟用户触发行为,运行应用程序,并记录监控模拟运行期间行为。以下为用于动态分析的主要特征及相关描述,图2为动态分析过程。APK文件Class.dexAndroidManifest.xmlAPI CallsOPCodeCFG.PermissionIntents.应用元数据应用名称、开发者信息、评分、评论、.静态分析特征 Fig.1Process of static analysis图1静态分析过程 2452023 年
16、软 件 导 刊1.2.1系统调用通过收集系统调用日志,使用系统调用分析检测恶意活动。1.2.2信息流在污点分析情况下观察源和目的地。在网络流量分析中,分析数据包大小、类型、进出的频率等参数12。1.2.3函数调用使用 API 框架动态监测函数调用情况,跟踪使用参数,重建函数调用序列用于分析3。1.2.4依赖图为特定的敏感代码片断创建控制流图,使用该图对应用程序进行分析分类21。1.2.5硬件组件分析运行的硬件组件、系统参数,例如电池数据3、内存的利用率、应用程序内存等。1.2.6API和权限应用程序执行时使用的权限和调用的API22-23。1.2.7通信短信、电话、URLs、WiFi、GPS和
17、蓝牙能连接系统与外部实体,可作为单一或多个因素的组合进行观察,以达到检测目的23-24。1.2.8代码注入在源代码中注入特殊代码,运行时执行该代码跟踪目标API,并为分析过程创建日志以检测恶意行为25。2 基于机器学习的Android恶意应用检测2.1传统机器学习动态分析的低代码覆盖率和低效率,限制了基于动态特征的恶意应用检测方法的大规模部署26。因此,研究者开始利用静态分析和机器学习提出大量的检测方法27-29。机器学习是在恶意应用检测过程中应用程序分类技术,包括训练和测试30两个主要模块。其中,在训练模块从特征集中学习良性和恶意应用程序的行为;在测试模块中对新的应用程序进行相应分类31,测
18、试算法准确性。现有方法已探索了丰富的静态特征21,32-33,根据这些特征可构建基于各种机器学习算法的检测模型,如表 1所示。Rana等28比较各种机器学习算法在恶意应用检测领域情况下的性能发现,支持向量机(Support Vector Machine,SVM)、随机森林(Random Forest,RF)和 K 最邻近(K-NearestNeighbo,KNN)相较于其他算法表现良好,准确率超过 90%。Kumar等34使用机器学习比较各种算法的提取结果,发现SVM表现更好,准确率超过95%。Table 1Investigation results of traditional machin
19、e learning for Android malicious application detection表1传统机器学习进行Android恶意应用检测的调查结果研究者Kumar等34Rana等28Sun等27Cai等4Imtiaz等8数据集DrebinDrebinDrebinVirusShareAndroZooDrebinAMDCICInvesAndMal2019评价指标/%RecallAccuracyPrecisionRecallF1-scoreAccuracyPrecisionRecallAccuracyPrecisionRecallF1-scoreAccuracyPrecisionR
20、ecallF1-scoreSVM95.0090.7491.0091.0091.0095.6097.4590.0896.9297.0696.9396.98-DT-91.7888.0094.0091.00-90.5090.6090.5090.60NB90.5053.6052.0092.0066.0094.3195.7192.15-62.0080.9062.0063.40LR93.0080.9484.0075.0080.00-96.6797.1396.1596.64-RF-94.3394.0095.0094.0098.9099.3895.83-KNN92.0090.4789.0092.0091.00
21、90.1194.6184.4496.9296.7597.2396.99-MLP-87.5491.0083.0087.00-96.5096.3396.9596.6490.5090.6090.5090.60日志文件日志分析信息流硬件组件依赖图系统调用跟踪检查源数据网络日志电池状态CPU状态内存状态.将已知恶意应用的可疑代码生成CFG在Android设备中执行应用程序与其他应用程序进行匹配,检测同类型代码Activity使用出入数据流比较敏感活动跟踪网络系统调用跟踪 Fig.2Process of dynamic analysis图2动态分析过程 246第 10 期张驰,汤俊伟,何儒汉,等:Andr
22、oid恶意应用智能化分析方法研究综述针对特征间的相关性及特征权重的计算,Cai等4采用静态分析方法,从 APK 文件中提取 8 个类别的原始特征,使用信息增益(Information Gain,IG)选择一定数量的最重要特征,通过机器学习模型计算每个选定特征的初始权重并使用权重映射函数将初始权重映射到最终权重,最后使用差分进化(Different Evolution,DE)算法联合优化权重,映射函数和分类器的参数,在 Drebin28、AMD35上均取得96%以上的精确率。此外,Chawla等36提出一种基于信号处理和机器学习的方法,利用嵌入式设备的电磁发射来远程检测设备上运行的恶意应用程序,
23、开发了基于快速傅里叶变换的特征提取方法,使用SVM、RF模型检测恶意应用。Taheri等37使用汉明距离寻找恶意样本间的相似性,提出第一最近邻、所有最近邻、加权所有最近邻和基于K-medoid的最近邻4种恶意应用检测方法,在Drebin等3个数据集上选取API、Intent和Permission特征进行实验,结果表明算法的准确率均超过90%。2.2基于深度学习深度学习在图像分析、神经机器翻译及其他领域的突出贡献,为许多最先进、基于人工智能的应用奠定了基础38。目前,各种深度学习结构已应用于Android恶意应用的检测或分类,并取得了良好的效果,恶意应用检测深度学习体系结构如图3所示。由图3可见
24、,该方法相较于传统机器学习方法,在Android恶意应用分析领域的应用中具有以下优点:深度学习擅长学习应用程序中更复杂模式的高级抽象表示38;深度学习能自动学习潜在表示,具有更强的泛化能力,极大减轻了研究者描述Android应用程序特征时繁琐、主观、易出错的特征工程任务15,39-40;深度学习提供了针对不同任务定制特定结构的灵活性。例如,可使用带有 词 嵌 入 包 的 长 短 期 记 忆(Long Short-Term Memory,LSTM)层,将Android权限序列编码成特征,然后将提取的特征通过非线性激活函数送入激活层全连接层进行分类17。Android 应用的原始特征可直接输入深度
25、学习模型中,学习高级语义特征表示。一方面可通过反编译从Android应用中提取操作码序列,采用深度学习序列数据分类技术处理原始操作码序列,从而实现深度神经网络自动学习高级语义特征表示40;另一方面通过反编译应用程序提取其中的classes.dex字节码,受自然语言处理(Natural Language Processing,NLP)或图像分类技术的启发,使用编码技术将classes.dex字节码编码后的图像送入深度神经模型自动提取特征和学习15。表2为使用深度神经网络模型进行Android恶意应用检测或分类的调查研究,展示了每项研究的关键点和差异。Table 2Investigation re
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Android 恶意 应用 智能化 分析 方法 研究 综述
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【自信****多点】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【自信****多点】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。