Checkm8後時代於鑑識領域的影響

2019-11-17 by 高田鑑識

iOS裝置取證

在數位取證領域上,iOS提取教學一直都是最短的章節,早期在沒有Passcode的情況下,還有機會透過Lockdown plist方式完成iTunes備份提取,但Apple在iOS11後增加了USB Restriction安全性補強,無Passcode提取的道路則越來越窄。而Android取證領域,從檔案系統到物理提取,包含了adb、apk downgrade、bootloader與EDL等等,不同Android版本適用的提取模式皆不同,進階的Bootloader提取則是不同晶片組對應不同的提取模式,取證上所需具備的專業知識相對複雜。反觀iOS裝置,在無Passcode情況下,裝置與電腦間無法建立信任連線,基本上無任何方式可以備份或提取出資料。解決辦法通常只有Cellebrite Premium、CAS或GreyKey。只是這些解決方案雖然有效,但所費不貲,除非是高敏感度的案件才會採用。

Checkm8漏洞的影響面

axi0m今年9/27公開的BootRom層級漏洞「checkm8後」,能夠讓A5-A11的設備在任意iOS版本下被JB,這代表著完整的檔案系統提取是可行的(非iTunes備份),雖然還是需要Passcode才可進行檔案系統提取,但至少對於整個數位取證領域還是有極大的幫助。

checkm8的漏洞為BootROM層級(又稱為SecureROM),因該漏洞無法透過OTA更新修復,除非Apple今天召回所有受影響的iOS裝置進行更新,才有辦法修復這個漏洞。

  • Checkm8因需在DFU模式下執行,代表著需取得實體裝置。即使與其他漏洞相結合,也無法透過遠端執行。

  • 該漏洞為非完美越獄(tethered jailbreaks),重開機後裝置則恢復正常。

  • Checkm8無法繞過Secure Enclave和Touch ID提供的保護。

採訪Checkm8開發者

在checkm8發佈之後,該漏洞的開發者axi0mX接受了ArsTechnica的與安全公司Malw​​arebytes的產品總監Thomas Reed的共同聯訪,以下為採訪的精華摘要,閱讀前可先熟悉上一篇介紹iOS資料保護機制,採訪原文請參考:

https://arstechnica.com/information-technology/2019/09/developer-of-checkm8-explains-why-idevice-jailbreak-exploit-is-a-game-changer/

訪談內容

非完美越獄與Secure Enclave

Dan Goodin(Ars):當我們談論無法修補的漏洞時,通常我們談論的是bug。 而針對裝置本身,checkm8的JB會是永久性的嗎?或者一旦裝置重啟,它會恢復到原始狀態嗎?

axi0mX:checkm8屬於非完美JB,漏洞僅在記憶體中執行,因此只要重新開機後裝置就恢復正常狀態。

Dan Goodin(Ars):如果警察或小偷取得iOS裝置但沒有Passcode,使用該漏洞是否允許他們取得手機內的資訊?

axi0mX:答案是“要看情況”。在2013年Apple推出Secure Enclave和Touch ID之前,iOS裝置並沒有進階的安全保護機制。例如,San Bernardino美國境內的恐怖攻擊案被FBI解鎖的iPhone 5c(由Cellebrite協助破解),就沒有Secure Enclave。因此在這種情況下,checkm8可非常快速地取得Passcode並讀取所有資料。但是從iPhone 6之後的手機(註:最早有Secure Enclave的版本應為iPhone 5S),皆有一個Secure Enclave來保護用戶資料,若沒有Passcode基本上是無法取得手機上的資料。checkm8的漏洞並不影響Secure Enclave。它僅允許您在設備上執行未被Apple簽核過的代碼。它不能繞過螢幕鎖,因為Passcode受到獨立的系統保護。但是對於較舊的設備,如iPhone 5這樣的設備,因沒有Secure Enclave,因此可以在沒有解鎖的情況下直接讀取所有資料。

Dan Goodin(Ars):因此,這個漏洞對於有Secure Enclave的裝置但沒有Passcode的人不會帶來太大的好處,對嗎?

