节点文献

基于Android的应用程序行为安全监控与分析系统设计与实现

Design and Implementation of Application Behavior Security Monitoring and Analysis System Based on Android

【作者】 张林

【导师】 杨国武;

【作者基本信息】 电子科技大学 , 工程硕士(专业学位), 2017, 硕士

【摘要】 随着移动互联网的爆炸式发展,作为开源移动操作系统的Android系统受到各大手机厂商的青睐,已经在移动互联网市场占据了很大的份额。因此,Android应用程序数量也呈现出直线上升的趋势,然而这些给用户带来便利的应用程序中通常存在一些被黑客作为攻击入口的安全漏洞,由此给用户隐私造成了巨大的威胁,于是,如何有效地进行Android应用程序漏洞挖掘就成为了移动安全领域的研究重点。本文主要是对当前Android应用程序中存在的安全漏洞进行挖掘,在分析各种漏洞的基础上,提出了构建基于Smali代码的控制流、污点数据反向追踪以及Intent路径可达性分析三种静态分析方法。基于Smali插桩技术及Fuzzing测试技术对应用程序进行动态分析,最终实现基于Android的应用程序行为安全监控与分析系统。本文首先介绍了课题的研究背景及意义,针对当前Android应用程序漏洞挖掘技术进行了研究并分析了其中的不足之处,简单介绍了Android平台架构、Android应用程序开发相关知识以及Android平台提供的安全机制等内容。然后对当前应用程序中存在的安全漏洞进行了研究,基于此,本文利用静态分析与动态分析相结合的思想进行漏洞挖掘。在静态分析中,提出了基于Smali代码构建控制流图,通过分析程序运行中的跳转流程得到控制流,然后提出了基于Smali代码寄存器的污点数据反向追踪技术,在数据的输出点出发,结合控制流反向追踪寄存器数据的流向,最终形成应用程序的数据流。此外,针对应用程序的组件间通信问题,对Intent可达路径进行分析,建立组件间的控制流与数据流。静态分析的结果主要是得到应用程序申请的权限信息、数据流、漏洞因子等。在动态分析阶段,首先进行Fuzzing测试用例变异,获得半有效数据,然后构造Smali代码在静态分析得到的关键点进行插桩,最后通过运行应用程序,监控应用程序行为并结合静态分析的结果、漏洞特征库,给出应用程序的安全性分析报告。最后,基于上述提出的技术原理对整体系统原型进行构建并测试,分别实现Android应用程序的静态分析模块与动态分析模块。测试结果表明,基于Android的应用程序行为安全监控与分析系统能有效挖掘应用程序信息泄露等常见的安全漏洞。

【Abstract】 With the explosive development of mobile Internet,Android system as an open source mobile operating system is popular among major mobile phone manufacturers,which occupies a large share in the mobile Internet market.At the same time,the number of applications based on the Android platform also exhibits upward trend of mobile Internet.And since that,there exists security vulnerabilities,hackers use them as an attack portal,and made huge threat to users.So in the field of mobile security,the most important thing is how to discover application security vulnerabilities in an efficient way.This thesis mainly discusses how to mine security vulnerabilities which exist in the current Android application.On the basis of analyzing all kinds of security vulnerabilities,this thesis proposes three static analysis techniques including control flow based on Smali code,reverse tracking tainted data and path analysis of the Intent.Then,the Smali pile technology and the Fuzzing test technology are studied to analyze the application program dynamically.Finally,this thesis realizes the application,which includes behavior security monitoring and analysis system based on Android platform.Initially,this thesis introduces the research background and significance,and studies the current Android application security vulnerabilities mining technology and puts forward the existing deficiency.Secondly,this research introduces the Android platform architecture,the related knowledge of Android application development as well as the security mechanism provided by the Android platform and other content.And then,based on the research of the security vulnerabilities in the application,this thesis presents a security vulnerability mining method by combining the static analysis and dynamic analysis.In the static analysis phase,control flow graph is proposed based on Smali code,and the control flow is obtained by analyzing the jumping process in the running of the program.And then this thesis depicts tainted data reverse tracking technology based on register data of Smali.It starts from the output of the data points,combined with the control flow,and reversely track the data from register,finally forms the application?s data stream.Aimed at the communication between the components of the application,this research analyzes the path analysis of Intent,sets up the control flow and data flow between the components.The results of static analysis are mainly to get the relevant information of the application,including permission information of the application,data flow,security vulnerabilities factor and so on.In the dynamic analysis phase,the semi-valid data is obtained through the mutated Fuzzing test.And then the Smali code is constructed and inserted at the key point of the static analysis.Finally,we could monitor the behavior of the application and combine the results of the static analysis and security vulnerability library by running the program,to provide the application security analysis report.Finally,based on the above analysis technology principle,we build overall system prototype and make some tests on it,achieve the static analysis module and dynamic analysis module of Android applications respectively.From the test results,it indicates that behavior security monitoring based on the Android application and analysis system could mine information disclosure and other common security vulnerabilities that exist in application effectively.

  • 【分类号】TP316;TP309
  • 【被引频次】5
  • 【下载频次】143
节点文献中: 

本文链接的文献网络图示:

本文的引文网络