Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
網絡釣魚、網上欺詐、垃圾郵件、拒絕服務攻擊、病毒、蠕蟲、惡意代碼、信用卡詐騙等等事件層出不窮,相信大家在日常生活中都或多或少聽說或親身經歷過這樣的網絡犯罪事件。
信息化時代面臨越來越多網絡犯罪,我們對司法取證的要求也變得越來越高,相應而言,我們的技術研究人員也在追求更高水平的司法取證技術。
下面就讓我們來回顧看雪2019安全開發者峰會上《基于云數據的司法取證技術》的精彩內容。
編輯按
:聽了這個演講,我們可以知道:1、云中存儲了大量的敏感數據。不僅是通訊錄和照片,你在什么時間去過哪它都知道。2、你以為你已經刪除了云里的私人數據,其實它們還殘留在云里。3、攻擊者可以通過破解你的電腦密碼(再復雜的密碼也只要幾天就可以暴力破解)來獲得訪問你云中數據的權限。所以,對待云,我們還是應當謹慎一些!
嘉賓介紹
程勛德,萬興首席安全架構師。《加密與解密(第4版)》聯合作者,從事PC Android逆向工作8年。
程勛德講師為大家講解了iOS iCloud Google Cloud備份和同步機制、Token緩存機制、并講解了數據獲取技術難點,并提供了相應的解決方案。
最后實例講解如果在未獲得用戶授權的情況下,獲取iPhone存儲在iCloud云備份中的數據,讓大家了解到目前最新的智能手機取證技術。整個演講過程風趣幽默,多次引發觀眾的熱烈掌聲,廣受好評。
演講具體內容
以下為速記全文:
大家好!我來自萬興科技,安全圈內萬興科技并不出名,因為我們比較低調,我們主要是一家消費類軟件研發、銷售及提供相應技術支持的公司,而且主要營收在海外。
但是我們公司自從去年上市之后就定下了要回歸國內的戰略,以前我們很低調,現在開始不低調了,低調太吃虧!
可能更多參與類似看雪這種技術交流中去,與安全專家直接面對面交流,了解當前和未來的一個安全方向,同時也提高一下公司知名度。
我今天的議題主要是講云取證,比如怎樣從iCloud云端把iPhone手機里的數據取出來,或者通過Google Cloud獲取到Android手機以及Chrome Youtube等等的數據。
一
取證現狀
以前一般取證有三種方式。
第一種是直接用很底層硬件廠商提供的JTag調試接口進行數據讀寫,但是這種方式比較貴,一臺德國的設備要十幾萬。另外也不是所有設備都有這接口,而且這幾年就算能夠讀取到數據,還是有個問題,現在iPhone和Android都開啟了全盤加密,導致讀取到的數據價值也不大。
第二種是物理讀取,例如ipbox2盒子就能提取蘋果手機的數據,通過物理方式把數據讀取出來,但是這個讀取出來也是全盤加密的,沒什么用。
第三種是普通讀寫,普通讀寫得有解鎖密碼才行,并且現在蘋果手機、安卓手機普通讀寫,由于權限問題,有很多數據也讀取不到。
二
云取證優缺點
今天講講云取證,除了這三種方法之外的新數據取證方法。我不是說前面的三種方式不行,其實云數據取證也有不少問題,只能在實際應用場景中,按照不同的需求,采用不同的方式,云取證可以作為一個有力補充。現如今icloud,Google Cloud等等云端上的數據越來越多,已經成為取證不可忽視的一塊。
左側列出來的是優點,云數據類型非常多,我不一一的講了。但也有缺點,缺點就是現在云取證都開始開啟二步驗證,獲取數據越來越困難,而且云取證接口是各個廠商自己定制的私有接口,導致協議都是不一樣的。
三
移動云的生態系統
目前主流的手機要么是安卓、要么是蘋果,這兩家最大。我們萬興主要是做海外市場的,所以我們主要的關注點是icloud和Google Cloud,國內可能有小米的、華為的、三星的,但我們目前就做了這兩個云。我介紹一下它們之間的區別,可能有些人不是很熟悉。
iCloud開啟同步、備份之后,你所有的數據都會上傳到云端,包括聯系人、收藏夾等等,你想到的數據它基本都傳上去了。PC時代取證很容易,把硬盤拆下來,直接物理讀取就能訪問到數據。但是PC時代數據少,現在云數據取證,數據多了很多。iCloud就分為兩大塊,backup和Sync。
backup開啟之后會將整個iOS設備的磁盤鏡像到云端,這個鏡像通過是看不到的,只能大概看到是什么日期做了備份,沒有web或者app能夠看到備份的詳細數據類型,其實它把你整個硬盤都備份到云端去了。
還有Sync同步,這個大家基本都有所了解,就是登陸到上就能看到的數據,比如聯系人,照片之類的。不過還有很多數據看不到,比如聊天記錄,一類的。
總之,如果你用iPhone,在手機激活之后,并登陸iCloud帳號之后,里面默認已經包含了非常多的數據類型,會即時同步到iCloud的云端。
還有Google Cloud,由于國內大部分廠商都給它做了定制,導致Google Cloud在國內用處不是很大,但是在國外,Google Cloud是比較主流的移動數據同步云。
谷歌云的備份Backup數據種類較少,作用不大,但是同步的數據種類非常之多,只要你用谷歌系的APP,安卓手機也算、Chrome,youtube也算,歷史位置信息等等,信息收集非常之詳盡。
就拿歷史位置信息來舉例,收集的信息甚至包括了現在是在地鐵中,還是在私家車,或者自行車上非常詳細,這些數據被無關人員獲取到的的話那基本相當于在網絡中裸奔了。Google Cloud收集的數據,起碼有五六十種以上的數據。分成好幾類。
四
二步驗證問題
獲取云數據不得不提的一個問題是二步驗證,iCloud和Google Cloud目前在登陸的時候都會彈出這個,避免不受信任的第三方登陸,不過如果我們取證時必須要想辦法繞過這個步驟。
目前我們的解決方案是從曾經登陸過的PC/Mac或者瀏覽器中提取歷史記錄,歷史記錄中保存了無需二步驗證的Token,用這個保存的Token再去向云端發送請求,就不會有二步驗證了。
大概取證的思路是怎樣?首先iCloud和Google Cloud經過多年發展,有一套非常健全的安全機制和授權機制,如果直接硬懟iCloud或者Google Cloud是一件非常困難的事情,目前硬懟iCloud或者Google Cloud除了使用漏洞基本沒有太好的辦法,但是漏洞是可遇而不可求的,所以我們的思路看看能不能曲線救國。
人是社會化的動物,個人擁有的設備也不一定只有iPhone或者Android手機,常見的還有PC/Mac設備。如果我們能夠從其他設備入手,會不會讓事情變得簡單?起碼找到一種能夠提取數據的方案。
五
如何解決授權問題
剛才說到云數據云取證,有一個無法繞過的問題是如何解決授權問題?如果按照正常的步驟,需要獲取iCloud中的數據,除了有賬戶和密碼之外,還需要有一臺可信的設備,或者手機號,用戶接手二步驗證碼,這個條件是比較苛刻的,在實際取證環境,受限于現場條件,要達到這個條件是很困難的。那么如何在無授權的情況下獲取手機數據,只有解決了授權獲取問題,才對取證有價值。
第一個方案是通過社會工程學獲取到這些信息,不過今天我們主要是圍繞技術交流,這個就不展開了。
第二個方案是從用戶電腦PC/MAC上提取,如果曾經在PC/MAC有過登錄的歷史記錄,通過提取歷史記錄中的token就可以繞過二步驗證,并且獲取到iCloud中的數據。
如果從這個方案入手,那就涉及到如何獲取用戶電腦密碼和提取token的步驟,PC/MAC的電腦密碼獲取還是比較簡單的,起碼是一個可行的方案,提取token也有辦法,通過逆向iTunes就可以得到如何提取token的辦法。所以基本取證思路就有了。這里的核心環節就是獲取PC/MAC的密碼,這個步驟在PC時代取證是慣常做法,是行得通的。
簡單說,Windows上通過提取SAM( Account Manager,簡稱SAM)是windows的口令文件進行哈希枚舉暴力破解就可以,Mac上可以提取login 進行暴力破解就可以了。
通過hashcat進行暴力破解,再輔以彩虹表,10位數的數字,大小寫字母,特殊字符組合的密碼也可以在幾分鐘到幾十分鐘內就得到結果,如果位數更多,利用hashcat分布式密碼破解,也可以在幾天內得到結果。
六
基于iCloud、Google Cloud的典型應用
目前基于iCloud和Google Cloud的應用越來越多,大概分成3類就是 司法取證,數據恢復,以及家長控制。
怎么做?先打一個廣告,我們公司drfone產品是做數據恢復的,賣得很好,但是不能說賣多少錢。很多廠商都在抄我們的。通過提取iCloud中的歷史備份數據用于數據恢復,當然我們的dr.fone不止這一種數據恢復手段,同時我們在iCloud的基礎上做了更多工作,給與用戶更人性化的數據展示接口,一目了然管理iCloud云端中的數據。
還有司法取證,我們公司不是做專業取證的,但是有人整天琢磨怎么把用戶的數據提取出來。
云端數據的司法取證,相較于其他的手段,還能拿到用戶無法抵賴的時間相關數據,另外還能獲取到曾經已經刪除過的數據,比如今天7月20號,7月1號iPhone手機有一次同步記錄,那么即使把7月20號的數據刪除了,7月1號的也還在,例如微信聊天記錄,以為刪除了聊天記錄,實際上,這個數據已經通過云端方式同步到Apple的云服務器去了,司法取證可以通過云數據來進行恢復。
另外還有家長監控,這個應用場景很適合我們現在說的云數據,一般家長監控是能夠獲取到目標手機的授權的,通過授權能夠即時的觀察到孩子的動向。從而能夠更好的保護好孩子,免得走丟或者是,瀏覽一些色情暴力網站,家長也可以及時得到反饋并糾正。
七
實例講解無密碼獲取icloud數據
通過以上的講解,基本搞清楚了iCloud和Google Cloud是怎么回事,那么接下來我們來實例講解一下,在實際場景中如果獲取云端數據,拿到一臺iPhone,上面有密碼,怎樣把iPhone的數據搞出來?硬懟的話懟不過去,所以我們得想辦法,把戰場拉到我們自己特別熟悉的一種方式。
手機上的數據不好提取,但是如果這時候用戶有一臺PC/MAC,那就好辦,PC/MAC的數據好提取,只要把PC/MAC硬盤拆了,進行物理提取就可以。提取PC/MAC中存放密碼的文件hash的文件進行暴力枚舉,就算是20位的密碼,使用hashcat分布式的破解的話,幾天也可以搞定,我測試7位數的是1分鐘就跑出來了。
因為內部用哈希做比對,hashcat號稱1秒鐘能比對幾十億個密碼。
有了這個密碼之后,進入系統中,Windows上用蘋果手機,基本都有蘋果系的軟件iCloud面板,iTunes一類的,這些工具里面都會緩存Token,這個token在Windows上是存放在com.apple.AOSkit.plist文件中,是用當前登錄的賬戶密碼進行加密的。
我們前面已經暴力破解了PC/MAC的密碼,所以只需要按照算法把com.apple.AOSKit.plst文件解密出來就可以了,解密出來的數據就是這樣,也就是我們所謂的token。
我們今天主要是講這個登陸密碼,通過登陸密碼能夠接到,基本所有蘋果系APP登陸之后都會緩存這個。
舉例,你的icloud面板程序目錄下有AOSKit.plist的文件,在Windows上調用crypt這個函數就能夠解出來,解這個前提是有帳戶密碼,Windows或者mac都有工具直接繞過你的登陸密碼而登陸到系統里。
前面把密碼枚舉出來有了這個,就可以往icloud服務器里發,發了之后它就會返回一個具體的,比如下面有一個云數據,還有一些map地圖應用,有很多key針對不同的應用程序,看你走不走運。
如果運氣好的話就能提出來更多,但即使運氣再差,這個一般也都是有的,要么能提到同步Sync的token,要么能提到備份Backup的token。
提出來之后再往下,往下就可以通過icloud這個服務token以及帳戶信息獲取到這個用戶的數據了。用戶的數據有個組織形式,組織形式比較復雜,密鑰是用橢圓曲線加密的,iCloud因為協議比較復雜,另外不便于調試分析,所以掌握的公司比較少,我們萬興是掌握的其中之一。
看不清PPT不要緊,回頭我在看雪上再寫一篇文章。密鑰是用橢圓曲線,數據是aes加解密。
你的數據在蘋果的云端組織形式,比如一個文件對應的是一堆,然后往蘋果的服務器去下載,有很多能夠組成一個,里面有組織信息,把它拼出來就是一個完整的文件,這個相當于硬盤二進制數據一樣,比如數據到蘋果云端是磁盤鏡像是去的,不是上去什么照片,你可以從里面提取到非常多已經刪除的數據。
因為大家都知道數據刪除不是真刪了,能夠找到很多刪除的照片、圖片之類的,這是文件組織信息。
最終的文件就是一塊一塊的,右邊可以拼出來,我們對它進行解析,解析之后能夠得到你的通訊錄和各種各樣的數據,開啟同步的那三個都有,只要你開了備份,里面都有。
其實我準備了一個demo,但是它得連網,在這里運行很容易掉鏈子,回頭補一篇文章。這是解出來的最終文件,看起來不是特別直觀,大家腦補文件已經解到了!
一般講到最后,要提示一下用戶要怎么做。其實最重要的不是上面列的這幾點,最重要的是不要去干壞事,另外不要到處樹敵,得罪人。
注意:點擊文末原文鏈接,即可查看本議題完整演講PPT。其他議題演講PPT,經過講師同意后會陸續放出,請大家持續關注看雪論壇及看雪學院公眾號!
安全研究視角看macOS平臺EDR安全能力建設
公眾號ID:ikanxue
官方微博:看雪安全
商務合作:
*請認真填寫需求信息,我們會在24小時內與您取得聯系。