re-arm
Installation
SKILL.md
ARM 架构逆向(Cortex-M/A、Thumb、AAPCS)
何时使用 / 何时不用
- 用:非 Android 场景的 ARM——嵌入式裸机/固件(Cortex-M0/M3/M4/M7、Cortex-A)
- 用:Thumb/ARM 指令集切换、AAPCS 调用约定识别、M 系向量表入口定位、位置相关代码重定位
- 用:MMIO 外设寄存器交叉分析(0x4000xxxx 外设区、LDR 立即数池)
- 不用:Android
.so(走 [[re-android-native]]) - 不用:通用 AArch64 Linux 用户态程序(走 [[re-binary-core]] 通用底座,本技能只补 ARM 特有语义)
- 不用:只需解包固件看内容([[re-fw-extract]])/ 分析文件系统配置([[re-fw-rootfs]])/ 整体启动固件([[re-fw-emulate]])
- 不用:RISC-V / x86 等其他架构(走 [[re-binary-core]])
工具准备
所有工具先验证再使用。静态分析可免沙箱;qemu 动态执行默认沙箱 + 网络隔离([[re-analyze/platform-tips]] 最高原则)。