axi0mX:如果您的目的是取得裝置上的資料,那麼是的,這個漏洞因Secure Encalve的關係,無法取得受保護資料的金鑰。 但是若有其它目的,使用這個漏洞可能會獲得一些好處。

Dan Goodin(Ars):您的意思是類似植入後門程式?一旦使用者解開螢幕鎖,資料將被發送給攻擊者,或者類似的情況?

axi0mX:例如,如果您將手機留在旅館房間裡,則有機會被動了手腳,導致將所有資料發送到某個電腦上。

Dan Goodin(Ars):你的意思是手機持有人回到飯店後會發生這種情況嗎?

axi0mX:是的,但這並不是我真正要擔心的情況,因為處於該級別的攻擊者……較有可能採用網頁攻擊或Wi-Fi中間人攻擊。因為這種等級的攻擊者,較不喜歡近身接觸目標。若使用Checkm8,攻擊者不得不實體取得裝置,並且必須透過USB連線到裝置才可植入後門。這樣的方式不是駭客或攻擊者屬意的模式。

checkm8無法遠端攻擊iOS裝置

Dan Goodin(Ars):Checkm8可否搭配其他漏洞以進行遠端攻擊的可能性或可行性?

axi0mX:不可能。 此攻擊無法遠端進行。 您必須透過USB連接裝置,然後進入DFU模式,才可執行該漏洞.

如果您想談論真正的假設情況.若您常常在自己的電腦上越獄手機,但您的電腦在執行越獄程式之前已被駭入,則駭客可能會上傳有後門版本的越獄程式,讓您在越獄的過程中植入後門。這樣則有可能,但非常的不切實際就是了。

Thomas Reed(Malwarebytes):所以載入到RAM中的bootrom程式碼,是透過漏洞修改的?我假設Bootrom中的某些程式碼在執行過程中會載入到RAM裡。或許我錯了?

axi0mX:正確的答案是它很複雜。 bootrom使用的程式碼皆在ROM裡(read-only memory)。bootroom無需被複製至其他儲存區即可使用。為了使我的設備能夠執行我想要的工作,我需要注入一些客制的程式碼。在這種情況下,因無法將程式碼寫入ROM,因此我唯一的選擇是將其寫入RAM或寫入SRAM(bootrom使用的低階存儲器)這個很小的空間中。但是實際的bootrom程式碼本身不會被複製至RAM或SRAM裡。

Thomas Reed(Malwarebytes):是否可以藉由checkm8以root權限安裝任何其他程式碼或所需的任何程式,以便可以安裝惡意軟體?

axi0mX:正確的答案是“看狀況”。當您決定使用此漏洞將手機越獄時,可以自定義Apple的行為。蘋果有一些進階保護機制,核心系統皆已防護好,因此正常情況下是無法執行惡意軟體。如果您決定越獄,您將捨去一些保護措施。有些人會選擇保留了很多安全機制的越獄方式,有些人則可能會完全移除所有保護機制。

您可以利用checkm8漏洞越獄,因為屬於tethered JB,每次重新開機後還需要再次越獄。如果重新開機後您不使用該漏洞越獄,則您的裝置將回復到乾淨的版本。所以說這不是您可以安裝一次惡意軟體就可以一直存在,因為iOS對此提供了保護,重新開機後惡意軟體就無法執行了。

更多有關非完美越獄

Dan Goodin(Ars):有人可以使用Checkm8在最新的iOS裝置上安裝鍵盤記錄程式,但是只要重新啟動手機後,鍵盤記錄程式就消失了,對嗎?

axi0mX:正確。鍵盤記錄程式將無法正常運作。程式還是會留在裝置內,但是iOS會說:“該應用程式無權限在此手機上執行,因此將不執行它”.

iOS裝置具有所謂的secure bootchain(安全啟動鏈)。從bootrom開始,每個新步驟皆會被數位簽章檢驗,確保是受到Apple私鑰簽核過的程式,既受信任下(trusted)才可以執行。如果您選擇打破chain of trust(信任鏈)並執行您要執行的軟體,那麼您需承受相對應的風險。

