Android APP 反编译入门学习笔记


参考资料

内容 资料/链接 说明
ApkTool + dex2jar + JD-GUI (Mac)反编译Android APK详细操作指南 Apk 反编译工具(入门级,较繁琐)
Jadx Github 源码 Apk 反编译工具(推荐)
脱壳原理介绍 APK脱壳简介 调试 → 找到入口点 → 脱壳 → 修复
ApkScan APK查壳工具PKID 查壳工具

【加壳】 也称 “加固”, 是指在一个主程序的外面再包裹上另一段代码,用于保护里面的主程序不不被非法修改或反编译。它们一般都是先于主程序运行、拿到控制权,然后完成它们保护主程序的任务。

学习记录

练习 1 (无壳 - 已完成)

条项 说明
APK 3.6.4-xxx-store.apk
目标 找到登录 Token
工具 ApkTool + dex2jar + JD-GUI

对 APK 解包 unzip 3.6.4-xxx-store.apk 得到 12 个 classesN.dex 文件:

使用 d2j-dex2jar 工具把这 12 个 dex 文件转换成 jar 包 ./d2j-dex2jar.sh *.dex

使用 JD-GUI 反编译这些 jar 包,找到 Token 在 classes9-dex2jar.jar 里面的 com.xxx.store.BuildConfig.class

练习 2 (无壳 - 已完成)

条项 说明
APK xxx.go.v4.v4.1.2.apk
目标 找到激活 Token
工具 Jadx

直接使用 Jadx 打开 3.6.4-xxx-store.apk 即可实现反编译。

xxx.pilot.active.xxxActiveController.classxxx.pilot.active.b.class 可以找到特征非常明显的激活 Token ,激活逻辑在 xxx.pilot.active.b.class 下面,对该 Token 实现了调用。

练习 3 (有壳 - 未完成)

条项 说明
APK 3.6.4-xxx-store-梆梆加固.apk
目标 找到登录 Token
工具 ApkScan + Jadx

使用 ApkScan 查壳,发现 APK 使用了【梆梆企业版】进行加固:

未完待续……


文章作者: EXP
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 EXP !
 上一篇
POJ 解题报告 POJ 解题报告
北大 POJ 题库:高精度算法、图遍历、最短路径算法、增广路算法、并查集、哈夫曼树、动态规划、叉积和点积
2019-12-02
下一篇 
WEB 渗透靶场整合 WEB 渗透靶场整合
DVWA推荐新手首选靶场,配置简单,需下载 phpstudy 和靶场文件包,简单部署之后即可访问。 包含了常见的web漏洞(php的),每个漏洞分为四个等级,每个等级都有源码查看,最高等级的源码是最安全的。 DVWA靶场源码下载:http
2019-10-22
  目录