Android逆向流程
2026-09-13 20:12:59
# Android逆向
工具地址:
- kstools https://github.com/fourbrother/kstools
- 52爱盘工具 https://down.52pojie.cn/Tools/Android_Tools/
- AndroidKiller (下面同理都在爱盘里面有)
- apkIDE
- apktools
- dex2jar
- jadx
- jd-gui
kstools 爆破 签名校验
有一些程序有签名的校验,当你修改完,打包的时候后,可以安装,但是打开闪退,或者弹出提示框,大部分就是有签名校验。
下载kstools工具,没有加固的就使用kstools.bat,直接搞定。注意appt的配置,我是用的apkIDE里面的appt。
AndroidKiller 集成软件
AndroidKiller 集成了常用的软件,配上可视化操作,十分好上手,就是里面的插件有点久了,需要自己手动替换为爱盘里面的最新版插件。
- 配置java环境,配置最新版的apktools.
- 把爆破签名后生成的apk,拖进去,可自己动反编译。
- 如果未修改签名,有一些app无法编译成功,会在编译死,需要关闭再次打开才可以,最好先爆破一下
- 修改smail文件,保存
- 编译,然后连接手机,安装
- 测试是否可用
单独使用工具
apktools 资源编译
1 | java -jar apktool_2.3.1.jar d -f KeyValueTest.apk -o KeyValueTest |
dex2jar 代码编译 或者 jadx 代码编译
dex2jar
将apk文件修改后缀为zip然后解压或者直接解压,找到classes.dex
1 | d2j-dex2jar.bat classes.dex |
生成了classes-dex2jar.jar 一个jar包。
jadx
jadx更加方便快捷,打开bin文件中的jadx-gui.bat然后直接选择APK即可,虽然jadx也可反编译资源文件,但有时候并不准确
jd-gui 查看jar包
启动 jd-gui
1 | java -jar jd-gui.jar |
把生成的classes-dex2jar.jar 拖进去,就可以查看源码了,但是不能修改,可以帮助理解
重新打包签名
打包
1 | java -jar apktool_2.3.1.jar b KeyValueTest |
目录下会生成build和dist目录,dist 就有新的apk
生成keystore证书
1 | keytool -genkey -v -keystore myApp.keystore -alias myApp.keystore -keyalg RSA -validity 30000 |
| key | dec |
|---|---|
| keytool | 工具名称(固定写法) |
| )-genkey | 执行的是生成数字证书操作(固定写法) |
| -v | 打印生成证书的详细信息 |
| -keystore myApp.keystore | 生成的证书的文件名为”myApp.keystore”(根据需求,设置你的证书名) |
| alias myApp.keystore | 证书的别名为”myApp.keystore”。(一般和上面的文件名相同,可以不同,但要记好,签名时会用**(A)**) |
| -keyalg RSA | 生成密钥文件采用的算法为RSA(固定写法) |
| -validity 3000 | 该数字证书的有效期为30000天,30000天之后该证书将失效 |
签名
1 | jarsigner -verbose -keystore myApp.keystore -signedjar android-release-signed.apk android-release-unsigned.apk myApp.keystore |
| key | dec |
|---|---|
| jarsigner | 工具称名(固定写法) |
| -verbose | 显示出签名详细信息 |
| -keystore myApp.keystore myApp.keystore | 要使用的签名证书文件 |
| -signedjar android-release-signed.apk | 签名后的文件名 |
| android-release-unsigned.apk | 要签名的文件 |
| myApp.keystore | 别名,即(A)步中的别名 |
我这个还是比较简单的流程,还有深入的smail学习,因为逆向主要还是修改smail语句。或者大佬的修改so文件,还有hook,去签名校验,还有去壳等。
路还是很长的。
例如:smail,baksmail这个软件我还没有使用到。
参考: