Featured image of post 安卓逆向入门三

安卓逆向入门三

安卓逆向入门三

学习关键词: Jeb、动态调试、Log插桩

学习链接:《安卓逆向这档事》五、1000-7=?&动态调试&Log插桩

JEB学习

环境配置

下载JEB

JEB (Java Editor for Android) 是一款用于安卓应用逆向工程的工具,它可以帮助开发者分析和修改安卓应用的字节码。

动态调试

熟悉IDA的逆向人应该知道动态调试是什么,这里指的是Android动态调试,

修改方法:

修改debug权限

**方法一:**在AndroidManifest.xml里添加可调试权限

1
android:debuggable="true"

image-20250626153816877

**方法二:**XappDebug模块hook对应的app

**方法三:**Magisk命令(重启失效)

1
2
3
4
5
6
7
1.  adb shell #adb进入命令行模式

2.  su #切换至超级用户

3.  magisk resetprop ro.debuggable 1

4.  stop;start; #一定要通过该方式重启

**方法四:**刷入MagiskHide Props Config模块

  • 一般来说,在4选项中如果有ro.debuggable那就直接修改

  • 没有的话就选5

端口转发以及开启adb权限

  • 版本号点击七次开启开发者模式并开启adb调试权限
  • 有时候重新进入模拟器的时候usb调试会取消,需要手动开启

下断点

ctrl+b下断点

debug模式启动

1
adb shell am start -D -n com.zj.wuaipojie/.ui.MainActivity

adb shell am start -D -n adb shell am start -D -n 包名/类名 am start -n 表示启动一个activity am start -D 表示将应用设置为可调试模式

6643aba11f49d750402b98478138126

Jeb附加调试进程

常用快捷键: F6 进入方法 F6 跳过方法 F7 从方法中跳出来 R 运行到光标处

627c47033b7d9648cd05a40c7471073

  • 运行到断点

5d85411c54e3edf29265b7062be3e5a

  • 步进

b0b853bdee7eeba384f25b1e1891a99

得到参数值:5qKA5q61DAUM

Log插桩

定义:Log 插桩是在反编译 APK 后的 Smali 代码中插入日志输出语句,通过Log.v()等方法将关键变量、函数调用过程打印到系统日志,适用于无法动态调试或需要追踪后台逻辑的场景。

1
invoke-static {对应寄存器}, Lcom/mtools/LogUtils;->v(Ljava/lang/Object;)V

  • 在应用里随机输入字符串,然后查看日志

前途似海,来日方长。

<