Android 软件越来越多的走向免费加广告模式了,但在我们日常应用中,还是不乏一些收费应用,一部分通过 Market 收费下载,另一部分将收费部分放到了软件的实现中,我们 今天要讨论的就是后者,就我见到的一部分 Android 软件中,它们有通过序列号验证的,有 通过 Linsence 绑定的,更有甚者是通过网络激活验证的,那它们的安全措施都有哪些?如 何分析并破解它们?这将是这篇文章将要讲到的。 破解工具介绍 下表列举出了破解 Android 程序时可能会用到的工具:
这些工具经常配合在一起使用来反编译与编译APK文件,但ApkTool_GUI的出现将这些繁 琐的工作化繁为简,可以从此处下载它:http://115.com/file/an0pe8osEditPlus主要 用来高亮显示查看生成的反编译文件,为此我制作了Editplus的高亮语法文件一起打包给大 家。DeDexer与BakSmali是目前广泛使用的两款DEX反编译工具,两个工具在语法上有细微的 差别,我们在下面会此进行比较。 Dalvik VM 和OpCodes
如同破解 Windows 程序需要掌握 Windows 程序特点一样,破解 Android 平台的程序需要 先掌握 Android 程序开发的一些基本知识,一般的程序破解不需要深入的了解 Android 程序 的开发,不过对于 Android 程序的运行机制应该有个大致的了解,完全不懂 Android 程序开 发的朋友还是先打打基础吧!在 Windows 程序的调试时代,破解者将需要分析的程序载入 Ollydbg 之类的调试器中,在成千上万条汇编指令中寻找突破点,MASM 语法的汇编自己也成 为解密者需要掌握的基础,而我们要想熟练的分析 Android 程序,就必须要掌握 Dalvik 虚 拟机的指令,听到虚拟机可能一部分人开始发怵了,其实 Dalvik 虚拟机与我们常说的 Windows 平台的 VM 虚拟机有着很大的区别,下面我们来看看什么是 Dalvik 虚拟机指令是何 方神圣,它在 Android 程序破解中又有着怎样的地位? |