iOS中的ipa重簽名(逆向必備)
2018開(kāi)篇,這回要講的是iOS重簽名,網(wǎng)上重簽名的工具太多了,我試用了一下,都還挺好使。但是,你不知道,我是個(gè)喜歡裝逼的人嗎?用工具怎么夠酷呢?對(duì),裝逼得用終端。接下來(lái)的操作都是在終端中進(jìn)行,開(kāi)始你的裝逼之旅吧!
一、重簽名準(zhǔn)備工作:
•找到開(kāi)發(fā)者證書(shū)和配置文件:
列出所有開(kāi)發(fā)者證書(shū)文件:
security find-identity -p codesigning -v
•找一個(gè)開(kāi)發(fā)環(huán)境配置文件生成entitlements.plist文件,后面簽名要用到:
security cms -D -i XX.mobileprovision > profile.plist /usr/libexec/PlistBuddy -x -c 'Print :Entitlements' profile.plist > entitlements.plist cat entitlements.plist
•把準(zhǔn)備好的開(kāi)發(fā)環(huán)境配置文件復(fù)制到XX.app文件夾下:
cp XX.mobileprovision Payload/XX.app/embedded.mobileprovision
•修改包Info.plist中的Bundle Identifier與配置文件中的Bundle Identifier保持一致:
/usr/libexec/PlistBuddy -c "Set :CFBundleIdentifier com.XX.XX" Payload/XX.app/Info.plist
•移除之前的簽名文件夾:
rm -rf Payload/XX.app/_CodeSignature
二、iOS重簽名:
•重簽名framework:
/usr/bin/codesign --force --sign 84A4B9F1F902462CC33D01E9FF72C1BA04A97653 --entitlements entitlements.plist /Payload/XX.app/Frameworks/JSONModel.framework
•重簽名app執(zhí)行文件:
/usr/bin/codesign --force --sign 84A4B9F1F902462CC33D01E9FF72C1BA04A97653 --entitlements entitlements.plist Payload/XX.app/XX
•查看app簽名信息:
codesign -vv -d Payload/XX.app
注意:重簽名有順序,先把framework和dylib簽名,最后再簽名:XX.app/XX,順序弄錯(cuò)了,就算簽名成功也可能會(huì)安裝失敗!
三、調(diào)試和打包:
•ios-deploy 安裝與調(diào)試:
ios-deploy -d -b Payload/XX.app
出現(xiàn)如下success字樣,就證明成功了!
過(guò)程中如果遇到錯(cuò)誤提示:“Error 0xe8000067: There was an internal API error. AMDeviceSecureInstallApplication(0, device, url, options, install_callback, 0)”
錯(cuò)誤原因:可能存在有framework或者dylib未簽名的情況。
解決方案:把a(bǔ)pp文件夾下面的framework全部簽名。
•打包(package):
zip -qry ppdest.ipa Payload rm -rf Payload/
總結(jié)
以上所述是小編給大家介紹的iOS中的ipa重簽名(逆向必備),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!
- iOS實(shí)現(xiàn)電子簽名
- iOS mobileconfig配置文件進(jìn)行簽名的配置方法
- iOS 超級(jí)簽名之描述文件的實(shí)現(xiàn)過(guò)程
- iOS應(yīng)用腳本重簽名的實(shí)現(xiàn)方法
- iOS APP簽名機(jī)制原理詳解
- 詳解IOS微信上Vue單頁(yè)面應(yīng)用JSSDK簽名失敗解決方案
- Android和iOS包批量重簽名
- iOS安全防護(hù)系列之重簽名防護(hù)與sysctl反調(diào)試詳解
- iOS 基于AFNetworking下自簽名證書(shū)配置的方法
- iOS之Https自簽名證書(shū)認(rèn)證及數(shù)據(jù)請(qǐng)求的封裝原理
- IOS 簽名錯(cuò)誤codesign failed with exit code 1解決方法
- ios的簽名機(jī)制詳解
相關(guān)文章
解決ios微信下vue項(xiàng)目組件切換并自動(dòng)播放音頻問(wèn)題
最近在做一個(gè)英語(yǔ)答題項(xiàng)目,項(xiàng)目需求是通過(guò)答題取的成績(jī) , 答題的題型是分為,聽(tīng)音選圖,看圖選詞和填空題.下面小編給大家?guī)?lái)了ios微信下vue項(xiàng)目組件切換并自動(dòng)播放音頻的解決方案,需要的朋友參考下吧2018-01-01詳解iOS中Button按鈕的狀態(tài)和點(diǎn)擊事件
這篇文章先是給大家介紹iOS中Button按鈕的狀態(tài),而后又詳細(xì)介紹了iOS中按鈕點(diǎn)擊事件處理方式,本文介紹的很詳細(xì),有需要的朋友們可以參考借鑒,下面來(lái)一起看看吧。2016-09-09iOS開(kāi)發(fā)技巧之狀態(tài)欄字體顏色的設(shè)置方法
有時(shí)候我們需要根據(jù)不同的背景修改狀態(tài)欄字體的顏色,下面這篇文章主要給大家介紹了關(guān)于iOS開(kāi)發(fā)技巧之狀態(tài)欄字體顏色的設(shè)置方法,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧2018-08-08iOS開(kāi)發(fā)教程之XLForm的基本使用方法
XLForm 是最靈活且最強(qiáng)大的創(chuàng)建動(dòng)態(tài)表單的iOS庫(kù),下面這篇文章主要給大家介紹了關(guān)于iOS開(kāi)發(fā)教程之XLForm的基本使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-04-04iOS應(yīng)用開(kāi)發(fā)中StoryBoard搭建UI界面的基本使用講解
這篇文章主要介紹了iOS應(yīng)用開(kāi)發(fā)中StoryBoard搭建UI界面的基本使用,代碼基于傳統(tǒng)的Objective-C,需要的朋友可以參考下2016-02-02Swift實(shí)現(xiàn)iOS應(yīng)用中短信驗(yàn)證碼倒計(jì)時(shí)功能的實(shí)例分享
這篇文章主要介紹了Swift實(shí)現(xiàn)iOS應(yīng)用中短信驗(yàn)證碼倒計(jì)時(shí)功能的實(shí)例分享,開(kāi)啟和關(guān)閉倒計(jì)時(shí)功能的步驟實(shí)現(xiàn)比較關(guān)鍵,需要的朋友可以參考下2016-04-04IOS 基礎(chǔ)之nil,NULL,NSNULL區(qū)別詳解
這篇文章主要介紹了IOS 基礎(chǔ)之nil,NULL,NSNULL區(qū)別詳解的相關(guān)資料,需要的朋友可以參考下2017-04-04詳解iOS開(kāi)發(fā)中UIPickerView控件的使用方法
這篇文章主要介紹了詳解iOS開(kāi)發(fā)中UIPickerView控件的使用方法,代碼基于傳統(tǒng)的Objective-C,需要的朋友可以參考下2015-11-11xcode8 關(guān)閉控制臺(tái)不打印不信息的解決方法(圖文詳解)
這篇文章主要介紹了xcode8 關(guān)閉控制臺(tái)不打印信息的解決方法,本文圖文并茂給大家介紹的非常詳細(xì),感興趣的朋友參考下吧2016-10-10