AndroidKiller介绍与使用

APK属于压缩文件,不可以通过直接解压的方式来获取明文内容,需要借助AndroidKiller这类的第三方的工具。

1

AndroidKiller介绍、环境配置

AndroidKiller是一款经常用来反编译APK的工具。

1.“AndroidKiller”的文件夹目录结构,如图1.1所示,双击打开“AndroidKiller.exe”文件,此时,会弹出一个窗口,如图1.2所示,提示没有Java SDK环境,直接点击OK进入AndroidKiller工具界面。

android layout反编译 安卓反编译工具 apkkiller_反编译

                               (图1.1)

android layout反编译 安卓反编译工具 apkkiller_反编译_02

                               (图1.2)

2.选中“主页”菜单栏下的“配置”选项,如图1.3所示。

android layout反编译 安卓反编译工具 apkkiller_webapp打包成apk后无法显示图片_03

                               (图1.3)

3.点击“配置”选项后弹出窗口,点击“Java”图标配置JDK安装路径。点击编辑框右边的“文件夹”图标,找到之前安装的JDK目录,依次选择“jdk1.8.0_111”文件夹下的“bin”文件夹,点击确定按钮,如图1.4所示。

android layout反编译 安卓反编译工具 apkkiller_反编译_04

                               (图1.4)

4.接下来我们需要了解AndroidKiller工具里面的“Android”选项卡下的三个常用功能,如图1.5所示。

(1)编译:点击这个编译按钮,将反编译后的文件重新打包成.apk文件。

(2)插入代码管理器:把常用代码进行封装,方便逆向时快速添加smali代码。

(3)apktool管理器:主要是用来管理和更新apktool工具。

android layout反编译 安卓反编译工具 apkkiller_反编译_05

                               (图1.5)

注意

如果apktool工具更新不及时,那么在反编译新的APK文件时,就会报错,造成无法反编译的情况,需手动更新apktool工具。

2更新apktool工具


1.打开apktool工具,点击“Android”选项,如图1.6所示。

android layout反编译 安卓反编译工具 apkkiller_android获取apk名称_06

                               (图1.6)

2.找到APKTOOL管理器,点击,这时会弹出一个窗口,如图1.7所示。

android layout反编译 安卓反编译工具 apkkiller_反编译apk添加短信验证接口_07

                               (图1.7)

3.点击“添加”按钮后会弹出一个窗口,在弹出的“添加APKTOOL”窗口中,有名称、路径和参数三个添加项,如图1.8所示。

android layout反编译 安卓反编译工具 apkkiller_反编译_08

                               (图1.8)

首先名称项,填写你要添加的新版apktool文件名,文件名一定要有意义,格式一定是apktool+版本信息,这样做的目的是为了方便之后选择对应的插件;其次是路径项,找到要添加的新版apktool工具所在路径;第三个是参数,此处不填,如图1.9所示。

android layout反编译 安卓反编译工具 apkkiller_android layout反编译_09

                               (图1.9)

完成后点击确定,但此时还没有完成,切记在下方选中更新后的apktool工具,如图1.10所示。

android layout反编译 安卓反编译工具 apkkiller_反编译apk添加短信验证接口_10

                               (图1.10)

3更新插件


1.更新插件的意义:

在逆向分析APP时,有时需要插入smali代码,打印日志信息、记录方法调用流程,或者是添加弹窗、加载so库等,这些代码都是固定的,再将其封装成一个个插件来使用。

2.更新插件流程:

(1)首先,更新插件时先将原有的插件进行删除。

(2)打开AndroidKiller工具所在路径,找到“cfgs”文件夹,如果这个文件夹中存放有插件的“injectcode”文件夹,则将此文件夹进行删除。

(3)接下来进行更新,可以看到这里又出现一个新的“injectcode”文件夹,这个文件夹里面存放的就是更新后插件文件,如图1.11所示。

android layout反编译 安卓反编译工具 apkkiller_android获取apk名称_11

                               (图1.11)

4小结


通过本节课的学习,我们了解了AndroidKiller的环境配置,这里需要注意的是在配置JDK路径时,一定要配置到“bin”目录。

在学习更新apktool工具时,要注意在填写名称时,格式一定是apktool_+版本信息,而后在添加新工具的时候,一定要选中更新后的apktool工具。最后需要注意的是,在进行更新插件操作时,一定要将原有的插件先进行删除。