apktool是一个为逆向工程师打造的用于反编译Android二进制APP的工具。它可以将资源解码为几乎原始的形式,并在修改之后重建它们。本书介绍的apktool版本为:2.4.0。
在网上下载apktool.bat、apktool.jar,放在同一个目录下,然后把需要反编译的apk也放在这个目录下,运行如下命令(demo4.apk为反编译的apk文件)。
C:\dex2jar-2.0\APKTool>apktool d demo4.apk
在当前目录下形成一个名为demo4的文件夹,点击进入,如49所示。
49 demo4文件夹中的内容
在这里比较关注的是smail文件夹,里面的结构类似于Android工程文件src的目录结构,进入找到相应目录下的对应smail文件,即可通过修改smail文件,在里面加入恶意代码,然后通过Smali2java转化为java文件,再编译成apk文件,这就是所谓的二次编译的黑客行为。
smail文件是一种基于Android的汇编语言,具有自己的语法规则,感兴趣的读者可以到网上查找。
星云测试
http://www.teststars.cc
奇林软件
http://www.kylinpet.com
联合通测
http://www.quicktesting.net