1. 程式人生 > >iOS程式破解:獲取應用商店上應用的ipa程式包

iOS程式破解:獲取應用商店上應用的ipa程式包

        首先肯定不是獲取自己的IPA包。

  為什麼要獲取ipa包呢?比如,在仿寫一些程式時,避免不了獲取它的圖片素材等等,那麼最快也是最有效的方式就是獲取原程式的ipa包。更或者,你想要逆向分析某一款APP時,那麼只有獲取了ipa後才能進行class-dump,ida等等後續工作。

通過越獄裝置

  如果有越獄手機,那麼就變得很簡單,只需要從AppStore下載到越獄手機,然後用iTools/PP助手等工具將ipa包備份到電腦即可,下圖是使用PP助手:

     

       如果只是為了獲取圖片素材,那麼獲取到ipa包(字尾修改為.zip)解壓後,顯示包內容即可。但是如果想進一步進行逆向分析,還需要使用Clutch等工具進行砸殼,因為從AppStore下載的程式都是加過密的。

通過iTunes下載

itunes版本12.5.5.5,在AppStore中下載


下載完成後,點選"資料庫"就可以看到下載的App了


右鍵點選"在Finder"中檢視,就可以看到我們下載的IPA檔案了



使用未越獄的手機

  在iOS8之前使用iTools等可以直接匯出ipa包,但是iOS9之後就不能。(我用的是MAC系統,如果大家可以的,還煩請告訴我一聲,在次謝謝)。

使用電腦

此方法只是用來獲取企業賬號釋出的APP。在一些情況下,公司可能釋出一款違背蘋果稽核規則的APP,不能上架AppStore,那麼可以使用企業賬號釋出在自己的網站上,然後通過微信、微博或者掃二維碼的方式分發推廣應用。

1. 我們就可以直接將他們推廣的網址輸進電腦瀏覽器,這是會獲得plist檔案,或者瀏覽器提示無法開啟並給出itms-services:///?action=download-manifest&url=...一大串提醒。

如果是plist檔案,那麼用Xcode開啟plist檔案,將下圖中紅色框住的部分即是ipa的下載路徑,複製後直接用瀏覽器開啟即可。


如果是一串itms-services:///?action=download-manifest&url=...這樣的提醒,那麼“url=“後面的連結直接就是plist檔案的下載地址,同樣是複製用瀏覽器開啟即可,後續操作和上面一樣。

2. 現在程式的保護意識都加強了,可能伺服器會判斷你的裝置如果不是手機則拒絕下載,直接返回失敗,那麼這種情況,可以將MAC下的瀏覽器通過修改userAgent偽裝成手機的Safari瀏覽器。下面以火狐瀏覽器為例:

A)首先開啟Firefox在位址列輸入:about:config,這時會有提醒,直接點選IPRomise!即可


B)在搜尋裡面搜尋:general.useragent.override,第一次是搜尋不到的,然後再空白區域右擊->New->String


C)在彈出的框裡面輸入general.useragent.override->OK


D)再在彈出的框中輸入具體的值,比如:iPhone6,iPhone5s,iPhone4s(目前我只有這三款手機,歡迎新增,獲取方法見下面程式碼)。

