以往基於台灣所發售的 Apple Watch 並不支援心電圖 (ECG) 等功能,因此有些人會透過國外通路購買 (例如美國 Apple Store) 等,但若採購的是具有行動數據連線能力的 LTE 版本,在回到台灣之後便會發現無法正常透過 Watch App 開通行動數據服務,而聯繫行動通訊業者之後往往也會得到不支援國外發售的 Apple Watch 之類的服務,使得額外花費購買的 LTE 支援功能形同毫無用武之地。
早期這樣的問題可以透過親臨電信業者門市或是電話聯繫電信業者服務專線提供手錶之 EID 序號解決,但站長在幾個月前嘗試聯繫中華電信他們似乎已經不接受這樣的方式了,幾次往返都只是不斷重複跳針要求站長嘗試使用內建的 Watch App 進行開通或是聯絡蘋果客服,然而這些方法顯然無法解決問題。
而要想透過內建的 Watch App 進行一號多機 (One Number) 服務的開通,勢必得修改 iOS 系統內用於判定行動數據服務支援性的設定檔使 Watch App 不再阻擋開通才行,而 iOS 針對非使用者檔案的保護使得在沒有 Jailbreak (JB,越獄) 的情況下幾乎不可能對這些檔案進行修改,於是問題便陷入了死胡同裡。
而在前幾天沉寂已久的 Jailbreak 社群傳來新消息指出 iOS 14.3 以下版本已有可被利用的 LPE 漏洞 (該漏洞的開發團隊 ModernPwner 將其命名為 cicuta_virosa) 被釋出,在昨天 Brandon (@_bplank) 在其推特上發布了以此為基礎製作的新版 PlankFilza,此款檔案管理 App 可以透過利用前述的 LPE 漏洞暫時取得修改少數非使用者檔案的權限 (但還無法做到越獄,而且相關的設定檔也會很快被改回原狀,說得更直白一些只是暫時性允許使用者存取安全沙盒邊緣的檔案而已),而其可以修改的範圍正好就包含了我們所需要修改的設定檔,這為問題的解決帶來了一線曙光。
Table of Contents
警告
本篇文章所提供的教學與說明涉及針對 iOS 系統進行修改,若未正確操作可能導致你的手機無法正常運作,請務必在進行操作之前對你的手機建立完整的備份,並做好資料可能遺失或需要重設整台手機的心理準備,本篇文章之所有內容僅供參考,在進行任何操作前請務必再三確認並自行承擔所有責任與風險。
本篇文章使用的方法奠基於類似 Jailbreak (JB,越獄) 的技術,係透過利用 iOS 14.3 以下版本近日被發現的 LPE 漏洞取得針對系統檔案修改權限的方式進行,但與一般 Jailbreak 的主要差異為無法實際取得完整的越獄權限而是僅能針對少數的非使用者檔案進行暫時性修改,因此並不會影響網路銀行、行動支付等會檢查越獄狀態、ROOT 權限的 App 之正常運作。
本篇文章的操作難度較高,不建議熟悉度不足的使用者自行操作,本篇文章的內容也會因此而採取較為簡略的編寫方式而不針對較基礎的部分進行過多敘述,本篇文章為站長在試圖解決問題時留下的速記修改、擴增而成,因此部分內容可能會在近期持續修正與增補。
適用型號
本篇文章所使用的方法支援 iOS 14.3 以下版本(包含 iPhone 12 與更早之所有型號),詳細支援資訊如下:
相容的 Apple Watch 型號
- Apple Watch (Series 6, GPS + Cellular) North America variant
Model A2293 (40mm) / A2294 (44mm)
支援各 watchOS 版本 - Apple Watch (Series 5, GPS + Cellular) North America variant
Model A2094 (40mm) / A2095 (44mm)
支援各 watchOS 版本 - Apple Watch (SE, GPS + Cellular) North America variant
Model A2353 (40mm) / A2354 (44mm)
支援各 watchOS 版本
(註:Apple Watch Series 4 North America variant 無支援任何我國電信業者選用之 LTE 頻道,因此無法在台使用行動數據服務。)
相容的 iPhone 型號
- iPhone 12 / 12 Pro / 12 Pro Max / 12 mini
支援 iOS 14.3 以下版本 - iPhone 11 / 11 Pro / 11 Pro Max
支援 iOS 14.3 以下版本 - iPhone XS / XR
支援 iOS 14.3 以下版本 - iPhone SE (第二代)
支援 iOS 14.3 以下版本 - 其他舊款 iPhone 型號建議使用目前較成熟的越獄方式進行。
使用工具
本篇教學所使用的工具包含下列:
- 最新版本的 PlankFilza
- 執行 iOS 14.3 (含) 或以下版本的 iPhone
(站長測試時使用的為執行 iOS 14.3 正式版本的 iPhone 11 Pro) - 執行任意版本 watchOS 的 Apple Watch LTE
- 最新版本的 AltStore
Stage 1-準備 ipa sideload 環境
由於 PlankFilza 屬於第三方自製的 iOS App,本身並未經過簽章且其性質也不可能被允許在官方 App Store 上架,因此只能透過開發者帳戶採 ipa sideload 的方式將其安裝到 iPhone 上,據站長所知目前已有多種方法都可以做到免越獄 ipa sideload,而站長測試時使用的方法則是 AltStore。
AltStore 安裝前整備
在安裝 AltStore 前你會需要的程式有 iCloud 與 iTunes,而且限定必須使用 Win32 傳統應用程式發行版本而不能使用透過 Microsoft Store 市集取得的 iTunes 版本,如果你不確定你目前使用的 iTunes 與 iCloud 版本是否符合要求的話,建議你先行移除這兩個應用程式並重新安裝此處提供的版本:
此外,由於在進行 ipa sideload 時需使用開發者身分對 ipa 進行簽章才可順利安裝到手機上,因此過程中會使用到 Apple ID 的帳戶名稱與密碼,建議你可以考慮申請一組新的 Apple ID 專供 AltStore 使用以避免潛在的資安疑慮。
安裝 AltStore
在完成前述安裝前整備後便可前往 AltStore 的官方網站取得最新版本的 AltStore,Windows 使用者請點選紅框處進行下載,並將取得的檔案解壓縮後執行其中的 setup.exe 進行安裝即可。
iPhone 連結整備
接下來請使用原廠或其他品質良好之 Lightning 傳輸線將 iPhone 連線到裝有 AltStore 的電腦上,若電腦提示是否要信任此 iPhone、iPhone 提示是否要信任此電腦請全部選取「信任」並將 iPhone 解鎖使電腦可以讀寫 iPhone 上的檔案。
在 iTunes 偵測到 iPhone 後請打開 iTunes 並開啟下圖中的「透過 Wi-Fi 與此 iPhone 同步」選項,之後按下下方的「套用」按鈕以套用此設定變更。
將 AltStore 安裝到 iPhone 上
接下來請在通知區域中找到 AltStore 圖示並點選該圖示一下以叫出選單,選取 Install AltStore 並在彈出的選單中選擇你的 iPhone。
在收到安裝完成訊息後請重新啟動你的 iPhone,此時主畫面或 App 資料庫中應該會出現一個名為 AltStore 的新 App。
Stage 2-安裝 PlankFilza
接下來則是需要安裝 PlankFilza,你可以透過原作者 Brandon (@_bplank) 的推特帳戶取得最新版本的 ipa 安裝檔 (值得注意的是由於 GNU 授權條款的限制,原作者目前將 PlankFilza 的 ipa 分成兩部分發布,在繼續之前請自行利用壓縮軟體將 framework 壓縮檔內的文件補進 plankfilza.ipa 內的 \Payload\PlankFilza.app\Frameworks 目錄中)。
將完整的 PlankFilza ipa 檔案放入 iPhone 中後,請執行剛剛安裝的 AltStore 並切換到 My Apps 分頁並點選左上角的「+」號。
安裝完成後請重新啟動 iPhone,此時主畫面上或 App 資料庫中應該會出現一個名為「Filza」的新 App。
Stage 3-修改設定檔
接下來請執行 Filza App,此時畫面上會顯示 Exploiting 表示 PlankFilza 正在利用本次被發現的 LPE 漏洞暫時取得修改非使用者檔案的權限,這大約需要 2 至 3 分鐘的時間,而此期間內由於需要進行大量運算處理,手機的溫度可能會因此出現明顯的提高。
當畫面出現目錄結構時就表示系統已經準備就緒,請移動至 /var/mobile/Library/Preferences 目錄。
在畫面中可以找到七個以 com.apple.carrier 開頭的設定檔,請逐一進入並在進入後將樹狀結構展開,找到 RemoteCardProvisioningSettings 項目下的 SupportedSKUs,在將其展開後將 Item 0 的值由「SKU_EU」修改為「SKU_NA」,之後點選右上角的儲存退回樹狀目錄再修改下一個檔案。
至於為什麼要把 SKU_EU 改成 SKU_NA 實際上理由並不複雜,從 Series 4 以來 Apple Watch 在硬體上實際上每一款都有兩種不同的電路型號 (Series 3 則有三種),例如 44mm 錶殼的 Series 6 就有 A2294 與 A2375 兩種,兩者主要差異在於 LTE 模組所支援的頻道略有不同,前者是專屬於北美洲的型號 (NA 就是 North America 的意思),後者則是歐洲、亞洲等其他地區所使用的型號 (EU 就是 European Union 歐盟的意思)。
而在台灣銷售的 Apple Watch 就屬於 SKU_EU,因此電信公司在設定檔上也會限定僅有 SKU_EU 的 Apple Watch 才能正常開通 One Number 服務,而此處的修改就是要將電信公司設定檔內註明的 SKU_EU 修改為符合我們手上美版 Apple Watch 所屬的 SKU_NA 以讓 Watch App 停止阻擋 One Number 服務的申請。
Stage 4-一號多機 (One Number) 服務開通
此時打開內建的 Watch App 就會發現本來反灰的「設定行動網路」連結變成橘色且下方的「您的 Apple Watch 不支援此行動網路」提示訊息也消失了。
此時立即點選「設定行動網路」就能開始進行標準的一號多機服務開通程序。
點選「設定行動網路」按鈕後就會出現各家通訊業者所屬的 One Number 開通介面了,請依指示操作即可。
在完成電信業者的開通程序後 iPhone 就會開始自動透過網路取得 Apple Watch 所使用的 eSIM 資訊並將其安裝到 Apple Watch 上,過程中請確保網路連線暢通並且不要對手機進行任何操作以免失敗。
所有程序都完成之後的畫面看起來會是這樣的:
在開通完成之後也可以在關於本機畫面中見到相關的資訊 (M07H3LL/A 為站長的美版 Apple Watch Series 6 44mm 太空灰鋁金屬之型號):