本文主要是基于之前的文章《iOS逆向03》app重簽名,向重簽名后的app中注入動態庫。
- 創建動態庫
添加動態庫
接下來創建一個Cocoa Touch Framework,將動態庫命名為InjectCode,并在動態庫中創建一個類,在類的 +load 方法中輸出一段語句,來驗證動態庫是否加載到app中。
Xcode運行工程后,動態庫InjectCode.frameworkapp會被復制到app包的Frameworks文件夾下。
- 手動注入
我們要做的是將我們注入的動態庫的加載信息添加到Mach-O文件的Load Commands部分。可以使用yololib實現。
yololib WeChat Frameworks/InjectCode.framework/InjectCode
- 腳本注入
在之前的腳本后面添加一段shell腳本
#注入自己的動態庫的路徑
INJECT_FRAMEWORK = "Frameworks/InjectCode.framework/InjectCode"
yololib "$TARGET_APP_PATH/$APP_BINARY" "$INJECT_FRAMEWORK"