论文部分内容阅读
随着移动互联网技术的快速发展,智能终端允许用户通过移动网络进行网上办公、收发邮件、网上信息注册、手机购物、网上支付、转账等活动。由于智能终端的功能越来越强大,人们的办公、学习、生活等逐渐由传统桌面转向了智能终端。智能终端成为用户各种信息的载体,存储着用户大量重要信息。Android智能操作系统由于其开源性,短短几年就已经成为全球第一智能手机操作系统。由于Android智能操作系统的强大功能和丰富的应用程序,Android智能终端在用户生活中扮演着越来越重要的角色。由于Android智能终端存储着用户大量的重要信息,因此也成为了恶意攻击的首选目标。隐私信息泄露、恶意扣费和系统破坏等行为给Android智能终端用户带来巨大损失,因此解决Android的安全问题十分重要。本文在研究了Android的安全机制、开发语言以及多种漏洞挖掘方法的基础上提出一种针对Android应用程序源码的漏洞挖掘方法。主要研究工作如下:(1)首先对Android的安全现状进行了介绍,详细分析了Android的系统架构、安全机制以及开发语言。然后分析安全漏洞产生原因及漏洞分类,深入研究了安全漏洞挖掘的静态分析方法和动态分析方法,提出Android安全漏洞的动静方法结合的安全漏洞挖掘方法。(2)建立了Android漏洞库和权限-方法的映射集合,并对Android应用程序进行反编译获得源码然后进行预处理。(3)采用类型推断和约束分析相结合的方法对Android源码进行静态分析,得到静态分析的漏洞点结果,同时利用漏洞约束算法得到漏洞点处的测试用例。(4)根据Android漏洞库知识对测试用例进行变异得到半有效数据,然后利用Fuzzing技术精确挖掘漏洞。最后实例分析了漏洞约束算法得到的测试用例,并对挖掘方法进行了实现,证明其有效性。