基于smali代码混淆的Android应用保护方法
详细信息    查看全文 | 推荐本文 |
  • 英文篇名:Android application protection based on smali code obfuscation
  • 作者:刘方圆 ; 孟宪佳 ; 汤战勇 ; 房鼎益 ; 龚晓庆
  • 英文作者:LIU Fang-yuan;M ENG Xian-jia;TANG Zhan-yong;FANG Ding-yi;GONG Xiao-qing;Department of Computer Science and Technology,Northwest University;
  • 关键词:smali代码混淆 ; 逆向工程 ; 反编译
  • 英文关键词:smali code obfuscation;;reverse engineering;;decompiling
  • 中文刊名:SDDX
  • 英文刊名:Journal of Shandong University(Natural Science)
  • 机构:西北大学信息科学与技术学院;
  • 出版日期:2016-12-12 15:06
  • 出版单位:山东大学学报(理学版)
  • 年:2017
  • 期:v.52
  • 基金:国家自然科学基金资助项目(61572402,61373177);; 陕西省国际科技合作与交流计划项目(2013KW01-02,2015KW-003,2016KW-034);; 中国博士后科学基金资助项目(2012M521797)
  • 语种:中文;
  • 页:SDDX201703007
  • 页数:7
  • CN:03
  • ISSN:37-1389/N
  • 分类号:47-53
摘要
提出了一种基于smali代码混淆的Android应用保护方法,其基本思想是利用Dalvik VM基于寄存器这一特点,对寄存器中值的存取进行数据流混淆,并结合不透明谓词技术对其控制流进行混淆,最终目的是让攻击者在反编译时出现异常。对该混淆方法从强度、弹性和开销3个指标进行了技术评价。实验结果表明,该混淆方法能够抵抗现在广泛使用的逆向工具jeb、dex2jar、dexdump和IDA pro的逆向分析。
        An Android application protection method that is based on code obfuscation of smali code is proposed.The basic idea is that confuses the data flow for the access procedure of register data,and combines opaque predicates technology to confuse the control flow,thus when the attacker reversely analyze the application,the decompiling results will be w rong.The obfuscation method is evaluated from strength,resilience and overhead.The experiment results show that ourcan resist the reverse analysis of current popular reverse tools,such as jeb,dex2jar,dexdump and IDA pro.
引文
[1]飞向网.2016年Q1中国Android市场份额[EB/OL].[2016].http://www.ebrun.com/20160419/172891.shtml.
    [2]中国新闻网.Fake payment APP[EB/OL].[2015].http://www.thethirdmedia.com/Article/201511/show363-034c77p1.html.
    [3]JESUSFREKEJ.smali/backsmali:An assembler/disassembler for Android's dex format[EB/OL].[2011].http://code.google.com/p/samli.
    [4]XU J,LI S,ZHANG T.Security Analysis and Protection Based on Smali Injection for Android Applications[M]//Algorithms and Architectures for Parallel Processing.Berlin:Springer International Publishing,2014:577-586.
    [5]BARAK B,GOLDREICH O,IMOAGLIAZZO R,et al.On the(im)possibility of obfuscating programs[C]//Advances in cryptology—CRYPTO 2001.Springer Berlin Heidelberg,2001:1-18.
    [6]郑琪,徐爱国.面向Android移动应用的控制流混淆[EB/OL].中国科技论文在线.2014.http://www.paper.edu.cn/releasepaper/content/201412-783.ZHENG Qi,XU Aiguo.The control flow of confusion for Android mobile application[EB/OL].China's scientific and technical papers online.2014.http://www.paper.edu.cn/releasepaper/content/201412-783.
    [7]刘金梁.Android平台软件安全防护技术的研究与实现[D].北京:北京邮电大学,2015.LIU Jinliang.The research of the softw are security protection technology and implementation for Android platform[D].Beijing:Beijing University of Posts and Telecommunications,2015.
    [8]郑琪.面向Android智能手机终端应用程序的代码混淆算法研究与实现[D].北京:北京邮电大学,2015.ZHENG Qi.Research and implementation of code obfuscation algorithms for applications of android smartphone terminal[D].Beijing:Beijing University of Posts and Telecommunications,2015.
    [9]Eric P.F.Pro Guard[EB/OL].[2002].http://proguard.sourceforge.net/.
    [10]SHU J,LI J,ZHANG Y,et al.Android app protection via interpretation obfuscation[C]//Dependable,Autonomic and Secure Computing(DASC),2014 IEEE 12th International Conference on.IEEE,2014:63-68.
    [11]汪德嘉,宋超,刘家郡.一种Android系统应用的深度代码混淆方法[P].中国专利:103544414.A,2014.WANG Dejia,SONG Chao,LIU Jiajun.A method of the depth of the Android application code confusion[P].CN:103544414.A,2014.
    [12]PREDA M D,GIACOBAZZI R.Semantic-Based Code Obfuscation by Abstract Interpretation[J].Lecture Notes in Computer Science,2005,17(17):1325-1336.
    [13]YANG Y,FAN W,HUANG W,et al.The research of multi-point function opaque predicates obfuscation algorithm[J].Applied M athematics&Information Sciences,2014,8(6):3063-3070.
    [14]Romin Irani.Android Application Class[EB/OL].[2010].http://www.xoriant.com/blog/mobile-application-development/android-application-class.html
    [15]WIKIPEDIA.Java Native Interface[EB/OL].[2016].https://en.w ikipedia.org/w iki/Java_Native_Interface.
    [16]COLLERG C,THOMBORSON C,LOW D.A taxonomy of obfuscating transformations[D].New Zealand,Auckland:The University of Auckland,1997.