實際上您只要一重新開機就無法使用此漏洞。打破信任鏈的唯一方法是在每次開機時手動進行。因此,開機時必須將裝置處於DFU模式,然後再透過USB線接上電腦,最後必須執行checkm8漏洞才能越獄手機。在那時,您才可取得最高權限做任何你想做的事。但是,如果您……重新開機,裝置就回到安全且受保護狀態。從這個意義上講,這個漏洞不是永久性的。

Thomas Reed(Malwarebytes):對於像CellebriteGreyshift這樣的公司,他們取得您的裝置,會嘗試從中提取資料,但據我了解,如果沒有密鑰,資料就無法被解開並讀取,主要是因為Secure Enclave,許多資料皆被加密。聽起來Checkm8確實對他們沒有多大用處。這正確嗎?還是他們可以藉由checkm8做一些事情?

axi0mX:若將checkm8做為一個獨立的漏洞使用,答案是“不,對這些公司獲益不大”。但是有可能,也許有可能,他們會搭配其它多個漏洞(這些公司皆掌握多個漏洞)來執行自己想做的事情。在那種情況下,他們或許可以使用checkm8替代他們擁有的另一個漏洞,因為也許checkm8更快,或可繞過其他的Apple防護機制。因此很可能會被他們用於暴力破解Passcode。

僅使用checkm8無法給他們任何可以直接取出Passcode的方法。我不知道他們有什麼。他們可能已有一個破解Passcode方式,在這種情況下,他們可能不會使用checkm8。但checkm8也有可能取代他們為了破解Passcode而使用的漏洞之一。

Dan Goodin(Ars):與改變取證的遊戲規則相比,對於CellebriteGrayshift,checkm8比較像是的階段性開發?

axi0mX:我認為他們無法藉由Checkm8獲得任何好處,至少針對這個版本而言.但即使沒有Checkm8,可能方式稍微不同,他們應該有自己的方法來解決。

Dan Goodin(Ars):是什麼導致Checkm8無法在新的晶片組上執行? 是否可能有人可微調Checkm8使它能在這些新的晶片組上執行嗎?

axi0mX:我認為這不太可能。至少對我來說,我無法讓它在新的晶片組上執行。主要原因是Apple在新的晶片組修補了這些漏洞,就我的認知,checkm8是無法執行的。

Dan Goodin(Ars):所以您覺得有人將Checkm8與其他漏洞連接並在新的iPhone上獲得相同結果可能性不大嗎?

axi0mX:我不能說這是不可能的,確實有一些非常好的駭客。總是有機會的。 只是我認為這機會不大。至少我知道我做不到。機會永遠存在,只是我認為可能性很小。

越獄的文藝復興時代

axi0mX:如果您有幾分鐘的時間,我還有其他事情可能會讓您感到興趣:蘋果一直讓越獄變得困難。幾年前情況要好得多。在2016年左右之前,越獄的效果很好,讓很多人可以輕鬆越獄手機。但隨著iOS 9的之後,越獄不再具有永久性,甚至都不可靠。通常您必須透過較多的步驟才能越獄。越獄門檻變的很高,甚至是一部較舊的手機也無法越獄,這代表著無法依您的想法客制手機,並作出可以改變手機內容的軟體。人們說“越獄已經死了”,因為再也不是早期輝煌的日子。

現在,Checkm8對於iOS越獄者來說是如此吸引的原因是,若你有iPhone X,你可在任何iOS版本上對其進行越獄。這很棒,因為這意味著任何人只要坐在電腦旁,就可以越獄。雖然這次發布的內容不允許您安裝Cydia或其他您希望從越獄中獲得的功能,但這很快就會來臨。而且,您可以隨時隨地使用最新版本的iOS進行越獄。不像早期您不得不停留在較舊版本的iOS上,才能擁有越獄所使用的漏洞。