手機是近年來最具顛覆性創新的工具,且獲得廣泛的討論及成功地影響人們日常生活中的每個領域。不幸的是,因為手機的普及,結合手機所產生的犯罪案件日益增加,且犯罪者為了隱匿或銷毀在手機上的犯罪跡證,便會使用反鑑識技術與工具,破壞相關證據,增加鑑識的困難度。
本文將先以圖表方式說明近幾年的手機普及率,再介紹傳統的反鑑識技術與工具,以及近年才出現的Android作業系統,並探討若Android手機遭受反鑑識技術攻擊,有哪些鑑識工具可以使用。
根據國家通訊傳播委員會(NCC)於西元2010年所公布第三季手機門號調查,台灣手機使用普及率如表1:
表1 台灣手機使用普及率
在手機門號普及率方面,2010年第三季行動通信用戶數為2,753萬戶,較2009年成長3.7%,手機門號普及率為118.9%。而門號數與比例,2010年第三季3G門號的民眾為1,807萬戶,較2009年成長9.8%,占總門號數的65.6%。至於SMS文字簡訊數量,2010年第三季的SMS手機文字簡訊總數量為16.2億則,較2009年多2.9億則,平均每個門號每月使用23.3則簡訊。
|
▲圖1 2009年與2010年第三季手機使用普及率比較。 |
在行動上網數據用戶數上,2010年第三季的行動上網用戶,包含「WAP+GPRS+3G數據+PHS」為1,912萬戶,較2009年成長3.4%,占總用戶數69.5%,成長主力仍為3G數據用戶。若與2009年之比較,則如圖1所示。
由此可知,手機儼然成為現今不可或缺的通訊工具,各種行動電話的服務項目亦不斷推出。手機具高機動性且使用人數多,使其傳輸服務不僅廣受歡迎且造成熱烈迴響,卻也成為詐騙集團的犯罪工具。手機犯罪主要可分為兩大類:
●以手機作為犯罪的工具:指犯罪行為是在手機上進行的,如手機偷拍、手機遙控炸彈。
●以手機作為犯罪的客體:手機興起後,容易成為犯罪客體,例如手機病毒,散播病毐影響他人正常使用手機,或取得、刪除或變更他人的手機資料或紀錄。
在享受手機的便利性時,新犯罪手法因應而生,部分有心人士會利用手機犯罪。在犯罪完成後,運用新資訊設備與技術將犯罪相關內容銷毀,使鑑識人員無法找到相關證據,即所謂反鑑識的技術,無論使用軟體工具或直接丟棄,皆是方法之一。接著,概略說明鑑識與反鑑識的目的:
●數位鑑識:目的在蒐集、保存、檢驗及分析電腦犯罪證據,透過電腦採集有意義的證據資訊,進行電腦犯罪現場重建,模擬犯罪手法,過濾可疑嫌犯並反向進行追緝。
●反鑑識:目的是運用各種技術,混淆、隱藏、消除犯罪者在犯罪現場留下的犯罪證據或痕跡,甚至修改或破壞數位證據,讓鑑識人員花費更多時間找尋犯罪證據及蛛絲馬跡。對數位鑑識過程或數位證據進行攻擊,增加困難度。
傳統的反鑑識技術與工具
數位工具的使用,是一體兩面的,全看在何種場合,被何種使用者所使用。例如磁碟清理程式,原為保護個人機密資料,將資料徹底刪除,使其無法找到或還原,避免資料外洩,提高安全性。若被有心人士使用,則犯罪證據將不易取得,造成鑑識人員的困擾。
反鑑識的最主要目的,是透過技術或工具,讓數位證據產生非原始訊息或改變,甚至刪除。這些工具包含磁碟清理工具或手機病毒等。
認識手機病毒
目前手機遭受的攻擊中,有大部分是手機病毒。因手機軟體多為嵌入式作業系統(置入在晶片中的作業系統,一般由Java、C++等語言編寫),相當於一個小型處理器,所以會遭受病毒攻擊。與電腦病毒一樣,具有傳染性、破壞性。手機病毒與電腦病毒相似之處如表2:
表2 手機病毒與電腦病毒相似之處?
手機病毒會透過發簡訊、電子郵件、瀏覽網站或下載鈴聲等方式進行傳播,因為這些都需要手機的作業系統進行解譯,以顯示給使用者。
手機病毒可能會造成手機當機、關機、資料被刪除、向外發送垃圾郵件、撥打電話、損毀SIM卡、晶片等損害。
手機病毒要傳播和運行,必要條件是系統服務商要提供資料傳輸功能,且手機要能支持Java等程式寫入功能。許多具備上網及下載等功能的手機都可能會被手機病毒入侵。手機病毒所造成的風險如表3所示:
表3 手機病毒所造成的風險
在用戶資訊被竊方面,許多用戶將個人資訊儲存在手機上,如個人通訊錄、個人資訊、行事曆、各種網路帳號、銀行帳號和密碼等。
這些重要的資料,必然引來別有用心者的垂涎,他們會編寫各種病毒入侵手機,竊取重要資訊。而在傳播非法訊息上,手機的無線傳輸功能會為各種色情、非法的圖片、語音、電影傳播提供便利。
談到破壞手機的軟硬體,手機病毒最常見的危害就是破壞手機軟、硬體,導致手機無法正常工作。
而通訊網路癱瘓指的是,感染後強制手機不斷地向所在通訊網路發送垃圾簡訊,導致通訊網路堵塞,進而造成局部的手機通訊網路癱瘓。
反鑑識技術與工具介紹
所謂的反鑑識技術與工具,針對其功能及技術,可區分為如表4所列出的幾種:
表4 各種反鑑識技術與工具?
資料隱藏
所謂的資料隱藏,是指將可用之資料加以隱藏,增加鑑識人員找尋的困難度,同時確保日後方便再度使用。
其中,較知名的是偽裝學(Steganography),其利用各種偽裝技巧,將資料藏入掩護體中。例如圖片、影音或其他常見檔案,一般情況下難用肉眼判別。較簡單的隱藏方法有在白色背景上的白色文字,或圖片檔內圖層順序較為下方的物件。
而資料隱藏的研究,分為以下兩種作法:
●空間域(Spatial Domain):以直接改變影像的像素值達到隱藏的效果,此方法可在不破壞原始影像的視覺效果下達到高容量的資訊隱藏。其缺點為嵌入的資訊沒有足夠的強健性及安全性,極易遭破壞。
●頻率域(Frequency domain):把空間域各影像的像素值轉成頻率域的係數值,再將數位浮水印加入所選的係數值中。其缺點是可嵌入的容量有限,藏入的訊息易受轉換的函數限制。
常見的資料隱藏工具包括Steganos、S-Tools、Outguess、JStego等,在表5中分別加以比較。
表5 資料隱藏常見工具
檔案加密
檔案加密是歷史最悠久也是最廣為大眾所使用的方法。為了保護重要資料,透過加密演算法和各種加密技術,使其幾乎不可能被讀取,唯持有解密金鑰的人才能解開,並且對非相關人士或電腦鑑識工具有不透明性。
資料加密是「鑑識人員分析的惡夢」,鑑識人員須了解演算法和加密技術,找出可能的解密方式,此過程會耗費鑑識人員大量時間精力,卻不一定能達到解密目的。常見的檔案加密工具有PGP、Free Encryption、Crypt4Free、EncryptOnClick等(表6)。
表6 檔案加密工具?
目前在Windows、Mac及Linux的加密方式是,在檔案寫入磁碟時加密、讀取時解密。因僅對內容加密,會留下加密過程,例如檔案名稱、檔案大小與時間戳記等訊息。部分已加密檔案的內容資訊,亦可從其他如暫存檔或是已刪除但未加密的檔案副本等儲存位置,將檔案還原。
程式加殼
加殼(Packer)程式利用特殊演算法對EXE、DLL檔案內的資料進行壓縮,並在外部包覆外殼程式,成為獨立的執行檔。當執行該檔案,其實是在執行外殼程式,若CPU執行特殊解壓縮指令時,才會解壓縮並執行內部資料。
犯罪者常利用加殼程式,確保所用的惡意工具不會被逆向工程或防毒軟體偵測到。加殼程式也對逆向工程技術採取有效的保護措施,例如執行中的行程若已被監控,shiva加殼程式會終止執行;若沒被監控,則shiva加殼程式會產生第二個行程,兩個進程互相監控對方,以防止另一個進程被終止或被移除。
資料刪除
若單純將資料刪除,只刪除檔案配置表的關聯資料,原資料仍完整存於磁碟中,常見的鑑識工具如EnCase(圖2)仍可搜尋到已刪除的資料。而利用eraser(圖3)、srm(針對UNIX)、sdelete等抹除工具,針對檔案採不同程度的覆寫方式,徹底地將檔案資料破壞,讓被還原機會大幅降低。
|
▲圖2 在EnCase檢視檔案。 |
|
▲圖3 Eraser之低階(左)與高階(右)抹除。 |
磁碟消磁/銷毀技術
磁碟消磁/銷毀技術運用設備將資料消去磁性(磁場強度須瞬間達到5,000高斯以上),將資料完全消除乾淨。消磁雖有效,卻很少用,因消磁機成本過高,犯罪者較難接受。更常以解體、焚燒和粉碎等實體破壞來銷毀資料。
鑑識流程攻擊
除了針對可能是證據的資料進行加密、隱藏或破壞等方法之外,因為健全的已文件化電腦鑑識程序、廣泛周知的電腦鑑識工具漏洞,以及鑑識人員過於倚賴所用的鑑識工具等因素,反鑑識逐漸轉移攻擊電腦鑑識程序或工具本身,底下針對鑑識流程說明反鑑識方法:
●反識別:隱藏證據間的關係,使鑑識人員不易從分散的證據中找出關聯性,或避免犯罪事實曝光,掩蓋事件的發生,使調查機制無從啟動。此外,偵測到在執行電腦鑑識工具,將會改變行為模式,例如執行中的加殼程式,若偵測到磁碟已被對映(Mount),則不會對其內容解密、解壓縮。
●反保存:破壞證物鏈(Chain of Custody)的管理或利用數位證據的脆弱性,破壞其在鑑識過程的完整性。多數鑑識工具藉由檔案的副檔名與前幾個位元組,決定檔案類型,這種啟發式(Heuristics)的檔案類型辨別方式易遭質疑與進行攻擊。例如EnCase將附檔名為「exe」且檔案內容前兩個字元組包含「MZ」字母的Windows檔案,歸類為「執行檔」。
●反蒐集:法院質疑鑑識工具本身是否具公信力或鑑識功能是否完備等。
●反檢驗及分析:法院質疑鑑識人員的檢驗方式有無科學根據,及找尋分析報告有無破綻。
● 反報告呈現:若證據不夠完整,呈現的證明力將非常薄弱。
Android作業系統簡介
Android為Google進入手機產業的墊腳石,Android前身為一獨立的公司,Google買下後繼續開發,以開放原始碼的方式發行,成立Open Handset Alliance(OHA)支持Android,其他成員包括Qualcomm、TI、Wind River等。初步發展方向為提供一開放式軟體平台,讓全球的開發者及使用者可以自由在此平台上開發或安裝軟體。
Android發展重點為函式庫(Library)及應用程式,透過易用的使用者介面與多樣化的應用程式及附加功能,讓Google迅速闖入產業界並占有一席之地。Google在2008年底推出第一款Android手機T-Mobile G1/HTC Dream,並正式公開Android的程式碼,提供手機製造商及開發者免費使用。
Android採分層設計的概念,系統架構如圖4所示,此架構的優點是減少各層之間的相依性、便於獨立開發、易找出問題及除錯等。
|
▲圖4 Android架構(資料來源:http://developer.android.com/guide/basics/what-is-android.html) |
第一層:Applications
一些Java的基本應用程式,如收發E-mail、瀏覽器、文字訊息管理程式等。若要開發Android應用程式,毋須下載整個平台程式碼,只要採用Google發行的軟體開發工具(Software Development Kit,SDK),使用Java並內建模擬器,就可以直接驗證寫出的程式,毋需實體手機。
第二層:Application Framework
替應用程式做框架,希望開發人員能加快速度,這就是Android軟體架構的分層設計,其具有便於獨立開發、易於維護及容易除錯等優點。系統要順利運行,必須能夠在需要任一元件時,啟動一應用程式程序,做出所需的Java物件。
第三層:Library
Android使用大量開放原始碼的軟體為主要函式庫,如C系統函式庫、媒體函式庫、3D函式庫等,這也是Android的優點之一。因許多開放原始碼的軟體都經過一定時間的驗證,穩定度及效能也有一定水準。
第四層:Android Runtime
跨平台是Android的特色之一,應用程式可在不同的硬體上執行,而產生同樣的行為。此層包括的應用程式都有自己的虛擬機Dalvik,及提供大部分標準Java函式庫的核心函式庫。
第五層:Linux Kernel
因智慧型手機的功能及周邊裝置日趨繁雜,包含相機、藍牙、全球衛星定位系統(GPS)及特別為手機或行動裝置設計的電源管理系統,所以需要一作業系統來管理所有的周邊及硬體裝置,避免硬體資源被不當使用,產生不可預期的後果。
Android採用Linux為作業系統,Linux kernel就提供了系統底層與硬體間的基本核心,讓其他程式可在上頭執行。
針對Android作業系統的鑑識技術
根據Realtime Privacy Monitoring on Smartphones研究報告指出,當用戶下載Android應用程式時,會被告知將會存取哪些資料的頁面,如GPS資料、手機號碼、聯絡人、IMEI以及SIM卡序號等,必須按下〔OK〕後才能下載,但是卻沒有說明程式會如何使用這些資料。其可能被蒐集、分享給廣告商或分析伺服器,由於沒取得用戶同意,因此風險相當大。
所以,就算是經過一定時間驗證的開放原始碼Android,也可能有洩密的可能性。而且因為Android是開放原始碼的作業系統,將來會有越來越多手機都採用此作業系統,難保不會被犯罪者所利用。除此之外,網路上也有很多類似反鑑識功能的工具,犯罪者在犯罪後,就很有可能對手機進行反鑑識技術。
Android的反鑑識是利用其系統漏洞。Android的安全是靠Sandbox所改進的Linux行程和使用者管理政策,而當執行應用程式時,其會在系統的一個獨立且安全的地方執行,這地方稱為隱藏資料夾。
而且,因為Android的安全功能,在應用程式所需的儲存空間中,是無法存取目錄中其他任何的應用程式。此目錄可用來儲存任何類型的資訊如文件檔案、多媒體檔案等。它在安裝時建立及應用程式移除時,其全部的內容也會刪除。
由此可知,反鑑識技術日益盛行,當犯罪者使用反鑑識技術時,鑑識人員如何以合適的鑑識工具進行鑑識,便十分重要了。以下為一些常見的Android鑑識工具的功能並實作:
常見的Android鑑識工具
接著,分別介紹Android debug bridge、Nandroid備份工具、dd等等Android鑑識工具。
Android debug bridge(ADB)
Android SDK提供的ADB工具允許裝置和遠端工作站間的相互作用。ADB由三個主要項目組成客戶—伺服器端程式,包括在工作站上執行的客戶端和伺服器端,及在模擬器或裝置上執行的程式。某些ADB指令如dd、ls和pull,因可存取內部記憶體的資料,常被使用在鑑識工作上。
Nandroid備份工具
Nandroid提供Android裝置備份和恢復能力的工具。Nandroid可藉一種特殊的引導模式來支援完整的NAND快閃記憶體。這種模式可在內部記憶體的檔案系統中恢復已刪除的目錄。
dd
類似於UNIX指令集允許在裝置使用傳統鑑識指令工具。dd可對UNIX檔案做bit by bit的實體萃取,亦可應用到普通檔案和裝置檔案。但若裝置使用YAFFS檔案系統(專門為NAND快閃記憶體設計的嵌入式檔案系統,適用於大容量的儲存裝置),則dd會毫無作用。
商業工具
自鑑識科學成立以來,商業化和免費工具的可用性一直有爭議,這現象也存在於手機鑑識。有些廠商如Paraben、Micro systemation、Cell brite等,皆在研發Android鑑識工具,但是使用這些工具,會面臨到證據完整性的問題。
應用程式
就像其他手機的作業系統一樣,Android允許第三方應用程式的開發。從鑑識的角度來看,可用的API包含一些功能,例如提供檔案系統的介面等。這些API可對儲存在檔案系統的內容進行探索、讀取和製作映像檔的應用程式,甚至是內部記憶體。
實作說明
本實驗將針對以Android為作業系統的HTC Desire當目標手機,選取9種欲刪除的檔案類型,並按以下步驟將檔案刪除,再使用鑑識工具EnCase進行鑑識,探討使用反鑑識工具前後對鑑識工具所得的鑑識結果。
首先,檢視欲刪除檔案之名稱、類型及容量大小,包括文件檔(ppt、doc、xls、pdf)、壓縮檔(zip)、文字文件(txt)、影像檔(jpg)、應用程式(exe)和音訊檔(mp4)等,如圖5所示。
|
▲圖5 檢視欲刪除檔案。 |
接著,將檔案存放於目標手機內,並在EnCase底下分析檔案內容與原始檔案數有無增加或減少。然後,將這9個檔案用「Delete」功能刪除,並用EnCase尋獲已刪除的9個檔案,如圖6所示。
|
▲圖6 利用EnCase進行分析。 |
依據本實驗結果,若只是普通的刪除,鑑識工具依然則還可恢復,但若是使用刪除軟體如Eraser等,則發現不論低階或高階抹除,皆無法尋獲已刪除的9個檔案,這部分將會列為未來工作。另外,若是用Eraser刪除軟體,可嘗試以關鍵字進行搜尋,會發現仍有一些檔案的蛛絲馬跡可被尋獲。
除了使用鑑識工具外,另外也可以使用非鑑識工具,例如本實驗的HTC Desire,其官網就有提供HTC Sync的同步軟體(圖7)。HTC Sync是專門用於Android手機與電腦間的同步功能,讓手機和電腦之間同步Outlook的連絡人和行事曆活動,在電腦和手機的網頁瀏覽器中儲存相同的我的最愛,以及將相片、影片、文件、歌曲和播放清單複製到手機。利用電腦與手機的雙向資訊交流,使其內容同步,讓鑑識人員可以對其內容進行備份,以避免手機資料遭刪除或竄改。
話雖如此,但使用非鑑識工具會有證據完整性的問題,因此若非不得已,則不建議使用,不然就是要有完整配套措施,這有賴當局的建立標準作業程序。
|
▲圖7 HTC Sync同步行事曆活動。 |
結語
手機在鑑識工作上,除因手機製造商的快速更新而導致相關鑑識軟體工具始終落後外,同時也面臨到反鑑識工具的攻擊。而且,現今的數位鑑識不單單只靠鑑識工具,也需要鑑識人員的經驗以及技術的累積,因此當鑑識人員埋首於手機鑑識的同時,仍應持續學習與研究反鑑識技術的手法及尋找其解決之道,建立案件發生時的標準作業程序,使鑑識程序能符合相關規範,並將此領域發展得更純熟更進步來取得完整且有證據能力的證據,以便因應現今手機蓬勃發展的趨勢。