石穗東,李 蒙,雷 鳴
(中山市公安局刑科所,廣東 中山 528403)
運用第三方recovery破解安卓手機屏幕鎖
石穗東,李 蒙,雷 鳴
(中山市公安局刑科所,廣東 中山 528403)
安卓智能手機的取證法一般需要開啟手機USB調(diào)試模式,遇到設(shè)有密碼且未開啟USB調(diào)試的手機,如果嫌疑人不配合工作往往很難進行取證。文章介紹一種新的工作思路:由于安全原因官方版recovery功能較少,可以刷入第三方recovery利用其備份系統(tǒng)功能,從備份文件中提取密碼文件后進行破解,或刷入刪除密碼文件的補丁來清除密碼。文章最后介紹了刷recovery的注意事項。
手機取證; 安卓智能手機; 第三方recovery;密碼破解;備份還原
某盜竊案涉嫌的華為U9508安卓智能手機(以下簡稱榮耀四核)一臺,CPU型號:華為海思K3V2,支持擴展TF卡。開啟屏蔽器屏蔽手機信號后檢查手機[1,2],手機設(shè)有屏幕圖形鎖;連接取證電腦后,電腦的設(shè)備管理器沒有出現(xiàn)Android設(shè)備,輸入命令“adb devices”后沒有列出已連接的Android設(shè)備,運行取證軟件也沒有檢測到該手機,判斷手機未開啟USB調(diào)試模式。按音量上鍵+電源鍵開機進入recovery(以下簡稱rec)恢復(fù)模式,這是華為官方版rec,只能升級官方ROM,不能刷入第三方刷機包/補丁,也沒有備份還原功能。
工作思路為刷入第三方rec利用其備份系統(tǒng)功能提取密碼文件破解屏幕鎖。經(jīng)查資料,各大手機論壇均提供榮耀四核的第三方rec下載,且網(wǎng)友反映良好。經(jīng)咨詢?nèi)A為技術(shù)支持,確認該手機刷入第三方rec前無需先獲取官方解鎖碼進行解鎖操作。華為官網(wǎng)也提供了從第三方rec刷回官方版rec的工具軟件。因此,該手機刷入第三方rec是安全、可行的。所需工具:1張取證專用TF卡,格式化為FAT32文件系統(tǒng)。該卡用于存儲手機系統(tǒng)備份文件,容量不宜太小。操作步驟如下:
(1)手機關(guān)機,取出手機自帶的原機TF卡,裝入取證專用TF卡(容量不要小于16G,默認格式為FAT32)。
(2)上網(wǎng)下載華為榮耀四核手機的第三方rec刷機工具軟件“中文recovery6.0.1.9.exe”(見圖1)。雙擊運行軟件,輸入“1”,回車,刷入中文版第三方rec,輸入“2”,回車,恢復(fù)官方版rec,前提是手機已經(jīng)開啟USB調(diào)式。保留此窗口,刷機軟件運行時會在電腦系統(tǒng)的用戶變量目錄下創(chuàng)建“7ZipSfx.000”目錄,該目錄下有recovery.bat、sec_recovery.img、recoveryoff.img、adb.exe、fastboot.exe、AdbWinApi.dll、AdbWinUsbApi.dll等共7個文件,其中sec_recovery.img和recovery-off.img分別為第三方rec和官方原版rec的鏡像文件。用記事本打開批處理文件“recovery.bat”分析,“刷入中文版recovery”的操作主要執(zhí)行2條命令:“adb reboot bootloader” 命令用于重啟手機到fastboot模式,“fastboot flash recovery Sec_ recovery.img” 命令用于刷入中文版rec。“恢復(fù)官方版recovery”的操作主要執(zhí)行“fastboot flash recovery recovery-off.img”命令。
圖1 第三方rec刷機軟件Fig.1 A custom recovery fashing tool
(3)如果手機未開啟USB調(diào)試,就無法執(zhí)行和調(diào)用這些adb命令,也無法直接執(zhí)行菜單1“刷入中文版recovery”,手動按組合鍵讓華為榮耀手機進入fastboot模式,然后再刷recovery:華為榮耀四核手機進入fastboot模式的方法如下,關(guān)機狀態(tài)下同時按音量下鍵+電源鍵手機就可以進入fastboot模式了(此時手機停留在HUAWEI Ascend開機畫面)。手機通過數(shù)據(jù)線連接電腦,電腦端進入“7ZipSfx.000”目錄,在命令提示符下輸入命令“fastboot flash recovery Sec_recovery.img”回車,當(dāng)顯示“Writing ‘recovery’...OKAY”時表示成功刷入中文版第三方rec(見圖2)。
圖2 刷入第三方recFig.2 Flashing a custom recovery
(4)第三方rec刷入成功后,手機關(guān)機,再次按音量上鍵+電源鍵開機,手機進入recovery模式,該中文版rec具備選擇刷機包刷機、備份還原等功能。通過音量鍵加、音量鍵減控制光標方向,電源鍵確認,依次進入“備份還原”、“選擇備份格式”,選擇tar格式(另一格式為dup),再執(zhí)行“備份到外置卡”,約4 min后備份,boot鏡像、recovery鏡像、system分區(qū)、data分區(qū)、cache分區(qū)完成,生成MD5校驗碼。
(5)手機關(guān)機,換回檢材自帶的TF卡,取證專用TF卡通過只讀設(shè)備連接電腦,在該TF卡的“/ clockworkmod/backup/”目錄下生成一個以備份時間命名的目錄“2014-05-10.15.07.53”,里面有boot.img、recovery.img、system.ext4.tar.a、data.ext4.tar.a、cache.ext4.tar.a、nandroid.md5等共9個文件,其中data.ext4.tar.a是data分區(qū)的備份文件,大小為405M,用于存儲用戶數(shù)據(jù)。用FTK Imager(功能強大的鏡像工具,可在AccessData公司官網(wǎng)免費下載)打開鏡像文件功能瀏覽data.ext4.tar.a文件(或者將文件名改為data.ext4.tar后用winrar打開):短信/彩信數(shù)據(jù)庫文件mmssms.db在/data/data/com.Android.providers.telephony/databases/目錄下;微信的數(shù)據(jù)在/data/data/com.tencent.mm/MicroMsg/目錄下;圖形鎖密碼文件gesture.key和PIN碼/復(fù)雜密碼文件password.key在/data/system/目錄下。導(dǎo)出gesture.key用工具破解得到解鎖圖形(見圖3),手機開機在手機上輸入密碼即可按一般步驟對手機進行取證。
圖3 解鎖圖形Fig.3 Decoded lock pattern
(6)也可以直接對data.ext4.tar.a進行文件解析。目前安卓系統(tǒng)里微信的高版本和QQ的高版本,如果手機不ROOT就無法直接獲取它們的任何聊天內(nèi)容視頻圖片和刪除信息,但是如果通過刷入第三方rec的方法備份出data.ext4.tar.a,然后直接對data.ext4.tar.a進行解析就不存在不能解析的問題了。這個方法解決了安卓手機有圖形鎖、PIN鎖、指紋鎖、面部識別鎖且沒有ROOT、USB調(diào)試還關(guān)閉的取證問題。
(7)取證完畢后,運行“中文recovery6.0.1.9.exe”選擇2恢復(fù)官方版rec。
安卓智能手機的取證方法一般要求手機開啟USB調(diào)試模式,如果開啟了USB調(diào)試,即使設(shè)有密碼,系統(tǒng)版本4.2以下的手機也能與電腦建立連接,就有機會提取手機數(shù)據(jù)甚至獲取ROOT權(quán)限并破解或刪除密碼。本案例的問題是屏幕鎖阻礙了開啟USB調(diào)試。由于安全原因官方版rec功能較少,為此出現(xiàn)很多第三方制作的rec,擴展了選擇非官方刷機包刷機、備份還原等實用功能。通過刷入第三方rec利用其備份系統(tǒng)功能,從data分區(qū)備份文件中提取圖形鎖密碼文件gesture.key后根據(jù)其加密原理進行破解:九宮格圖形鎖需滿足3個要求:至少4個點,最多9個點,無重復(fù)點,從左上角起編號00,至右下角止編號為08,對圖形的十六進制編碼計算SHA1校驗碼后明文存儲在gesture.key中。根據(jù)上述規(guī)則計算出屏鎖圖形總數(shù)為986 328個,其密碼復(fù)雜程度不高,破解相對容易,通過采用預(yù)計算密碼表方式可以進行暴力破解[3]。
除了采用圖形設(shè)定屏幕鎖之外,安卓還允許使用4~16位的數(shù)字PIN碼或文本字符作為鎖定密碼加密后存儲于password.key文件中,相對圖形來講,字符型密碼的復(fù)雜度更高。如果手機設(shè)置的屏幕鎖是字符型而不是圖形,且通過本文方法備份得到的data.ext4.tar.a中的password.key文件未能破解,可以制作刪除password.key的補丁在第三方rec中刷入,以清除屏幕鎖:(1)編寫腳本文件updater-script。運行編輯器Notepad++新建文件,輸入命令: delete(“/ data/system/gesture.key”);、delete(“/data/system/ password.key”);、unmount(“/data”);,點擊“編輯”、“檔案格式轉(zhuǎn)換”選擇“轉(zhuǎn)換為UNIX格式”,保存為文件名“updater-script”,保存類型為“All types(*.*)”。(2)依次建立目錄“/META-INF/com/google/android/”,將腳本文件updater-script和網(wǎng)上下載的update-binary文件(為updater-script的解釋執(zhí)行提供函數(shù)支持)放到剛才建立的android目錄下,使用壓縮軟件將META-INF目錄壓縮成ZIP格式的壓縮包,文件名為“del-pwd”(可以是其它文件名)。(3)將del-pwd.zip復(fù)制到取證專用TF卡。(4)在第三方rec模式下(見圖4)依次進入“選擇刷機包刷機”、“從外置卡選擇ZIP刷機包”,選擇del-pwd.zip。(5)手機關(guān)機,換回檢材自帶的TF卡。再次開機后沒有出現(xiàn)屏幕鎖而直接進入桌面。
本方法的關(guān)鍵是刷入第三方rec,理論上是安全的,不會改變data分區(qū)數(shù)據(jù),但刷機有風(fēng)險,如果失敗可能導(dǎo)致卡屏死機、黑屏等后果,應(yīng)注意:(1)了解該手機是否具備刷入第三方rec的條件。有些手機沒有單獨的recovery分區(qū),如部分MTK芯片的手機,可能無法通過fastboot命令刷入rec。(2)了解刷第三方rec的安全性。有些手機第一次刷入第三方rec前需獲取官方解鎖碼進行解鎖操作,但解鎖可能會恢復(fù)出廠設(shè)置(包括清除用戶數(shù)據(jù))且失去廠家保修;不同型號手機的rec一般不通用,要找到對應(yīng)的第三方rec。有些手機雖然型號相同但屬于不同運營商的定制機,其recovery分區(qū)可能不同。即使是同一臺手機,也可能出現(xiàn)由于安卓系統(tǒng)版本的不同,其對應(yīng)第三方REC版本也不同的情況,如三星GTI9100,系統(tǒng)版本2.3.5和4.1.2對應(yīng)的rec不能互刷。如果刷錯了導(dǎo)致開機故障,則再刷入對應(yīng)版本的rec即可;第三方rec不是官方推出,刷入后是否安全、穩(wěn)定。(3)不同手機的刷機工具軟件、操作方法不盡相同(如三星手機進入“挖煤”模式后使用ODIN進行刷機),刷機前先熟悉掌握。(4)刷機前先安裝手機驅(qū)動程序,以便電腦能正確識別處于fastboot模式下的手機。(5)確保備份手機系統(tǒng)前,取證專用TF卡替換了手機檢材自帶TF卡,避免“污染”檢材[4]。(6)確保電池有足夠電量,刷機過程不能斷開手機與電腦的連接。
[1] 尹春社.對電子數(shù)據(jù)現(xiàn)場獲取存在問題的分析與探討 [J].刑事技術(shù),2008(3):26-28.
[2] 丁紅軍,范瑋.手機物證檢驗原則 [J].刑事技術(shù),2012(3):46-47.
[3] 孫奕.Android 安全保護機制及解密方法研究 [J].信息網(wǎng)絡(luò)安全,2013(1):71-74.
[4] 羅潔,張國臣.謹防電子物證提取和檢驗中的“污染”[J].刑事技術(shù),2007(2):43.
引用本文格式:石穗東, 李蒙, 雷鳴.運用第三方recovery破解安卓手機屏幕鎖 [J].刑事技術(shù), 2015,40(4):327-329.
Lockscreen Passcode Decryption on Android Smartphone Using a Custom Recovery
SHI Suidong, LI Meng, LEI Ming
(Institute of Forensic Science, Zhongshan Public Security Bureau, Guangdong Zhongshan 528403,China)
The screening of crime-related smartphones can provide critical clues for case investigation.On examination of an Android smartphone with passcodes set up without turning on USB debugging, it’s hard to obtain evidence if the suspect doesn't cooperate.A new method using a custom recovery is introduced.Since offcial recovery doesn't have functions of backuping, restoring or fashing a custom ROM in light of the safety concern, a custom recovery was fashed on Android smartphone using the backup system function, and then decrypted the passcode fle extracted from the backup fle, or fashed a path to delete passcode fles.Theoretically fashing a custom recovery is safe, as it only modifes the recovery partition without partition data changing.However, it is risky to some extent when fashing a smartphone.Some dos and don'ts are proposed in this paper.
smartphone forensics; Android smartphone; custom recovery;passcode decryption;backup & restore
DF793.2
B
1008-3650(2015)04-0327-03
10.16467/j.1008-3650.2015.04.017
石穗東(1976—),男,廣東興寧人,工程師,學(xué)士,研究方向為電子物證。 E-mail: shuitong2000@163.com
2014-06-16