iOS 越獄的原理是怎樣的?

我對越獄的理解是,獲取後台UNIX的root許可權,突破apple的限制。比如,可以調用UNIX的api而不是局限於apple提供的應用api,這樣就能編寫更靈活,更多功能的應用。問題是,黑客們是如何繞開apple限制的呢?大概思路是怎樣的?


越獄的含義 This is the process by which full execute and write access isobtained on all the partitions of the iPhone. It is done by patching/etc/fstab to mount the System partition as read-write. This isentirely different to an unlock. Jailbreaking is the first action that must be taken before things like non-official activation, and non-official unlocking, can proceed.

The original jailbreak also included modifying the afc service(service used by iTunes to access the filesystem) to give fullfilesystem access from root. This was later updated to creating a newservice (afc2) that allows access to the full filesystem.

Modern jailbreaks also include patching the OS kernel to get around code-signing and other restrictions

iphone有著3個不同的ROM,但是都叫FLASH的,都是可以不加電壓不拆出來就可以刷的!一個是類似硬碟功能的rom,一個是基帶的rom,一個是BOOTLOADER和iboot這些在一起的ROM,也就是機器的引導類似。

越獄的過程是這樣:將iphone進入DFU模式,利用XX程序引導iboot,然後向內存注入某個類minilinux,將他載入在iphone的內存中,劃分一段為ramdisk,再引導這個ramdisk的/etc/fstab,將原來的系統盤載入進去,取得系統讀寫許可權,改變整個目錄的讀寫許可權和屬性(因為iphone的MAC OS就是一個UNIX),然後將自己添加的命令和功能寫進系統盤中,達到XX的目的。當越獄一成功,斷電重啟,內存中的ramdisk也就不見了,引導權回到了硬碟裡面的操作系統了,所以,越獄沒什麼,就是提高系統使用的許可權,讓你可以裝些東西而已。但是越獄造成系統的不穩定,還是有可能發生的。

這個就是類似你電腦的硬碟,懂計算機知識的人都知道,硬碟中如果你重裝系統然後搞點什麼系統XX,類似vista的OEM欺騙,是完全沒問題的。XX失敗,重新來過。所以刷固件後的越獄是不會造成不可逆的。或者本身的軟體衝突,會造成白蘋果。唯一不可逆的只是你的資料備份問題。

關於bootloader的rom,其實是擦寫不了的,也無法注入什麼東西,唯一的辦法是改變運行的進程,類似劫持。所以,只能利用bug,沒bug的話,基本無法入手。也就無法取得基帶ROM的寫入許可權。

BL和iboot是不一樣的。。。。BL管基帶和系統通信的借口。iboot只管系統。越獄看iboot,基帶看BL。所以,,,BL和iboot是改不了的。

1代iphone的BL不是改,是利用腳本,搞漏洞,達到刷自製基帶的目的。而2代的BL,5.8也是這個道理,但是刷的是官方基帶,配合軟解程序。

黃雪和超雪說白了就是一個工作在seczone和操作系統中的小程序,也就是一個超級軟卡貼。所以也沒變化任何程序(注入式進程)

為什麼新系統出來了叫大家別越獄,dev的意思是和這次3GS一樣,怕把漏洞暴漏給蘋果了。所以才那樣說了那番話,只要有時間肯定搞的定了

你唯一的擔心不在於越獄,iphone也可以刷壞的,有一定機率可以在刷官方固件時把基帶字型檔刷壞,但是還沒見過把「硬碟」刷壞的。

基帶那個ROM就是字型檔存在的地方,手機維修人員稱的「字型檔」是指程序存儲器(Flash)。也是可以刷的俗稱硬降

BL和iboot是不一樣的。BL管基帶和系統通信的一個通道,在系統運行時,BL也在不斷地運行,檢查基帶的變化,生怕過程任何企圖XX了基帶。iboot其實就是DFU模式,恢復模式都集中在這裡。這2個都是整合在一起的。

關於bootloader可以參考下這文章:http://baike.baidu.com/view/661955.htm

本文出自:http://www.devdiv.com/thread-30374-1-1.html


來聽聽Evasi0n是怎麼幫你越獄iPhone的 http://www.36kr.com/p/201223.html


簡單的說下吧,IOS原版固件會有一些限制,比較主要的就是
1. 限制只能安裝通過蘋果簽名的應用程序
2. 限制應用程序只能在沙盒中運行,這個沙盒比較複雜,我簡單介紹下就是,所有通過AppStore安裝的應用程序,都安裝在某一個隨機生成的文件夾下,而這個應用程序只能讀取這個文件夾下所有的文件,而對這個文件夾之外的文件就無法訪問了,這是一種安全機制,但是同樣也就使得很多用戶想要的功能無法實現了。

而越獄,主要就是解決了這兩個限制,讓通過非官方途徑簽名的軟體可以安裝,並且能安裝在沙盒以外的路徑。
Cydia就是這樣一款軟體,安裝在系統軟體目錄下(當你按住應用程序圖標,圖標開始抖動,右上角出現叉叉的應用都是裝在沙盒中的,可以直接刪除,沒有叉叉的就是裝在系統軟體目錄下的)


推薦閱讀:

2014 年 12 月,你覺得 iPhone 相比 Android 設備具有哪些優勢?
安卓(包括定製)、iOS、WP 哪個最適合老年人使用?
wp系統真的被安卓ios甩遠了嗎 ?
為什麼需要分別為 Android 和 iOS 應用操作開發兩套操作方式?為什麼不能統一?
蘋果公司會把iOS故意設置的比較卡頓從而促使大家買新的iPhone 7么?

TAG:iPhone | iOS | iOS越獄 | 蘋果公司AppleInc | iOS開發 |