Jailbreak

**iOS 越獄**（英語：**iOS Jailbreaking**）是取得 iOS 裝置的 Root 權限的技術手段。iOS 系統的 Root 使用者對除 Apple 特定私有行程之外的其他行程不開放，使用 Root 使用者執行的行程在行程樹中的 PID 為 0。程式設計師在 iOS 中挖掘出一些可以將行程提權至 PID0 的漏洞（例如 Task For PID0）。利用 Root 使用者執行的行程意味著可以任意讀取裝置其中的 APFS 分割區表和核心快取位址，擁有一個使用者可以隨意控制的 PID0 行程還不能稱之為一個完整的越獄。之後還需要利用 Bypass（旁路）手段繞過 Apple 在 iOS 系統中設定的其他安全防護措施，將 APFS 或 HFS + 檔案系統中的 ROOTFS 分割區重新掛載（Remount）為可讀寫（R/W），從而達到添加二進位檔案和守護行程的目的。通常大眾使用者認為能夠正常使用 Cydia 才能被稱為越獄，但其實這種說法是不正確的。但通過此軟體可以完成越獄前不可能進行的動作，例如安裝 App Store 以外未經過簽章的應用、修改 SpringBoard、執行 Shell 程式、使有運營商鎖的裝置利用卡貼解鎖後通過替換設定檔形式實現在地化（例如「去除 + 86」，解鎖 FaceTime 功能）。

越獄軟體分發商店 Cydia 的創始人 Jay Freeman 在 2010 年 10 月估計，全球大概有 10% 的 iPhone 曾進行過越獄。當 iOS 裝置越獄後，使用者可對系統進行編輯或是運行不被蘋果公司所驗證的軟體。

## 種類

目前對越獄的完美程度，業界開發人員給出了四個類別：

* **不完美越獄**（Tethered Jailbreak），指的是，當處於此狀態的 iOS 裝置開機重新啟動後，之前進行的越獄程式就會失效，使用者將失去 Root 權限，需要將裝置連接電腦來使用（如特定版本下的紅雪（redsn0w））等越獄軟體進行引導開機以後，才可再次使用越獄程式。否則裝置將無法正常啟動。
* **完美越獄**（Untethered Jailbreak），指裝置在進行重啟後，越獄狀態仍被完整保留。
* **半不完美越獄**（Semi-tethered Jailbreak），指裝置在重啟後，將遺失越獄狀態，並恢復成未越獄狀態。如果想要恢復越獄環境，必須連接計算機並在越獄工具的引導下啟動來恢復越獄狀態。
* **半完美越獄**（Semi-untethered Jailbreak），指裝置在重啟後，將遺失越獄狀態；而若想要再恢復越獄環境，只需在裝置上進行某些操作即可恢復越獄。

## 用途

* **使用第三方軟體：**越獄的主要原因之一是可以擴充蘋果 App Store 的有限的應用程式。蘋果會檢查即將發布在 App Store 中的應用程式是否符合 iOS 開發者許可協定，然後再將其發布在 App Store 上。越獄後可以下載並安裝蘋果不允許出現在 App Store 上的應用程式。Cydia 上的應用程式並不需要完全按照 App Store 上的指導方針和要求，其中不少是適用於 iOS 或其他應用程式的擴充和客製化。使用者安裝這些應用程式，更多被稱作「外掛程式」（Tweaks） 。這些外掛程式可以達到個性化的目的，客製化使用者介面和字型，為 iOS 裝置添加新功能等（蘋果公司近幾年的 iOS 系統更新所添加的新功能有很多都是從越獄外掛程式中借鑑的） 。並且可以存取檔案系統和安裝命令列工具，使得在 iOS 裝置上的開發工作更加容易 。在允許安裝第三方輸入法的 **iOS 8** 發布之前，很多中國的 iOS 使用者也因為安裝第三方的中文輸入法而越獄 iOS 裝置，因為它們比原生輸入法更容易使用。在中國大陸，通過越獄取得的 root 權限被某些軟體用於安裝盜版軟體，並造成了部分人存在越獄等於盜版的誤解。
* **解除限制：**越獄也可以非正式地解開運營商對 iPhone 的鎖定，使得能夠使用其它運營商提供的服務。基於軟體的解鎖，每一個不同的基頻版本都對應了一個不同的解鎖工具。
* **修復漏洞：**2011 年 7 月 15 日，越獄工具 JailbreakMe 3.0 利用了一個 Safari 瀏覽器在顯示 PDF 文件時達到越獄的目的。這也就意味著 iOS 使用者可能在不知不覺中遺失自己的個人資訊或者被安裝惡意軟體。在蘋果發布 4.3.4 更新修補該漏洞之前，越獄開發者 comex 就已經先行修補了這個漏洞。

## 動機

將 iOS 裝置越獄的原因是為了突破蘋果公司及其 App Store 的限制，其中最主要的原因是為了能安裝那些未遭蘋果公司稽核的應用程式。

