1. 信息反馈法 #
先运行目标程序,利用特定的反馈信息作为突破口,如错误信息字符串。字符串一般存储在 String.xml
或硬编码中,如果是前者,反汇编代码通过调用 id
的形式访问。可用 apktool
查看 String.xml
,获取 id
, 后者直接在反汇编代码中搜索。
2. 特征函数法 #
搜索特殊的函数如 Toast.MakeText.Show()
3. 顺序查看法 #
根据软件执行顺序依次查看,常用于病毒分析。
4. 代码注入法 #
手动修改 apk
文件的反汇编代码,加入 Log
,配合 LogCat
查看运行信息,常用于解密程序数据。
5. 栈跟踪法 #
动态调试方法,输出栈跟踪信息,查看函数调用序列理解方法执行流程。
Method Profiling(方法剖析) #
动态调试方法,常用于热点分析和性能优化,能记录每个函数占用CPU的时间和跟踪所有函数调用关系,提供比栈跟踪更详细的函数调用序列。
摘自非虫的《Android安全与逆向分析》。
End.💖
Since you've made it this far, sharing this article on your favorite social media network would be highly appreciated! If any questions, plz contact me!
Published