前言:本來呢我對于這一塊不是特別的了解笔咽,但是最近找了一份新的工作霹期,里面很大一部分比重涉及了IOS逆向工程開發(fā)历造,而逆向工程開發(fā)是要以一部已經(jīng)越獄的蘋果機為基礎(chǔ)。所以我在這里粗略的談一下iOS越獄吭产。
序言:iOS越獄適用于iPhone臣淤,iPod touch,iPad以及Apple TV第二代上的iOS系統(tǒng)邑蒋。用戶越獄之后,可以適用通過一系列的管理器例如Cydia钱慢,Lydia是現(xiàn)在主流的越獄管理器。他主要目的是為越獄的iOS用戶提供一個高級包裝工具的圖形界面前端以安裝不被App Store接受的程序懒棉。它也是一個軟件倉庫的聚合器麦箍,帶有幾個被社區(qū)信任的源以避免對某個服務器的過度依賴挟裂。大部分軟件包的穩(wěn)定版本都可以在這些源中找到;不過用戶可以很容易地添加源诀蓉。這使得iOS開發(fā)可以盡量開發(fā)渠啤;任何有服務器的人都可以設(shè)置,儲存沥曹,管理和跟新它自己的軟件倉庫并和社區(qū)分享妓美。不過大部分的社區(qū)源是接受提交軟件包的,相比起獨立的源壶栋,這樣也可以幫助軟件獲得更多關(guān)注贵试。在2010年07月26日,美國國會圖書館正式修改數(shù)字千年版權(quán)法中的豁免條例毙玻,正式認可iOS越獄的合法性桑滩,而蘋果則推出了相應的對策,只要越獄了就不囊括在設(shè)備保修內(nèi)施符。由于越獄之后iOS系統(tǒng)對于你的設(shè)備失去了保護戳吝,許多通過Cydia安裝的應用程序都能獲取你系統(tǒng)的權(quán)限,可能從而導致你的設(shè)備損壞听哭。
ps:以上序言摘取于關(guān)鍵詞“iOS越獄”的百度百科詞條陆盘。
根據(jù)上面摘取于百度詞條的序言,我們了解到了iOS越獄的產(chǎn)生的原因與主要運用的管理程序太防,更了解到了為什么蘋果會對已經(jīng)越獄了的設(shè)備保修失效酸员。
對于越獄的利與弊我總結(jié)了以下幾點
利:1.可以通過Cydia安裝各類系統(tǒng)插件
? ? ? ? 2.更改系統(tǒng)外觀
? ? ? ? 3.隨意安裝應用
弊:1.惡意代碼運行的概率變大
? ? ? ? 2.系統(tǒng)的不穩(wěn)定性增加
? ? ? ? 3.不予以保修
通過以上分析,我個人建議越獄須謹慎酿愧,特別是自己日常所使用的手機邀泉,畢竟很多用戶資料儲存在內(nèi),稍不留意就被惡意程序所篡改甚至盜取用戶資料庞钢。
那么我們越獄后移除了沙盒(sandbox)機制了嗎屁置?
答案明顯是否定的蓝角,你從App Store上下載的應用都不能訪問類似于短信,聯(lián)系人等等使鹅,所以 不管你是越獄前還是越獄后患朱,沙盒透性都是不變的。
但是呢我們越獄后可以安裝系統(tǒng)app冰沙,可以利用系統(tǒng)app的權(quán)限去訪問同級別的類似短信,聯(lián)系人等等拓挥。
在未越獄之前侥啤,我們想查看沙盒里的內(nèi)容,只能通過Xcode來查看蚁鳖,一下是Xcode的模擬查看步驟:
1.需要一部未越獄的手機赁炎,連上Xcode。
2.然后在上面的windows的菜單欄中選中Devices and Simulators琅攘。
3.再然后在出現(xiàn)的選項欄中找到手機中已安裝的你需要查看沙盒的應用后選中
4.再點擊設(shè)置按鈕松邪,然后在出現(xiàn)的二級菜單中選中show Container
5.最后在出現(xiàn)的試圖中好好的查看該app的沙盒吧
如果我們想查看越獄設(shè)備的沙盒文件,那就更簡單了
我們可以利用iTools剧辐,iFunBox邮府,iFile等等褂傀,通過這些工具我們可以知道整個系統(tǒng)的文件目錄與文件結(jié)構(gòu)。
以下我們用iFunBox為例子解讀以下沙盒文件:
Application:這個目錄下面則是一些系統(tǒng)的文件
library:這個則是存儲的app的文件
MobileSubstrate:這個是最重要的文件
ProferenceBundles:這個目錄下面的應用是安裝了某個插件之后在設(shè)置里面出現(xiàn)控制菜單同波,方便控制插件
ProferenceLoader:配置加載功能插件菜單
User:存放用戶的數(shù)據(jù)
bin:命令行工具*(OS X新版本不開放叠国,需要打開權(quán)限)
var:存放日志,用戶數(shù)據(jù)冤狡,遺失數(shù)據(jù)等等
iOS文件權(quán)限
lrwxr-xr-x? 1 root admin? 32 Jun 10 11:22 Applications - > /var/stash/_.pPKHVh/Applications
綜上所訴悲雳,root是所有者,admin是所屬的用戶組浑测,如果后面是符號鏈接的話歪玲,會跟著真實的路徑。
越獄系統(tǒng)常見程序類型:
APP:系統(tǒng)app献烦,比沙盒安裝的應用權(quán)限更高
Preference Bundle:結(jié)合動態(tài)庫程序,來設(shè)置動態(tài)庫的條件,觸發(fā)行為等等
Dynamic Library:動態(tài)庫文件短条,修改系統(tǒng)的ipa
命令行工具:執(zhí)行命令行來查看手機狀態(tài)
Daemon:首部程序才菠,不斷監(jiān)聽系統(tǒng)行為,以及提供一些系統(tǒng)服務
以上是這章的全部內(nèi)容可都,結(jié)合各種渠道的資料與我個人的理解蚓耽,希望能對大家有所幫助。