安卓逆向-JADX | APKTOOL | 签名

JADX

(把apk jar class dex等直接转化为java代码)
通过文件名可以先自己猜一下文件的作用
利用好搜索功能

安卓逆向-JADX | APKTOOL | 签名_第1张图片


APKTOOL

(.dex是Android虚拟机可执行的字节码文件,通过反编译成可读文件,APKTOOL反编译apk包里面的所有内容,而不光是解压 .dex->.smali)
命令行操作
apktool d test.apk         # 解压
apktool b 目录             # 重新打包
大厂安全人员可能利用APKTOOL的漏洞,让我们反编译APP失败。方法:1.搞老版本 2.等APKTOOL升级 3.自己改APKTOOL(开源)

关于smali

  • .smali可以和.dex相互转换
  • 修改APK代码通常修改smali文件(重新修改.java源代码 重新编译的困难太大)
  • baksmali.jar smali.jar可以对dex 和 smali文件做转换
Dalvik 虚拟机(Dalvik VM)是 Google 专门为 Android 平台设计的一套虚拟机。区别于标准 Java 虚拟机 JVM 的 class 文件格式,Dalvik VM 拥有专属的 DEX 可执行文件格式和指令集代码。反汇编后 DEX 文件会产生.smali 后缀的代码文件,smali 代码拥有特定的格式与语法,smali 语言是对 Dalvik 虚拟机字节码的一种解释

安卓逆向-JADX | APKTOOL | 签名_第2张图片

反编译后的AndroidManifest.xml

  • APP权限配置
  • 程序入口
  • 逆向的关键线索
    安卓逆向-JADX | APKTOOL | 签名_第3张图片
标签在这里插入图片描述
标签

安卓逆向-JADX | APKTOOL | 签名_第4张图片

签名

keytool jarsigner 工具是JAVA JDK自带的
用keytool生成证书(命令行)
keytool -genkey -keystore my-release-key.keystore -alias my_alias -keyalg RSA -keysize 4096 -validity 10000
用生成的证书给apk签名(命令行)
jarsigner -sigalg MD5withRSA -digestalg SHA1 -keystore my-release-key.keystore -signedjar
com.dahuodong.veryevent_4.6.2_60_sign.apk com.dahuodong.veryevent_4.6.2_60.apk my_alias

安卓逆向-JADX | APKTOOL | 签名_第5张图片
安卓逆向-JADX | APKTOOL | 签名_第6张图片

未签名APK不能在安卓手机上安装,APP在启动时会对签名校验,要逆APP,跳过校验

你可能感兴趣的:(安卓逆向-JADX | APKTOOL | 签名)