蘋果公司對應用程式稽核程式的原因不僅局限於安全問題，有時也可能有意的禁止某些應用程式上架，（比如蘋果公司禁止普利茲獲獎漫畫家所編寫的應用程式上架，並聲稱其違反了開發許可協定。除外，協定上也明確規定禁止上架含有「嘲笑、醜化公眾人物」之類的應用程式。因此為了能夠成功執行被禁止上架的應用程式，使用者不得不依靠越獄手段來脫離此類限制。

## 歷史

僅僅在 iPhone 上市的幾天後的 2007 年 7 月，開發人員就發布了第一個越獄工具，並且很快，一個僅支援越獄後 iPhone 的遊戲應用就發布了。2007 年 10 月，JailbreakMe 1.0（也被稱為 AppSnapp）就正式開始提供 iPhone OS 1.1.1 的 iPhone 和 iPod touch 越獄了 。2008 年 2 月，Zibri 發布了 ZiPhone，可以越獄 iPhone OS 1.1.3 和 1.1.4 的工具。

iPhone Dev Team 發布了一系列的越獄工具。2008 年 7 月，PwnageTool 提供針對 iPhone OS 2.0 的 iPhone 3G 和 iPod touch 的越獄，更新包括作為越獄軟體中主要的第三方安裝程式 Cydia；QuickPwn 可以用來越獄 iPhone OS 2.2 版本的裝置；在蘋果推出 iPhone OS 3.0 時，Dev Team 發布了一個更簡單的針對於 Windows 和 Mac 的越獄工具 redsn0w，並繼續更新 PwnageTool。更新版本的 redsn0w 也可以越獄 iOS 4 和 iOS 5 的版本。

## 安全

2009 年 11 月，21 歲的澳大利亞學生編寫第一個 iPhone 蠕蟲 iKee。在其接受媒體採訪時表示，他之所以編寫出 iOS 蠕蟲病毒，是為提升人們對安全問題的重視。同時，也表示越獄後 iOS 裝置可使用 SSH 協定進行通訊。

2011 年 7 月 15 日，蘋果公司封鎖了一個被 JailbreakMe 3.0 利用的漏洞。德國聯邦資訊安全辦公室稱，已發現 JailbreakMe 3.0 可利用的 PDF 顯示方面的漏洞，會使 iOS 使用者的個人資訊在不知不覺的情況下被盜取或是被控制下載惡意軟體。

部分駭客可遠端控制已越獄 iOS 裝置，以便其安裝惡意軟體或竊取使用者資料。

義大利網路安全公司 Hacking Team 向執法機構出售駭客軟體並建議警方將其安裝至已越獄的 iOS 裝置中，以便在進行位置跟蹤。

## 法律地位

越獄 iOS 系統的法律地位受到不同國家的法律的影響，例如：保護數位版權管理（DRM）機制的法律。但許多國家並沒有這樣的法律。除此之外國際性的條約影響到越獄法律的發展，例如：1996 年世界智慧財產權組織（智慧財產權組織）著作權條約要求條約的國家締約國頒布有關規避 DRM 規則的法律。美國的實施是「 數字千年著作權法案」（DMCA），其中包括為違法侵權目的豁免程式，包括越獄。
雖然蘋果公司不贊同使用者自行越獄，但越獄社群一般也沒有受到蘋果公司的法律威脅。目前至少有兩名傑出的越獄者在蘋果公司獲得職位。有時候蘋果公司也經常（半開玩笑的）感謝越獄社群幫助 iOS 系統檢測安全漏洞。蘋果公司發布對于越獄 iOS 系統的的支援文章中聲稱：「拒絕為已經越獄的 iPhone、iPad 或 iPod touch 提供保修服務」，不過實際越獄並不會導致失去保固，可藉由重刷 iOS 裝置即可獲得保固。

### 澳大利亞

2010 年，澳大利亞政府表示，澳大利亞越獄 iOS 系統的法律地位中的合法地位尚不明確，其很可能是受「2006 年著作權修正法」影響。

### 加拿大

2012 年 11 月，加拿大政府修改「著作權法」，其中包括禁止篡改數字鎖，但除了軟體操作以外。

2008-2011 年，加拿大政府修改「著作權法案」（C-60 號法案，C-61 號法案和第 C-32 號法案），內容包括禁止篡改數字鎖，以及對限制性更強的 C-11 的提出初步建議， 但目前這些法案被擱置了。

2011 年，加拿大著作權學者麥可・蓋斯（Michael Geist）將越獄 iOS 系統的人行為視為違反著作權法的行為。

### 紐西蘭

紐西蘭的著作權法允許使用技術保護措施（TPM）的規避方法，但這些只適用於法律，並且建立在非侵犯著作權的範圍內。目前，紐西蘭政府將「2008 年著作權（新技術）修正法」的一部分內容添加到「1994 年著作權法」。

### 新加坡

目前在新加坡越獄 iOS 系統可能處於合法狀態，但新加坡當局政府並未對此公開聲明。

## 裝置

### 首次越獄

### 停止支援的裝置

### 支援中的裝置

## 相關條目

* Chronic dev team
* Greenpois0n
* 盤古越獄
* evasi0n
* Root (Android)

## 參考注釋