- 无标题文档
查看论文信息

中文题名:

 Android字节码程序常量传播分析    

姓名:

 龚伟刚    

学生类型:

 学士    

学位名称:

 工学学士    

学校:

 中国人民大学    

院系:

 信息学院    

专业:

 信息安全    

第一导师姓名:

 梁彬    

完成日期:

 2014    

中文关键词:

 静态分析 常量传播 Android安全 数据流分析    

中文摘要:
目前Android系统在全球手机市场中占有巨大的份额,随着Android应用程序面临的威胁的增加,其安全问题开始得到越来越多的关注。在对Android应用程序的测试分析中,静态分析技术作为动态分析的辅助方法,逐渐成为提高Android程序安全性的重要手段。 Android系统具有四大组件:Activity、Service、Content Provider、Broadcast Receiver,并通过intent机制在程序运行时进行组件间通信,由于Android缺少足够的检测机制,所以会产生权限泄露的风险,例如,如果一个正常应用的intent没有明确指定哪些接收方有权限接收,则恶意程序指定action标识后,可以获取该intent内容,导致数据泄露。又因为intent中包含的action等关键信息一般都是固定的常量,所以对其进行常量传播分析有助于检测由intent导致的权限泄露威胁,本文在实验部分将以一实例作具体说明。 同时,在静态分析的过程中,为了生成更有效的目标代码,需要对静态分析产生的中间代码进行进一步的优化。常量传播作为一种基于静态分析的优化方法,以数据流分析为基础,在遍历程序内部的执行路径和生成控制流图后,通过跟踪应用程序对常量值的使用,将对变量的引用直接替换成对其常数值的引用,能够大大减少对内存变量单元的访问次数,提高程序执行的时间效率,已经成为一种主要的优化方法。 本文通过对Android程序的DEX文件进行反汇编,得到Android程序的Dalvik字节码,并以此为基础,采用静态数据流分析技术,通过控制流分析生成程序的控制流图,并实现了常量分析方法,对生成的中间代码进行了进一步地优化,为检测由intent机制导致的权限泄露提供了检测手段。
开放日期:

 2016-03-21    

无标题文档

   建议浏览器: 谷歌 火狐 360请用极速模式,双核浏览器请用极速模式