也许每个人出生的时候都以为这世界都是为他一个人而存在的,当他发现自己错的时候,他便开始长大
少走了弯路,也就错过了风景,无论如何,感谢经历
0x01 前言
Android4.4之前使用的是 Dalivk虚拟机,而Smali是用于Dalivk的反汇编程序的实现
Smali是用于Dalvik(Android虚拟机)的反汇编程序实现,汇编工具(将Smali代码汇编为dex文件)为smali.jar,与之对应的baksmali.jar则是反汇编程序(https://bitbucket.org/JesusFreke/smali/downloads/)
Smali支持注解、调试信息、行数信息等基本Java的基本特性,是很接近Java编译在JVM上的中间语言了,一般用来做Android程序的逆向工程
有时候破解应用时,需要通过全局搜索一些关键的字符串来找突破点,但是却不是万能的,所以需要加一些调试代码来观察信息,有一个通用的方法就是加入log代码,来追踪代码的执行逻辑,添加代码,就是修改smali代码,添加日志信息即可;静态分析技术,所以就用代码注入技术来跟踪执行逻辑;动态分