微信脫殼後的IPA包【砸殼有兩種方式(Clutch、dumpdecrypted),有興趣的能夠先去了解一下,我也會在後續的文章中分享這兩種工具的使用,咱們如今暫時從PP助手上面下載IPA包】 #####操做流程 1.解壓wechat.ipa【ipa文件本質就是個zip包】 微信
2.找到Payload文件夾下的Wechat.app 3.如何判斷一個APP是否被砸過殼砸過殼的App會有兩個特色:沒有簽名信息和已經解過密了app
- 查看.app文件的簽名信息
$codesign -vv -d WeChat.app
- 查看.app文件裏面可執行文件的加密信息 獲取給可執行文件的加密信息
$otool -l WeChat | grep crypt
由於cryptid的值爲0,表明已經被解密了【砸殼是PP助手幫咱們作的,後面我會在越獄篇介紹如何本身動手】
4.開始手動去重簽名ide
一開始我強行簽名這些插件,安裝到手機上時會出現以下報錯 工具
後來我在Monkey的簽名腳本中,發現他們是直接把這兩個文件夾直接刪掉
- 首先簽名須要你有蘋果開發者帳號的開發證書
- 查看咱們能夠用來簽名的證書信息
$security find-identity -v -p codesigning
- 簽名動態庫【這裏須要把.app/Frameworks目錄下的全部動態庫進行簽名】 codesign -fs "iPhone Developer: XXX (XXXXXXXX)" mars.framework codesign -fs "iPhone Developer: XXX (XXXXXXXX)" MMCommon.framework codesign -fs "iPhone Developer: XXX (XXXXXXXX)" MultiMedia.framework codesign -fs "iPhone Developer: XXX (XXXXXXXX)" WCDB.framework ""裏面是咱們本身的證書,這裏我就隱藏了用XXX替代
$chmod +x WeChat
加密
新建一個工程,使用真機編譯,從生成的APP包中獲取描述文件 插件
經過咱們剛纔生成描述文件中,查詢出權限信息
而後使用XCode新建一個Entitlements.plist文件把權限信息拷貝進來,這樣就獲得咱們本身的權限文件了$security cms -D -i embedded.mobileprovision
3d
codesign -fs "iPhone Developer: XXX (XXXXXX)" --no-strict --entitlements=Entitlements.plist WeChat.app