论文部分内容阅读
随着互联网技术的迅速发展,特别是移动应用技术的广泛应用,人们对移动应用的依赖性越来越强。与此同时,移动应该的安全问题也越来越多,如诈骗短信、恶意吸费、数据盗取等,造成了广大用户的数据、财产、隐私等的威胁。针对这些问题,国内外的安全研究者也提出了大量恶意软件检测的方案,主要是基于静态分析和动态分析的两类方法。但是这些方法在检测Android恶意软件的时候都存在一定的弊端;同时由于移动设备在计算能力和电池资源上的缺陷,使得针对Android软件的安全问题更加突出。针对于现有的Android恶意软件在检测方面存在的弊端,本文提出了一种基于Android恶意软件检测引擎的设计方案与实现方法。该引擎的设计与实现使得移动用户、移动开发者、安全研究者可以通过API接口将移动应用上传至引擎,引擎自动完成移动应用的安全分析,然后使用者通过API接口去获取应用的检测结果。在该引擎中,基于沙盒的机制使得每次检测都是一个隔离的、全新的环境,恶意程序在沙盒中的恶意行为无法对宿主机造成威胁;同时本引擎结合了静态检测方法、动态检测方法及与知名恶意软件病毒库联动。使得恶意代码的检测自动化、病毒库的同步实时化,从而能够很好的检测出Android应用是否为恶意软件。对比传统的Android恶意软件检测引擎,本论文基于沙盒的恶意软件检测引擎具备以下优势:第一、基于沙盒的机制,检测环境独立,使得每次检测相对独立、宿主机免受恶意软件的破坏。第二、通过Hook Android系统的API,与在线病毒库联动,检测结果更加全面与准确。第三、基于python语言和沙盒技术的结合,使得的引擎具备很好的跨平台性。第四、通过API的形式与目标用户交互,操作简洁、兼容性强,使得引擎可以方便的与其他平台整合。本引擎在完成设计与实现的基础上,从互联网上随机下载了大量的移动应用进行了检测,经过实地检测证明,该引擎具备很好的Android恶意软件的检测能力,充分的证明了本引擎的有效性与实用性。