【Android】ida 逆向

前言

本文也是根据各位大神的文章参考总结,简化了,并不是很详细,后面有不足的地方再补充

adb 连接

  1. adb devices 查看连接设备列表

List of devices attached
emulator-5554 device

下面 emulator-5554 就是设备的序列号, device 表示设备已连接并处于正常状态。如果设备未正确连接或出现其他问题,可能会显示其他状态,如 unauthorizedoffline 等,这通常需要进一步调试和解决。

  1. adb push android_server /data/local/tmp
  2. adb shell su
  3. chmod 777 android_server
  4. cd /data/local/tmp
  5. ./android_server
  6. adb forward tcp:23946 tcp:23946 端口转发
  7. adb shell am start -D -n com.qiyi.xhookwrapper/com.qiyi.xhookwrapper.MainActivity 启动并挂起程序,需要程序的包名和类名

app运行时直接暂停,等待附加调试

  1. 启动 DDMS,建立vm连接
  2. 启动 ida pro 附加进程
    在这里插入图片描述
    在这里插入图片描述
    由于我们上面设置的就是 23946 所以就直接用默认的就可以,没必要去修改

点击 debug options 勾选如下选项
在这里插入图片描述
点击OK开始附加

8.输入 jdb -connect com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=8700 继续进程

Android 根目录下的 default.propro.debuggable 设置为1getpropsetprop),强制所有app都可以进行调试,这样就不用修改app并重新打包了,

  • 雷电模拟器直接就是 1
  • 夜神模拟器需要自己去用工具修改,关键修改还是临时的,重启失效,蛋疼。。。。。
  • 修改工具 Android修改ro.debuggable 的四种方法 用的是这位大神的工具


注意

  • adbddms 版本要一致,如果不一致,启动 ddms 时,将会杀死刚刚 adb shell 进程,导致端口断开
  • Android 根目录下的 default.propro.debuggable 设置为 1getpropsetprop),强制所有app都可以进行调试,这样就不用修改app并重新打包了
  • ro.secure=1 是 adb 降权配置 , 默认为 1

  • ro.debuggable=0 可调式配置 , 默认为 0

IDA 快捷键

空格键:切换文本视图与图表视图
ESC:返回上一个操作地址
G:搜索地址和符号,在IDA调试页面的时候,我们可以使用S键快速跳转到指定的内存位置
N:对符号进行重命名
冒号:常规注释
分号:可重复注释
Alt+M:添加注释
Ctrl+M:添加标签
Ctrl+S: 查查看段的信息
F5 快捷键可以将arm指令转化成可读的C语言,帮助分析 需要时 32 位的
Shift+F12 快捷键,速度打开so中所有的字符串内容窗口
Ctrl+S 快捷键,有两个用途,在正常打开so文件的IDA View视图的时候,可以查看so对应的Segement信息

代码数据切换
C 代码
D 数据
A ascii字符串
U 解析成未定义的内容
X 查看交叉应用
F5 查看伪代码
Alt+T 搜索文本
Alt+B 搜索十六进制

参考连接

  • 19
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一些常用的Android逆向分析工具,它们可以用于反编译、调试、内存分析、Hook等方面: 1. jadx:一款开源的Java反编译工具,可以将Android应用程序的APK文件反编译为Java源代码,方便进行分析和修改。 2. APKTool:一款开源的反编译和重新打包工具,可以将Android应用程序的APK文件解压为资源文件和代码文件,方便进行修改和重新打包。 3. Dex2jar:一款用于将Android应用程序的DEX文件转换为JAR文件的工具,可以用于反编译和分析Android应用程序。 4. Frida:一款跨平台的动态插桩工具,可以用于修改应用程序的行为和数据,具有强大的Hook和脚本化功能。 5. Xposed:一款基于FridaAndroid插件框架,可以用于Hook应用程序的Java层和Native层代码,实现各种功能。 6. Burp Suite:一款流行的渗透测试工具,可以用于拦截和修改Android应用程序的网络请求和响应,进行漏洞挖掘和安全测试。 7. JD-GUI:一款Java反编译工具,可以将Android应用程序的APK文件反编译为Java源代码,方便进行分析和修改。 8. Android Debug Bridge (ADB):一个调试工具,可以用于与Android设备建立连接,进行调试、文件传输、进程管理等操作。 9. Android Studio:一款集成开发环境,可以用于开发、调试、构建和打包Android应用程序,具有强大的调试和分析功能。 当然,这里列举的只是一些常用的Android逆向分析工具,还有很多其他的工具和库,如IDA Pro、Ghidra、Radare2、JEB等,都可以用于Android逆向分析和漏洞挖掘。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值