iPhone6,iOS9.0.2:Mozilla/5.0 (iPhone; CPU iPhone OS 9_0_2 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Mobile/13A452

iPhone5s,iOS9.0.2:Mozilla/5.0 (iPhone; CPU iPhone OS 9_0_2 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Mobile/13A452

iPhone4s,iOS7.1.1:Mozilla/5.0 (iPhone; CPU iPhone OS 7_1_1 like Mac OS X) AppleWebKit/537.51.2 (KHTML, like Gecko) Mobile/11D201

如果上面三款不符合你的要求,下面貼上獲取手機userAgent的程式碼,可以根據需要來獲取自己需要的手機型號,注意:要真機除錯:

- (void)viewDidLoad {
    [super viewDidLoad];
    UIWebView *webView  = [[UIWebView alloc] initWithFrame:CGRectZero];
    NSString *userAgent = [webView stringByEvaluatingjavaScriptFromString:@"navigator.userAgent"];
    NSLog(@"--%@--",userAgent);
}


最後,關閉瀏覽器再次開啟進行1的操作。企業賬號釋出的應用都是沒有加密的,直接使用class-dump,ida/Hopper Disassembler分析即可,當然圖片素材也是可以獲得的。

綜上,通過越獄手機不僅可以獲得AppStore上的APP,更可以獲得企業賬號釋出的APP,如果是AppStore上的APP且想進行逆向分析,還需要使用clutch工具進行砸殼。如果沒有越獄手機,可以通過瀏覽器獲取企業賬號釋出的APP,有可能需要偽裝成手機瀏覽器,其實如果對方伺服器添加了簽名驗證,那麼即便是偽裝成手機瀏覽器也不能獲取了,所以,如果自己在釋出企業app時,如果不想被破解,最後使用簽名驗證的方式。


相關推薦

iOS程式破解:獲取應用商店應用ipa程式

        首先肯定不是獲取自己的IPA包。   為什麼要獲取ipa包呢?比如,在仿寫一些程式時,避免不了獲取它的圖片素材等等,那麼最快也是最有效的方式就是獲取原程式的ipa包。更或者,你想要逆向分析某一款APP時,那麼只有獲取了ipa後才能進行class-dump,i

在Chrome中使用非應用商店安裝的擴充套件程式

一、說明:     最近將Chrome更新到69版本,結果發現“百度網盤助手”這個擴充套件程式又被禁用了(這個擴充套件程式沒在Chrome的應用商店中釋出,而Chrome正常不允許應用商店以外安裝的擴充套件程式執行)。     像之前一樣,通過組策略把擴充套件程式的ID加

iOS 客戶端獲取七牛傳token

生成 edi signed 解析 ring request self 在線 err 一、官方參考文檔: 1.上傳策略http://developer.qiniu.com/article/developer/security/put-policy.html 2.上傳憑證(即u

win8系統應用商店預設應用安裝位置更改方法(圖文)

微軟終於在win8系統推出了自己的應用商店,而且原來越多的軟體廠商和開開發者開始想應用商店提交一些優質安全的應用,這對於小白使用者來說是非常好的一個安全保障。win8或者win8.1應用商店的軟體下載預設位置都在同一個地方,使用就了會導致系統分割槽龐大,導致系統速度變慢,

Android跳轉到應用商店及常見APP對應

/** * 啟動到應用商店app詳情介面 * * @param appPkg 目標App的包名 * @param marketPkg 應用商店包名 ,如果為""則由系統彈出應用商店列表供使用者選擇,否則調轉到目標市場的應用詳情介面,某些應用商店可能會失敗 */ p

如何看待又一位深圳 24 歲程式設計師倒在工位?是否程式設計師下班晚、加班多成了常態?

這是職業的焦慮還是環境如此? 如何避免過度加班帶來的身體損傷? 8月25日下午,深圳紅孩兒資訊科技有限公司的程式設計師程某倒在了自己的崗位上。據同事反應,他當天的臉色不是很好,當時正在寫程式碼,起身倒水時暈倒在地不省人事。 程某經常加班到凌晨,有時甚至到早上五六點鐘,第

iOS應用程式之如何獲取版本號實現應用更新

{ resultCount = 1; results = ( { artistId = 301724683; artistName = Citibank; artistViewUrl = "http://itunes.apple.com/us/artist/citibank/id3017246

如何優雅的iOS專案到應用商店

在小夥伴假裝想學習的情況下讓我寫個部落格,他去假裝學一學。也考慮到一些開發者的確遇到這個問題,所以Do it。最近不開心,廢話不多說。直接進正文。 假設你已經在你們公司註冊的開發賬號申請過了app專案,並且你已經用【叉扣的】完成了xx版本的開發。現在想進行上線需要怎麼做呢。

iOS App傳到蘋果應用商店App Store教程

一、開始準備: 1、開發者賬號(付費的APPID賬號)。 2、已經完成的app專案(無bug)。 二、上架步驟: 1、登入:https://developer.apple.com/ 2、建立app Id 3、建立證書請求檔案(csr檔案) 4、建立釋出證書(cer檔案) 5、建立Provisioning P

java解析xml文件練習——通過應用獲取應用圖標即其他信息(基於魅族應用商店

fin vma tdm row con smartd enter music close 1、解析包名數據文件(txt文件),並生成包名數組: package jsouphtml; import java.io.BufferedReader; import j

自己封裝framworks傳到應用商店報錯

script uil iss strong find lac targe 內容 link 參考鏈接: http://www.jianshu.com/p/60ac3ded34a0 http://ikennd.ac/blog/2015/02/stripping-unwanted

【原創】Windows應用程式報錯常用分析方法總結

在日常使用Windows的過程中,經常會遇到應用程式不能正常啟動、關閉等使用問題。對於Windows來說,解決這些問題的方法比較多,大多時候我們可以通過百度或谷歌搜尋來解決。但更多的時候,我們需要找出背後的原因,也要掌握分析問題和解決問題的方法。 分析應用程式異常的問題,一般的出發點有兩個,第一從應用程式本

Android 獲取所有已安裝應用程式

//因為我的手機是華為手機所以過濾掉了華為,大家可以按需求過濾 public void getAppProcessName(Context context) { //當前應用pid final PackageManager packageManager

nginx反向代理後應用程式如何獲取客戶端真實IP?

nginx反向代理後應用程式如何獲取客戶端真實IP? 2017年10月30日 10:32:03 it_0101 閱讀數:6200 標籤: tomcatjavawebnginx應用伺服器servlet 更多 個人分類: 學習經驗伺服器 版權宣告

大話西遊手遊蘋果ios退款流程 蘋果app應用商店退款方法

IOS蘋果退款失敗了還能退嗎?這個的話我是不敢保證的,一個賬號有很多因素會影響成功率.我也不能保證百分之百能給大家挽回損失.不過我會盡全力去幫助大家.不過就算id被拉黑沒有退款資格,也不用擔心.我這裡會為大家講講如何去養好一個ID 蘋果系統針對蘋果使用者的一項政

從0開始編寫一個應用(android端+小程式端+伺服器端)第二步 專案經理完成邏輯圖。(:產品經理的思考)

專案經理跟客戶收到基本需求後,要完善客戶的需求。因為絕大數客戶對於網際網路或者軟體不是很懂,只能提出他們想要的東西,即專案必須要實現的功能。但是沒有一個完整的專案流程,這需要專案經理去完善,細化,改善功能。 下面開始記錄專案經理工作。 上一篇客戶說到他的專案構思

Docker在Linux執行NetCore系列(五)更新應用程式 Docker在Linux/Windows執行NetCore文章系列

轉發請註明此文章作者與路徑,請尊重原著,違者必究。         本篇文章與其它系列文章不同,為了方便測試,新建了一個ASP.Net Core檢視應用。       備註:下面

世界第一個第三方成人Appstore:Opera移動應用商店

據Register訊息稱蘋果通過了Opera的請求,允許Opera移動應用商店訪問Appstore的內容了,不過只允許限制級使用者訪問Opera移動應用商店中限制級的蘋果應用,換句話說,就是世界上第一個第三方成人Appstore出現了!(可以這麼說吧?) 蘋果使用者偷著樂吧,

劉偉Derick-IOS應用開發(iPhone iPad 應用、遊戲)瀟灑的程式設計師

儲存圖片到photo library與儲存video到photo library的API差不多,但也有所不同。圖片是可以直接把資料寫入photo library,而video需要先把資料存到臨時檔案然後,然後通過臨時檔案的路徑去轉存到photo library。我們直接來看相

iOS 【檢視和更改您的應用程式的狀態和可用性】

檢視和更改您的應用程式的狀態和可用性 當您的應用程式在商店中可用時,其狀態為“準備出售”,如綠色狀態指示器所示  。任何其他狀態意味著您的應用程式不在商店中。您可能故意將該應用從銷售中刪除,例如,如果您正在等待發布應用以對應營銷活動。本章介紹如何控制應用程式何時可用,以