吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3374|回复: 18
收起左侧

[Android 原创] 如何动态调试来学习ARM汇编

  [复制链接]
havenow 发表于 2021-3-16 10:00
环境:
Ubuntu 16.04LTS
NDK r22
nexus 6p

配置ndk
Linux: export PATH=~/android-ndk-r22/toolchains/llvm/prebuilt/linux-x86_64/bin:$PATH

0x1 首先看代码:

源代码

源代码


预处理
clang -target armv7a-linux-android22 -E demo.c -o arm_demo.i
编译
clang -target armv7a-linux-android22 -S arm_demo.i -o arm_demo.s
汇编
clang -target armv7a-linux-android22 -c arm_demo.s -o arm_demo.o
链接
clang -target armv7a-linux-android22 arm_demo.o -o arm_demo

直接将汇编代码编译成可执行程序
clang -target armv7a-linux-android22 arm_demo.s -o arm_demo
所以我们可以将自己写的汇编文件生成可以可执行程序

开启gdbserver

开启gdbserver


0x 动态调试ARM汇编

下断1

下断1


下断2

下断2

在main函数第一条汇编指令出下断
target remote :1234
disassemble main
b *0xaaead410
c

免费评分

参与人数 6吾爱币 +11 热心值 +6 收起 理由
Creo + 1 + 1 补充给小白(我这样的):楼主反汇编时的工具是 GEF https://gef.readthedo.
fujianguo + 1 我很赞同!
qtfreet00 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
晟睿 + 1 + 1 热心回复!
haorne + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
技术少年 + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| havenow 发表于 2021-3-16 16:07
小木曾雪菜 发表于 2021-3-16 14:48
windows上有什么好办法交叉编译arm吗?

ndk有windows linux 和mac版本的,下载不同平台的就可以了
个人建议如果要调试还在选择linux或者mac
靜渁蓅堔 发表于 2021-3-16 13:00
数码小叶 发表于 2021-3-16 14:03
haorne 发表于 2021-3-16 14:13
内容精彩
zmj0321 发表于 2021-3-16 14:17
大佬牛逼,来学习一下
dpsw 发表于 2021-3-16 14:41
可以的 很赞
小木曾雪菜 发表于 2021-3-16 14:48
windows上有什么好办法交叉编译arm吗?
fujianguo 发表于 2021-3-16 22:26
大赞,在学习中!
shieep 发表于 2021-3-16 23:29
很厉害的样子
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 17:27

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表