本文主要讲解代码注入的两种方式:FrameWork注入、dylib注入
代码注入
一般修改原始的程序,是利用代码注入
的方式,注入代码就会选择利用FrameWork
或者Dylib
等三方库的方式注入。
查看Mach-O文件
在了解注入前,我们首先需要了解ipa包中的静态库是如何注入的,有以下两种方式查看Mach-O可执行文件
- 1、终端命令:
otool -l WeChat
- 2、MachOView 二进制文件分析工具(注:分析时可能出现无法分析的情况,可以通过 CMD + o 打开)
Mach-O
文件中主要看load Commands
(即加载命令集),从这里可以看出动态库的加载等。其中大部分格式为:LC_LOAD_DYLIB(xxx)
,是在指定路径下加载xxx,如下所示
所以,综上所述,如果需要注入代码,是以动态库的形式注入