安卓逆向入门

安卓逆向入门

建设自己的逆向环境

  • 环境准备

  • 夜神/逍遥模拟器, 安卓版本选择

  • 用xp root模拟器, 安装fiddler,配置证书, 安装justtrust me抓包

  • 安装 Mdex 脱壳工具, np管理器,为了签名

      对于加壳的文件 目的是为了拿dump之后的dux文件,
    
  • windows配置jdk, java环境, jadx-gui使用

  • 准备好编译和反编译的 BombAPK.py

实例demo

准备好一个加固的apk 和 一个没有加固的 apk , 打开我们安装好的jadx-gui, 将加固的apk拉到jadx_gui, 查看这个apk是否加固(加固和未加固的区别在于是否看到包里面的代码)

查看加固apk

出现这种abc的就代表这个apk被加固了,再看看没有加固的apk

可以直接查看

我的目的是将这个apk的密码给改掉, 怎么操作呢?

先安装好这个apk

我们通过上面的jadx_gui知道这个apk没有被加固,所以我们可以通过py直接解混淆

python BombAPK.py -t 1 -i ctf0.apk

-t 1 代表解混淆

解完之后,会出现一个这样的文件夹

然后可以通过我们之前打开的jadx_gui的apk,对比找到需要修改的地方, 解混淆出来之后的语法是smail的,但是并不影响用Java定义的函数

可以比对按照jadx_gui这个层级去搜索这个文件.

然后通过记事本打开这个smail文件, 搜索这个函数名

将里面的密码改为 123456, 保存

然后通过py再反编译, 这次用的是 -t 2

python BombAPK.py -t 2 -i ctf0-debug

发现报错了,然后将报错的提示复制到百度上搜索一下, 发现一篇文章, 按照他的修改

找到文件,在记事本修改

修改完之后再编译试试

成功之后将文件拉到模拟器上的时候,发现安装不了,因为是没有对apk文件进行重新签名, 这时候我们就需要通过np管理器重新签名.

签名完成后会生成一个新的apk

这时候就可以测试是否修改密码成功了.

成功. 做个简单的记录

posted @ 2022-06-19 13:25  陈科科  阅读(388)  评论(0编辑  收藏  举报