Android恶意软件检测方法分析
- 格式:doc
- 大小:19.53 KB
- 文档页数:9
智能检测apk的原理
智能检测APK的原理主要包括以下几个方面:
1. 静态分析:静态分析是对APK文件进行解析,提取其中的关键信息,如文件结构、权限、代码逻辑等。
通过分析APK的文件名、权限申请、API调用、Manifest 文件等,可以判断APK的行为是否可疑或恶意。
静态分析可以快速检测APK的恶意行为,但无法检测动态生成的恶意行为。
2. 动态分析:动态分析是在实际环境中执行APK文件,并监测其行为。
通过模拟器、虚拟机或真实设备等执行APK文件,并观察其运行过程中的网络通信、系统调用、文件操作等行为,从而确定APK的恶意性质。
动态分析可以检测动态生成的恶意行为,但相对静态分析来说更加耗时和资源消耗。
3. 机器学习:使用机器学习算法对APK文件进行分类和标记。
通过训练算法使用已知恶意和正常APK样本,建立恶意APK文件的模型,并根据模型对新的APK文件进行预测。
机器学习可以辅助静态和动态分析,提高检测准确率。
4. 行为分析:对APK文件的行为进行分析,比如检测是否存在隐私泄露、恶意代码执行等。
行为分析可以从APK的行为特征中判断是否有恶意行为。
综上所述,智能检测APK的原理是通过静态和动态分析APK文件,使用机器学习算法和行为分析等方法,从而确定APK文件是否具有恶意行为。
恶意代码检测与分析恶意代码是指那些被设计用来对计算机系统或网络进行破坏、入侵或传播的代码。
恶意代码的目的可以是窃取敏感信息、破坏系统功能、操纵系统行为或传播自身。
恶意代码种类繁多,包括病毒、蠕虫、木马、间谍软件、广告软件等。
为了确保计算机系统和网络的安全,恶意代码的检测与分析变得至关重要。
下面将介绍恶意代码检测与分析的方法和技术。
一、恶意代码检测1.病毒扫描病毒扫描是一种最常见的恶意代码检测方法。
它通过对文件和系统进行扫描,寻找已知的病毒特征。
病毒特征是一些已知的病毒代码片段、文件名或行为模式。
如果扫描发现了这些特征,就会认定文件或系统受到感染。
2.行为分析行为分析是一种基于恶意代码的行为模式进行检测的方法。
它监视软件程序的运行过程,分析其行为模式是否符合恶意代码的行为。
例如,如果一个程序试图修改系统文件或窃取用户信息,就可能是恶意代码。
3.网络流量分析恶意代码在传播和执行时通常会通过网络进行通信。
网络流量分析可以通过监视网络通信,检测出异常流量模式或恶意行为。
例如,如果一个计算机在短时间内向大量IP地址发送数据包,就可能是一个僵尸网络的一部分。
二、恶意代码分析恶意代码分析是对恶意代码进行深入分析和理解的过程,目的是找出其行为、特征和传播方式,从而提供有效的防御措施。
1.静态分析静态分析是对恶意代码进行静态扫描,不需要实际运行代码。
静态分析可以通过对代码的反汇编、符号执行和代码模式匹配等技术来获取恶意代码的行为和特征。
2.动态分析动态分析是在虚拟环境中运行恶意代码,并监视其行为模式和系统调用。
动态分析通常通过采集恶意代码的运行数据、行为模式和输入输出参数来分析恶意代码的特征和目的。
3.持续监测总结:恶意代码检测与分析是确保计算机系统和网络安全的重要环节。
通过病毒扫描、行为分析和网络流量分析等方法可以及时检测恶意代码。
静态分析和动态分析可以深入理解恶意代码的行为和特征,从而提供有效的防御措施。
持续监测可以保持对恶意代码的及时识别和应对。
定孑科■执2019年第32卷第6期Electronic Sci.&Tech./Jun.15,2019基于An droid的手机恶意代码检测与防护技术叶子,李若凡(哈尔滨理工大学软件与微电子学院,黑龙江哈尔滨150036)摘要随着通信技术以及移动终端的发展,Andoid系统由于其本身的开源性,滋生了大量的恶意代码。
为了满足Andoid手机用户的安全需求,文中基于Andoid,采用SVM机器学习思想,构建了恶意代码检测模型,并开发了一套手机恶意代码检测与防护系统,可以对其进行快速检测和深度检测$系统经Android手机测试结果表明,其具有较好的检测精度以及较低的恶意代码漏报率。
关键词手机安全'AndoiC;恶意代码检测;SVM;深度检测中图分类号TP311文献标识码A文章编号1007-7820(2019)06-054-04doi:10.16180/kO imnl007-7820.2019.06.011Malicious Code Detection and Protection Technology of Mobile Phone Basee on AndroiUYE Zi,LI Ruofan(School of SoSoao and Microelectronics,Harbin University of Science and Technology,Harbin150036,China) Abstract With the development of modern c ommunication mchnologa and the development of mobile terminal, Andoid system breeding a lot of malicious code,due to its own open souoo.In order to satOfy the requirement of the modes mobile secure,a professional malicious code detection model based on SVM was designed in this paper,realizing a malicious code detection and protection system.The system had been tested by Andoid mobile phone,which pooecd)d b)t od)tctcon accuoacsand eoweaes)n)gatce)oat oemaecccouscod).Keyworls mobile phone secure;Andoid;malicious code detection;SVM;depth detection随着无线通信、移动互联网的发展与融合,手机移动终端飞速发展,智能手机、智能移动终端在人们日常生活、工作中成为必需品[1-2]o在多种移动设备操作系统的竞争中,AndoO平台凭借其优越的性能脱颖而出,成为了最热门的手机系统之一[3-6]%但由于AndoO的开源、开放的特性,基于传统PC、网络服务器传播的计算机病毒、恶意代码开始向手机、智能移动终端扩散。
Android安全机制分析与解决方案探析安全,是现代社会无法回避的话题。
尤其是当智能手机成为我们生活中不可或缺的一部分时,Android系统的安全机制显得尤为重要。
我们就来深入分析一下Android系统的安全机制,并探讨相应的解决方案。
一、Android安全机制概述Android系统基于Linux内核,具有强大的安全特性。
从底层到上层应用,Android构建了多层次的安全防线,包括:1.Linux内核安全机制:包括进程隔离、文件系统权限控制等。
2.应用沙箱:每个应用都在独立的沙箱中运行,防止应用间的相互干扰。
3.权限控制:应用在安装时声明所需权限,用户可以选择是否授权。
4.应用签名:确保应用来源可靠,防止恶意篡改。
5.系统更新:定期发布安全更新,修复已知漏洞。
二、安全风险分析1.恶意应用:部分应用可能携带恶意代码,窃取用户隐私,甚至破坏系统。
2.系统漏洞:操作系统可能存在漏洞,被黑客利用。
3.应用权限滥用:部分应用可能申请无关权限,侵犯用户隐私。
4.网络攻击:黑客可能通过无线网络攻击Android设备。
5.用户行为:用户不当操作,如恶意、不明来源应用等,可能导致安全风险。
三、解决方案探析1.加强应用审核:应用市场应加强对上架应用的审核,确保应用安全可靠。
2.提升用户安全意识:通过教育、宣传等方式,提高用户的安全意识,避免不当操作。
3.定期更新系统:及时修复已知漏洞,提高系统安全性。
4.优化权限管理:对应用权限进行精细化管理,限制无关权限的申请。
(1)恶意应用检测与防御加强大数据分析:通过收集应用行为数据,分析应用是否存在异常行为,如频繁访问敏感信息、后台运行等。
采用技术:利用机器学习算法,对应用进行自动分类,识别恶意应用。
用户反馈机制:鼓励用户反馈恶意应用,及时处理。
(2)系统漏洞修复与防护针对系统漏洞,我们可以:建立漏洞监测机制:定期检查系统漏洞,发现并及时修复。
采用虚拟机技术:将关键系统组件运行在虚拟机中,提高系统安全性。
APP检查基线及方法1.IOS检测1.1.应用完整性校验(中危)客户端程序可被任意修改,修改后客户客户端仍可以正常运行。
1.2.设备越狱检测(低危)应用能够在已经越狱的设备中正常运行。
通常已经越狱的设备会提供给恶意应用查看或修改自身配置文件、缓存文1.3.调试检测1.4.PIE方式编译可执行文件(安全)1.5.编译时使用ARC标记(安全)1.6.编译时使用堆栈保护器(安全)1.7.经过打包的证书信息与秘钥信息(低危)在客户端文件中发现证书、私钥等相关文件。
客户端内打包证书通常用作证书校验,攻击者可以通过运行时动态替换证1.8.本地文件数据存储(低危)客户端文件夹发现敏感信息。
本地存储数据文件不安全地存储可能会暴露内部业务逻辑,用户敏感信息1.9.调试信息是否关闭(安全)1.10.输入方式(低危)未使用自定义的安全软键盘若用户手机被植入木马,则可能监听用户输入字符串,再通过后台程序将1.11. 密码键盘截屏(低危)可对密码键盘截屏1.12. 软键盘随机布局(低危)未做随机布局的软键盘可能被捕捉用户点击像素,分析像素分布从而用户1.13.通信协议检测(中危)若攻击者能够捕获用户发送的请求信息,可通过对数据包的深度分析获取1.14. 通信加密机制(低危)传输数据加密不完全1.15.服务端证书校验(中危)未做双向认证,且传输数据加密不完全。
未对通信的服务器证书进行校验可能导致即便使用加密信道传输数据,攻1.16.中间人攻击风险(低危)恶意攻击者可以使用中间人工具在关键业务点获得用户的登陆cookie,从1.17.账户登录限制(低危)1.18.账户锁定策略(低危)未有错误锁定机制1.19.验证码安全性(低危)验证码不存在1.20.安全退出(低危)1.21.会话安全设置(低危)1.22.账户越权操作(高危)成功越权用两个测试账户:先用一个账户成功登录进去抓取返回包里的内容,然后1.23.接口冗余(安全)1.24.业务欺骗操作(安全)2.安卓检测2.1.通信协议检测建议换成HTTPS加密协议并做好服务端证书校验2.2.通信加密机制用户通过抓包工具抓取手机操作信息,可以获取到部分敏感信息如身份证号码、用户姓名,可能导致用户个人信息泄露。
网络安全中的恶意代码检测技术使用教程恶意代码是指那些用于非法获取信息、破坏系统安全或者对用户设备进行攻击的计算机程序或脚本。
由于恶意代码对个人隐私和数据安全构成严重威胁,因此,检测和防御恶意代码已经成为网络安全的重要任务之一。
本文将介绍一些常见的恶意代码检测技术和如何使用它们来保护您的设备和信息安全。
1. 定义恶意代码在了解恶意代码检测技术之前,首先需要了解什么是恶意代码。
恶意代码通常包括病毒、木马、蠕虫、间谍软件等。
它们可以通过电子邮件附件、下载的文件、恶意网站等方式传播。
2. 病毒扫描技术病毒扫描技术是一种常见且成熟的恶意代码检测技术。
它通过使用病毒特征库去匹配已知病毒的特征来检测电子邮件附件、文件和程序中的恶意代码。
这些特征库经常更新以包含最新的病毒信息。
要使用病毒扫描技术来保护您的设备,您可以安装一个可靠的杀毒软件,并将其保持更新。
定期进行全盘扫描以确保您系统中不存在未知的恶意软件。
此外,在下载文件和电子邮件附件时,应始终保持警惕,避免打开或执行来自未知来源的文件。
3. 行为分析技术行为分析技术是一种先进的恶意代码检测技术。
它不仅仅依赖于特征库匹配,更重要的是分析程序的行为以确定是否存在潜在的恶意活动。
要使用行为分析技术来保护您的设备,您可以选择一个具有强大的行为分析引擎的安全软件。
此类软件可以监视并分析软件的活动,例如文件访问、注册表修改、网络连接等。
当检测到异常或可疑行为时,它会发出警告并采取相应的防御措施。
4. 威胁情报技术威胁情报技术是一种依赖于全球安全网络来获取关于最新恶意代码和攻击活动情报的恶意代码检测技术。
它通过收集和分析来自安全团队、社区和其他组织的信息,以识别新的恶意代码和攻击趋势。
为了使用威胁情报技术来保护您的设备,您可以使用支持这种技术的安全软件。
这些软件可以实时更新最新的威胁情报,并自动采取相应的防护措施。
此外,了解当前的网络攻击趋势和常见的恶意软件类型也是非常重要的。
网络安全中的恶意代码检测与防范方法探索恶意代码是指通过网络等方式对系统进行非法入侵、攻击、破坏或窃取敏感信息的计算机程序或脚本。
在当今数字化时代,恶意代码威胁日益增加,给个人、企业乃至整个社会带来了巨大的安全风险。
因此,恶意代码的检测与防范成为了网络安全的重要议题。
本文将探讨一些常用的恶意代码检测与防范方法,以期提高网络安全的能力和水平。
一、恶意代码检测方法1. 签名检测法签名检测法是目前最常见的恶意代码检测方法之一。
它通过与已知的恶意代码进行比对,找到相应的特征码或签名来判断计算机系统中是否存在恶意代码。
当查杀病毒软件更新病毒库时,就是采用签名检测法。
然而,这种方法的局限性在于,只能检测到已知的恶意代码,无法应对未知的新型病毒。
2. 行为检测法行为检测法更加注重恶意代码的行为特征,而非特定的代码形态。
它利用监测系统中应用程序、进程、文件等的行为,以及不寻常的系统行为来判断是否存在恶意代码。
行为检测法具有较好的反应速度和对未知病毒的检测能力,但也容易产生误报和漏报的情况。
3. 基于机器学习的检测法基于机器学习的恶意代码检测方法正在逐渐成为主流。
它通过对大量已知的恶意代码和正常代码进行学习和训练,建立分类器或模型,从而能够快速准确地判断未知的恶意代码。
这种方法的优势在于能够有效地应对新型恶意代码,但也面临着训练样本不完备、恶意代码变异等挑战。
二、恶意代码防范方法1. 安装可靠的杀毒软件和防火墙安装可靠的杀毒软件是防范恶意代码的基本措施之一。
杀毒软件可以及时扫描和查杀计算机系统中的病毒和恶意代码,提供实时的保护。
同时,设置良好的防火墙可有效拦截来自外部网络的攻击和入侵。
2. 及时更新操作系统和软件操作系统和软件的漏洞是恶意代码攻击的入口之一。
恶意程序往往通过利用软件漏洞来攻击系统,所以及时更新操作系统和软件是非常重要的防范措施。
更新包含了对已知漏洞的修复,能够增强系统的安全性。
3. 注意邮件和下载附件的安全大多数恶意代码通过电子邮件、社交媒体和下载附件等方式传播。
网络安全中的恶意代码检测技术恶意代码在当前的网络环境中越来越普遍,给用户的隐私和数据安全带来了严重威胁。
为了保护网络安全,恶意代码检测技术成为了当今互联网领域中的重要研究方向之一。
本文将介绍一些常见的恶意代码检测技术,以及它们在网络安全中的应用。
一、特征匹配检测技术特征匹配检测技术是一种基于恶意代码病毒特征库的检测方法。
其原理是通过构建一个包含恶意代码特征的数据库进行检测,当用户下载的文件与特征库中的恶意代码特征匹配时,即可判断该文件可能存在恶意代码。
特征匹配检测技术的优点是准确率高,能够及时检测出已知的恶意代码。
然而,由于恶意代码的不断变异和新型威胁的出现,特征匹配检测技术对未知的恶意代码无法有效检测。
二、行为分析检测技术行为分析检测技术是一种通过分析程序在执行过程中的行为来判断是否存在恶意代码的检测方法。
该技术通过监控程序的行为,例如文件的读写操作、系统调用等,来识别是否存在恶意行为。
行为分析检测技术的优点是能够检测出未知的新型恶意代码,具有较好的适应性。
然而,这种方法也存在一定的局限性,因为恶意代码通常会采取隐蔽的行为,如延迟执行等,从而规避行为分析的检测。
三、机器学习检测技术机器学习检测技术是一种基于数据样本的自动分类技术,通过训练模型来识别新的恶意代码。
该技术通过对大量的恶意代码样本进行学习,提取特征并训练模型,从而实现对未知恶意代码的检测。
机器学习检测技术的优点是能够通过学习更新,提高检测的准确率。
然而,由于恶意代码的不断变异,机器学习模型需要不断更新和优化,以保持检测的效果。
四、沙箱技术沙箱技术是一种将可疑文件或程序运行在隔离的环境中进行观察和分析的技术。
通过在沙箱环境中运行文件,可以监控其行为,并捕获恶意行为,从而及时判断文件是否包含恶意代码。
沙箱技术的优点是能够有效识别未知的恶意代码,并提供详细的行为分析报告。
然而,沙箱技术也面临着一些挑战,例如恶意代码变异迅速,可能会规避沙箱环境的监控。
Android恶意软件检测方法分析 摘 要:文章首先就Android恶意软件的安装和触发特点进行分析,通过分析Android平台中的恶意行为,制定了Android恶意代码检测方案。结合Android平台的特点,分析了现有的恶意软件检测行为,并指出了现有Android恶意软件检测方法的不足和未来发展趋势。
关键词:Android;恶意软件;检测 当前恶意检测方法主要包含静态分析和动态检测技术,静态分析主要是利用程序自身的静态结构、代码来判断其是否具有恶意性,其中涉及反编译、静态系统调用、逆向分析和模式匹配等相关技术。而动态检测主要是通过手机监视程序来对恶意行为进行检测监视。但是这两种技术在判断恶意软件时,仍然存在一些缺陷,没有充分结合实际应用中恶意软件变种、升级等问题。基于Android恶意软件的特征情况,本文提出了静态的综合检测方法以及动态分析技术,更好地解决Android系统的安全问题。 1 Android恶意软件的基本特征 为深入了解Android恶意软件的特征,文章从软件的安装方式、触发方式以及恶意负载种类等几个方面进行描述,同时为后文中检测Android恶意软件提供技术基础。 1.1 安装方式 Android恶意软件通常在形式上比较吸引用户注意,伪装成一些实用软件,进而让手机用户下载安装,迅速蔓延传播。恶意软件在手机中的安装传播方式主要分为三种:重打包下载、更新包下载、偷渡软件下载以及其他方式进入手机。 1.1.1 重打包下载 在一些流行的软件中植入恶意代码,然后进行重新编译,提供给Android手机软件官方市场,这种恶意软件隐藏特征非常强,很难分辨出来,,它们挂上合法安全的命名,具有欺骗性,在软件安装时运用了代码混淆技术和运行时解密技术。 1.1.2 更新包下载 在下载手机中已有的软件更新包时,恶意软件会在apk文件中植入恶意代码,运行更新包时,通过运行动态获取并下载安装恶意代码,一般运用静态扫描无法检测出更新包中的恶意负载。 1.1.3 偷渡软件下载 利用未开发的软件吸引用户在不安全的小网站中下载安装偷渡软件,其实这些偷渡软件就是伪装后的恶意软件,对手机Android系统存在很大的威胁。 1.1.4 其他方式 利用间谍软件安装入Android手机系统中,伪装成手机常用软件,但是没有伪装应用的实际功能,山寨软件,在软件中隐藏软件的恶意功能。 1.2 触发方式 当恶意软件进入Android手机系统中,一般通过这两种方式进行触发:诱导用户点击、媒体系统。 1.2.1 诱导用户点击 当恶意代码隐藏在重打包应用进入手机中,会伪装成某些重要功能诱导用户点击程序,进而触发恶意软件,导致恶意软件自动运行。 1.2.2 媒体系统 媒体系统主要包括手机中自带的广播系统、短信软件、音乐电影等软件。恶意代码可以隐藏在某段音频视频中,当用户播放广播、音乐或视频时,就会触发恶意软件;还有一种方式是通过短信发送给手机用户一段网址信息,用户点击网址时,就会自动跳转到恶意软件中,触发运行恶意负载。 1.3 恶意负载种类 Android恶意软件的恶意负载种类主要分为这样几类:提升特权、远程操控、恶意吸取话费、盗取隐私信息以及自我保护。 1.3.1 提升特权 提升特权主要表现在恶意软件可以自行突破手机的运行权限,恶意软件利用各种不同的Root攻击程序对Android系统本身的Root权限进行攻击、偷渡,从而提高Root权限,在攻击的过程中使用了代码混淆技术和代码加密技术,使Android系统静态分析恶意代码的难度提高了,有的恶意代码还会混淆伪装在手机自带的软件中。恶意软件除了利用ROOT攻击程序之外,还会利用Android系统本身的漏洞混淆安全清理吗,提升Android系统特权。 1.3.2 远程操控 当一些恶意软件进入手机中后,可以利用远程操控系统对手机进行远程操控,更新系统中的恶意负载,把系统信息传输会恶意软件总部。恶意软件中最常用的远程操控模式是利用http网络接收服务器控制指令,因此可以发现恶意软件只有在有网络的时候才能实现远程操控,可以增加网络服务器的隐蔽性,实行加密,从而抵挡恶意软件的远程操控。 1.3.3 恶意吸取话费 恶意软件提前在手机中植入花费吸取代码,然后利用SP服务强行吸取手机用户的话费,同时恶意软件还可以隐藏掉服务商的通信短信,秘密扣除掉手机中的话费。利用远程操控可以增值号码中的一些无用服务,提高话费使用数额。 1.3.4 盗取隐私信息 通过盗取隐私模块对手机中的通讯录、短信、录音、音频视频信息和一些隐私数据进行盗取,通过盗取这些隐私信息实现进一步价值。例如:在盗取到手机用户的通讯录后,可以利用朋友间的信任骗取大量钱财。在渗透入手机系统后,可以进一步篡改Android系统漏洞,实现APT的持续攻击,。因此,窃取手机信息对恶意软件来说非常重要。在实际应用中,一定要注意保密,对一些重要信息资料进行加密处理,一旦发生恶意软件入侵,及时清除掉手机信息。 1.3.5 自我保护 目前,很多Android恶意软件利用商业级代码保护技术实现自我保护,加大了Android平台静态分析的难度,把符号信息和Android代码文件混淆在一起,恶意软件利用木马工具实现了动态代码解密,同时加固本身的代码信息,恶意软件还会利用Android平台的在线服务和预装应用中的漏洞,对自身进行保护。 通过对恶意软件的特征进行分析得知,各种恶意软件技术在不断更新换代,Android平台也在高速发展,随着Android平台的进化特征,恶意软件也能不断进化自身保护能力,恶意软件攻击者会利用各种混淆测试技术和反监控技术对Android平台的恶意软件检测进行自我保护。 2 Android恶意软件检测方法 2.1 字节码静态检测技术 这种静态检测技术主要是通ASM字节码处理框架进行解析,可以追踪到恶意程序中的静态动作,并对行为标注出来。实施这种技术的主要步骤有:(1)手机用户对APK文件的MD5值进行计算,和已分析的程序库进行对比,如果APK文件的MD5值存在于已分析的程序库中,证明检测通过了,进行下一步。(2)解压APK分组文件,得到classes.dex文件和AndroidManifest.Xml数据文件。(3)利用dex2jar工具把classes.dex文件转化为jar分组文件,利用AXMLPrinter2工具把AndroidManifest.xml文件进行反编译。(4)对jar分组文件和反编译后的AndroidManifest.xml文件进行分析,排除其中的危险权限,然后进行下一步。(5)检测反编译后的Java文件,如果检测出来恶意文件,提示手机用户选择性处理恶意文件,可以删除或者隔离恶意文件。(6)导出检测结果到已分析程序库中,完成静态检测分析。 2.2 动态检测技术 动态分析检测过程一般比较复杂,周期比较长,它需要进行一系列的准备工作,而且运行效率不明显。在这里提到的动态检测技术主要是利用是trace工具记录系统,把调用行为记录在日志文件中,同时对wireshark网络数据分组文件进行跟踪分析,最终对两组文件结合分析。其具体步骤有这样几点:(1)准备工作。首先启动手机桌面上的模拟器,当软件在模拟器上运行时,可以调试网络、音频、视频等功能,对存储的文件翻阅一遍。(2)在手机上安装下载trace和wireshark工具;监控应用在运行过程中的动态行为,包括发送的网络数据和系统API。利用trace记录工具,把调用行为记录在日志文件上。(3)安装下载应用并且启动mokeyrunner工具。当应用在运行时,mokeyrunner工具可以自行运行并模拟手机用户的运行动作。(4)收集日志文件记录和网络数据分组文件记录。当mokeyrunner工具运行完成之后,就会把运行数据存储在文件记录中,当网络开启后,也会wireshark网络数据分组文件记录下来,对这些文件记录进行分析,确定恶意软件的行为,并对恶意软件进行清除。 3 恶意软件检测行为 3.1 权限分析 对系统中敏感行为的危险权限进行分析,对比出恶意软件和正常软件的权限特点,对带有危险权限的软件进行扫描分析,筛选出其中的恶意行为和潜在威胁,然后进行下一步分析检测。对不存在危险权限的应用程序不需要进行扫描分析,直接视为正常程序。但是在检测中仍然存在缺陷,恶意软件可以自行提升特权,不需要受到权限限制,不用申请权限,漏过检测。 3.2 动态行为分析 动态行为分析为了不受恶意代码的混淆,主要对恶意软件的动态、行为和实施方式进行检测。classes.dex文件是应用程序的主要代码,所以可以对其进行反编译,然后在总结分析Java文件。恶意行为主要包括窃取隐私行为、远程操控行为和吸取花费的行为,针对这些恶意行为,可以采取语意分析行为和污点跟踪行为。对用户意图和行为语义进行抽取,在设计Android平台时,可以采用交互密集型设计方法,把用户的行为意图和自动化可度量的程序结合分析,从而识别恶意行为。污点跟踪主要是利用污点源跟踪污点,捕获污点输出信息。 3.3 静态分析 在应用不允许代码时运用静态分析,通过使用控制流分析、语义分析以及数据流分析技术对Android系统文件进行分析检测,这种分析技术在运行起来更加快速,效率比较高,结果准确,但是针对恶意软件的代码混淆技术和代码加密技术,很难识别恶意代码,从而产生技术漏洞。 4 Android恶意软件检测方法的不足之处和发展趋势 虽然目前Android恶意软件检测在实际运用中取得一些实践成果,但是在在运行时仍然存在一些不足。主要体现在这些方面:(1)检测恶意软件缺少标准。(2)动态检测方法不够智能化,需要人为判断;(3)恶意软件的代码混淆和加密技术逐渐成熟,导致静态分析中的反编译难度加大,难以识别各种恶意代码。随着科学技术的发展进步,未来的Android恶意软件检测方法会逐渐完善,制定完善的恶意软件标准,动态检测和静态检测方法更加自动化、智能化。 [参考文献] [1]冯博,戴航,慕德俊.Android恶意软件检测方法研究