- 对本书的赞誉
- 前言
- 基础篇
- 第 1 章 Android 中锁屏密码加密算法分析
- 第 2 章 Android 中 NDK 开发
- 第 3 章 Android 中开发与逆向常用命令总结
- 第 4 章 so 文件格式解析
- 第 5 章 AndroidManifest.xml 文件格式解析
- 第 6 章 resource.arsc 文件格式解析
- 第 7 章 dex 文件格式解析
- 防护篇
- 第 8 章 Android 应用安全防护的基本策略
- 第 9 章 Android 中常用权限分析
- 第 10 章 Android 中的 run-as 命令
- 第 11 章 Android 中的 allowBackup 属性
- 第 12 章 Android 中的签名机制
- 第 13 章 Android 应用加固原理
- 第 14 章 Android 中的 so 加固原理
- 工具篇
- 第 15 章 Android 逆向分析基础
- 第 16 章 反编译神器 apktool 和 Jadx
- 第 17 章 Hook 神器 Xposed
- 第 18 章 脱壳神器 ZjDroid
- 第 19 章 Native 层 Hook 神器 Cydia Substrate
- 操作篇
- 第 20 章 静态方式逆向应用
- 第 21 章 动态调试 smali 源码
- 第 22 章 IDA 工具调试 so 源码
- 第 23 章 逆向加固应用
- 第 24 章 逆向应用经典案例分析
- 第 25 章 Android 中常见漏洞分析
- 第 26 章 文件加密病毒 Wannacry 样本分析
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
15.2 逆向基本知识
要学习逆向,除了有利的工具,还需要了解一些基本知识,比如 smali 语法、arm 指令、Android 中的 NDK 开发等,因为这些都是在逆向过程中经常会用到的知识。
smali 语法是逆向的基础核心知识,有的人觉得这个是否是一门新的语言?其实不然,它的语法非常简单,熟悉起来非常方便。比如后面章节会利用 smali 语法手动插入代码,而并不是需要手动编写 smali 代码,可以先用 Java 编写好功能,再反编译成 smali 代码,再手动插入即可。但是简单的 smali 语法还是需要看懂,比如赋值、方法调用等操作,具体 smali 语法知识,在后面章节会详细介绍。
arm 指令就不多说了,在大学期间就有这门课,不过很多人可能在项目开发中并没有用到,但是 arm 指令知识对于逆向来说也是至关重要,也是最为复杂的,现在很多应用为了更加安全就把代码都放到了 so 中,这样在逆向 so 文件的时候就必须要了解 arm 指令,才能大致看懂逻辑代码,才能继续后面工作。arm 指令也并非那么复杂,多看多读就会慢慢熟练了。相关命令在后面章节会详细介绍。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论