fumioryoto/smali-handbook
GitHub: fumioryoto/smali-handbook
一套面向零基础初学者的 Smali 与 Android 逆向工程系统学习资料,帮助学习者从读懂 Smali 语法逐步进阶到掌握中级 Android 恶意软件分析技能。
Stars: 0 | Forks: 0
# Smali 学习包
本仓库是一套对新手友好的 Smali 与 Android 逆向学习资料。
旨在帮助零基础初学者实现从:
- “Smali 看起来完全看不懂”
到:
- “我能读懂 APK 的逻辑,能跟上寄存器的变化,并且理解一个方法在做什么”
## 包含内容
### 1. 主要手册
`handbook/` 文件夹包含了核心的学习路径:
- 逐章的新手手册
- 精校的单文件手册
- 30 天练习路线图
从以下文件开始:
- [handbook/README.md](./handbook/README.md)
- [handbook/Smali.md](./handbook/smali.md)
- [handbook/Practice_Roadmap_30_Days.md](./handbook/Practice_Roadmap_30_Days.md)
### 2. 第二版资料包
`handbook_v2/` 文件夹添加了结构化的参考资料:
- 学习计划
- 核心手册回顾
- Smali 备忘录
- 操作码快速参考
- JADX 与 Smali 的工作流
- 常见逆向模式
- 实验答案
- 案例研究
- 词汇表
从以下文件开始:
- [handbook_v2/README.md](./handbook_v2/README.md)
### 3. 第三版资料包
`handbook_v3/` 文件夹增加了更多高级主题:
- 异常处理
- switch 指令
- Kotlin 字节码模式
- 反射模式
- multi-dex 与加载器基础
- Native 库简介
- 高级案例研究
- 练习与答案
从以下文件开始:
- [handbook_v3/README.md](./handbook_v3/README.md)
### 4. 主索引
如果你希望用一个文件链接所有内容:
- [MASTER_INDEX.md](./MASTER_INDEX.md)
## 最佳学习顺序
如果你是完全的新手,请按照以下顺序学习:
1. [MASTER_INDEX.md](./MASTER_INDEX.md)
2. [handbook/README.md](./handbook/README.md)
3. [handbook/Smali_Handbook_Polished.md](./handbook/Smali_Handbook_Polished.md)
4. [handbook/Practice_Roadmap_30_Days.md](./handbook/Practice_Roadmap_30_Days.md)
5. [handbook_v2/02_Smali_Cheat_Sheet.md](./handbook_v2/02_Smali_Cheat_Sheet.md)
6. [handbook_v2/03_Opcode_Quick_Reference.md](./handbook_v2/03_Opcode_Quick_Reference.md)
7. [handbook_v2/04_JADX_vs_Smali_Workflow.md](./handbook_v2/04_JADX_vs_Smali_Workflow.md)
8. [handbook_v3/README.md](./handbook_v3/README.md)
## 你能从本资料包中学到什么
通过持续地学习,你应该能够:
- 理解 Smali 语法
- 跟踪寄存器流
- 读取方法签名和类型描述符
- 理解字段、方法调用、数组和分支
- 检查 APK 结构
- 在 JADX 和 Smali 之间切换分析
- 识别常见的逆向模式
- 理解初级到中级的 Android 恶意软件分析概念
## 重要声明
本资料包仅适用于:
- 授权的 Android 应用分析
- 恶意软件研究
- 防御性逆向工程
- 在安全环境中的学习与练习
本资料包不用于盗版、未经授权的篡改,或对您不拥有或未获授权评估的应用进行滥用。
## 建议的学习方法
遵循以下循环:
1. 阅读一个章节
2. 打开一个安全的 APK
3. 找到相同的模式
4. 用通俗易懂的语言解释它
5. 重复此过程
## 最后的建议
不要试图一次性记住所有内容。
你的真正目标很简单:
- 理解一个方法试图做什么
# 一旦这开始变得自然,Smali 就不再显得可怕了。
标签:Android逆向, APK逆向, Dalvik字节码, Hook技术, JADX, Kotlin逆向, Native库, Smali语言, 云资产清单, 备忘录, 多Dex, 安全学习, 安卓破解, 教程资源, 目录枚举, 移动安全, 网络安全, 逆向工程, 速查表, 隐私保护