论文部分内容阅读
随着无线通信、操作系统和高精密硬件制造等技术的飞速发展,移动设备已经成为人们生活中不可或缺的一部分。但人们在享受它所带来便捷的同时,也不得不面对它给我们的隐私信息所带来的威胁。在隐私信息中,用户的通话内容和周围环境声音是用户重要的隐私信息。通过静默录音的方式,安卓应用程序可以窃取用户的通话内容和环境声音,而当前基于权限管理的安卓安全机制不能区分正常的软件录音功能和恶意窃听,因此它并不能防止此类信息被恶意程序所窃取。安卓移动设备用户一般从应用商城中下载安装各种应用程序。这些应用程序因功能需要可以访问与用户隐私相关的信息。虽然应用商城会对开发者所提交的软件进行相应的安全审查,但由于它们目前没有统一而有效的私密信息泄露检测机制,这在一定程度上给包括窃听程序在内的恶意程序流入市场提供了可能,也给用户使用应用商城中的第三方应用程序带来了一定的安全性风险。为了应对用户隐私信息遭受窃取等安全性风险,在本文中,我们提出了一种窃听程序检测工具RecEye,它基于Soot静态分析框架,采用了上下文敏感和信息流敏感的静态分析方法,并结合机器学习理论来智能检测安卓应用程序是否存在窃听操作。通过采用本文提出的检测技术,应用商城可以主动检测具有窃听功能的应用程序,并在第一时间将其清除出商城以保护用户隐私。考虑到安卓平台的特殊性,我们对Soot进行了扩展并提出了针对安卓编程模型的有效解决方案,同时,在信息流分析过程中,我们还对安卓配置文件进行了解析,并通过模拟安卓各组件的生命周期和对异步调用的特殊处理,从而提高了静态分析的准确率。为了评估本文中提出的RecEye的性能,我们从国内多个主流应用商城中随机下载了4万多款应用程序作为检测样本,RecEye发现其中3款确实存在窃听行为,而通过目前主流的反病毒软件对这3款软件进行查杀,大部分反病毒软件都没能检测出它们具有窃听隐患。同时,我们也使用RecEye分析了近1万款恶意软件样本,实验结果表明RecEye假阳率仅为6.52%而假阴率也仅为2%,且大部分软件都能在1分钟内分析完成。本文提出的RecEye可以很方便地扩展到对其他隐私信息泄露方面的检测,也可以部署到应用商城中,用于辅助对开发者提交的软件进行隐私信息泄露方面的安全审查。