信息网络安全 ›› 2016, Vol. 16 ›› Issue (5): 71-77.doi: 10.3969/j.issn.1671-1122.2016.05.011

• 技术研究 • 上一篇    下一篇

基于Android可执行文件重组的混淆方案的设计与实现

文伟平(), 张汉, 曹向磊   

  1. 北京大学软件与微电子学院,北京 102600
  • 收稿日期:2016-04-18 出版日期:2016-05-20 发布日期:2020-05-13
  • 作者简介:

    文伟平(1976—),男,湖南,副教授,博士,主要研究方向为网络攻击与防范、恶意代码研究、信息系统逆向工程等;张汉(1990—),男,河南,硕士研究生,主要研究方向为网络与系统安全;曹向磊(1990—),男,河南,硕士研究生,主要研究方向为Android安全。

  • 基金资助:
    国家自然科学基金[61170282]

Design and Implementation of the Scheme of Obfuscation Based on the Recombination of the Android Executable File

Weiping WEN(), Han ZHANG, Xianglei CAO   

  1. School of Software&Microelectronics, Peking University, Beijing 102600, China
  • Received:2016-04-18 Online:2016-05-20 Published:2020-05-13

摘要:

随着移动智能终端的高速发展,Android操作系统已经成为世界上使用最广泛的移动智能操作系统之一。Android操作系统的设计者选择了开发者众多、跨平台性和效率都比较好的Java语言进行开发。Java语言的特性使得Java程序很容易被反编译工具反编译并逆向分析,这就使得Android应用程序面临很大的风险。文章以保护Android应用程序、提高攻击者逆向分析的难度、不增加程序执行时的额外开销为目的,深入研究代码混淆中的外形混淆技术,在Android可执行文件重组的基础上,设计并实现了一种Android混淆工具,并对该工具进行了测试与性能分析。Android混淆工具提高了Android软件的安全性,保护了Android应用程序开发者的知识产权,在一定程度上避免了Android应用程序被逆向分析、盗版以及恶意篡改。

关键词: Android, 可执行文件, 重组, 代码混淆

Abstract:

With the rapid development of mobile intelligent terminals, Android operating system has become one of the most widely used mobile intelligent operating systems in the world. Java is famous for its features of good cross-platform, high efficiency and a large amount of developers, therefore the designers of Android choose Java as the system development language. The characteristics of the Java language make Java program easy be decompiled by decompilation tools and be analyzed, which makes Android applications face great risks. This paper focuses on the study of code obfuscation technology for the purpose of protecting Android applications, improving the difficulty of the attacker's reverse analysis and adding no extra time cost for the execution of the program. Based on Android executable file reorganization, this paper designs and implements a kind of Android obfuscation tool and carries out test and performances analysis. This Android obfuscation tool enhances the security of Android applications, protects Android applications developers' intellectual property rights, and avoids reverse analysis, piracy and malicious tampering to Android applications to a certain extent.

Key words: Android, executable file, recombination, code obfuscation

中图分类号: