移动终端软件安全漏洞静态分析研究

 2022-08-01 08:08

论文总字数:38385字

摘 要

移动设备无处不在。其中Android(安卓)平台占据了绝大多数的移动市场,iOS平台占据了一小部分。一些复杂的移动恶意软件,未经用户同意即可获取或使用其敏感信息。例如在应用最广泛的Android平台中,包括应用权限,敏感数据,数据存储,日志信息泄露,不安全的IPC端点等安全问题逐步显现,并被恶意利用。因此检测移动软件,阻止其对终端用户的恶意行为,已经成为包括Android与iOS等移动平台在内面对的重点问题之一。

本文基于对已有Android应用漏洞特征的归纳,设计了一个基于Python网络框架Django的移动应用程序(Android/iOS)漏洞的静态分析框架测试框架。它可用于对Android,iOS移动应用程序进行有效和快速的安全分析,同时支持二进制文件APK(AndroidPackage,安卓安装包)、IPA(iPhoneApplication,苹果应用程序)和压缩源代码。本项目利用APKtool、baksmali、enjarify等静态分析工具对Android应用进行反编译,利用class-dump-z对iOS应用进行反编译。使用AXMLPrinter2.jar获取Manifest.xml文件内容信息,CertPrint.jar分析证书文件使用Dex2Jar等工具将DEX文件转为JAR文件、Smali文件,再转化为可读的Java代码,并结合相关静态分析漏洞类库,以发现其中存在的安全漏洞。

完成了基于bookstrap的前端界面,可完成查看过往记录,查看后端API文档,拖拽或选择文件进行上传并做静态分析的功能。

关键词:移动终端,恶意软件,静态分析

Research on Static Analysis of Mobile Terminal Software Security Vulnerabilities

04014632 ZHANG Shiqi

Supervised by SONG Yubo

Abstract

Mobile devices are everywhere. Among them, the Android platform occupies most of the mobile market, and the iOS platform occupies a small part. Some sophisticated mobile malware can obtain or use sensitive information without user consent. For example, in the most widely used Android platform, security issues such as application Permissions, sensitive data, data storage, log information leakage, insecure IPC endpoints, etc. gradually emerged and were exploited maliciously. Therefore, detecting mobile software and preventing its malicious behavior toward end users has become one of the key issues facing mobile platforms including Android and iOS.

Based on the existing Android application vulnerabilities, this paper designs a static analysis framework testing framework based on Python network framework Django's mobile application (Android/iOS) vulnerabilities. It can be used for effective and fast security analysis of Android, iOS mobile applications, while supporting binary files APK, IPA and compressed source code. In this project, static analysis tools such as APKtool, baksmali, and enjarify are used to decompile Android applications and use class-dump-z to decompile iOS applications. Use AXMLPrinter2.jar to obtain Manifest.xml file content information, CertPrint.jar analyze certificate file using Dex2Jar and other tools to convert DEX files to JAR files, Smali files, and then converted into readable Java code, and associated with the static analysis vulnerability class library to discover security problem.

Completed the front-end interface based on bookstrap, you can complete the viewing of past records, view backend API documents, drag and drop or select files for upload and do static analysis.

Key Words: Mobile terminal, malware, static analysis

目 录

摘要 I

Abstract II

1 绪论 1

1.1研究背景与意义 1

1.2国内外研究现状 2

1.3论文组织与结构 3

2 移动终端软件安全机制及静态分析 4

2.1 Android系统平台概述 4

2.1.1 Android系统架构 4

2.1.2 Android安全机制 5

2.1.3 Android安全弱点 5

2.2 iOS系统平台概述 6

2.3静态分析 8

2.4本章小结 9

3移动端软件漏洞静态分析系统设计 10

3.1系统实现环境 10

3.2框架总体设计 10

3.3项目视图层MobSF 11

3.3.1 views.py 11

3.3.2 rest_api.py 11

3.3.3 urls.py 12

3.3.4 utils.py 12

3.3.5 settings.py 12

3.3.6 wsgi.py 12

3.4项目模型层StaticAnalyzer 13

3.4.1 Android分析 13

3.4.2 iOS分析 22

3.4.3 Android和iOS共用分析 23

3.5项目模板层templates 24

3.6静态分析集 26

3.7本章小结 27

4 测试与结果 28

4.1测试环境 28

4.2测试结果 28

5 总结与展望 35

5.1工作总结 35

5.2问题与展望 35

参考文献 36

致谢 38

附录 39

1 绪论

1.1研究背景与意义

至2018年为止,移动端时代在数十年中逐渐走向大数据时代。在人们获得信息交互,快捷支付等便利的同时,移动应用对于个人隐私的获取也变得越来越容易,同时,恶意软件也获取高级权限的同时进行恶意收费,收发短信,盗取账户等非法行为。移动终端的使用者越来越多,安全保护意识有待加强、移动端防护技术的研究仍需要加大力度。黑客利用手机平板等智能设备带来的隐私外流、木马病毒、安全漏洞等引发的不法行为愈演愈烈。 [1]。2017年《网络安全法》从正式出台,到如今的第二年为适应《中华人民共和国网络安全法》,公安部签署《网络安全等级保护基本要求》以适应新的网络环境,由于全新的移动互联技术,我们亟须进行移动应用领域的安全问题研究,并逐步形成新的移动网络安全新标准。

剩余内容已隐藏,请支付后下载全文,论文总字数:38385字

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;