將此篇文章跟 Facebook 上的朋友分享將此篇文章跟 Plurk 上的朋友分享將此篇文章跟 Twitter 上的朋友分享列印轉寄
2011/9/23

了解為惡者如何湮滅犯行 淺談各種常見反鑑識手法

中央警察大學資訊密碼暨建構實驗室(ICCL)
近來各種網路詐騙事件如野火燎原般層出不窮,而反鑑識的手法日益精細,更讓這類災難四處延燒,有鑑於此,這裡將探討何謂反鑑識,及其各種可能使用的手法並分類探討,以突顯其對鑑識領域的影響。
在鑑識時為了得到一個肯定且具有效力的證據,必須對可能成為證據的物件實施合法採證程序,其所得的證物始具有證據能力,而法官才可取之為自由心證的參考。

如果在鑑識的過程中發現證物已經遭到更改或干擾,這代表鑑識的過程不但特別艱難,也會花上更多時間。而其中更改、干擾證物的手段,就是本文即將探討的「反鑑識」內容。

何謂反鑑識

何謂反鑑識(Anti-forensics)?根據文獻的定義,反鑑識為「任何在鑑識工作過程當中,意圖干涉鑑識工作,對證物的取用和存取之嘗試加以干涉稱之。」。

而反鑑識的運作主要透過「對資料的攻擊」、「對工具的攻擊」、「對分析者的攻擊」三個策略進行。

對資料的攻擊

對潛在有可能的證物刪除或竄改,讓這些資料變得無法理解,而導致該證物在法庭上失去證據效力。

對工具的攻擊

反鑑識利用目前電腦鑑識工具漏洞或其他的弱點,從被鑑識物中試圖更改鑑識作為,以產生偽造的鑑識結果或報告。

對分析者的攻擊

反鑑識透過產生大量無意義資料來混淆視聽,或是事後強烈質疑鑑識工作的有效度和可信度,來對鑑識工作者造成困擾。

反鑑識分類

解釋過何謂反鑑識後,接著介紹其分類。反鑑識有「資料隱藏」、「資料抹除」、「蹤跡混淆」等三種分類,以下分別將以說明。

資料隱藏

證據透過某些技術藏匿於系統中的磁碟、殘存空間(Slack Space)、隱匿資料、轉換頻道或是Rootkit當中,其各項說明如下:

Rootkits

Rootkit一詞最早出現在Unix系統上。系統入侵者為了取得系統管理員級的root權限,或者為了清除被系統記錄的入侵痕跡,會重新組譯一些工具(術語稱為kit),這些軟體即稱作Rootkit。

其主要功能為隱藏其他程式的行程,原本Rootkit是作為善意用途,但之後電腦病毒、駭客軟體等也常利用Rootkit來隱藏蹤跡,且不論使用的是何種作業系統,都有可能遭到Rootkit的危害。

資料加密

所謂的資料加密(Encryption),是指將資料透過私鑰加密方法如RC4、DES等方法,或是透過公鑰加密如RSA等方法,成為旁人無法理解或是不具有金鑰的人無法探究的內容。

資料隱藏

資料隱藏(Steganography)是將資料替換其他平常存在於電腦中較無用處且不起眼的資料,或是較不常使用的位元更改,用以將重要資訊隱藏其中的科學和藝術。

這些遭到修改的資料,可能是圖形、文字、聲音、HTML檔,甚至是軟碟內的資料,透過修改其中無法由直觀發現變化的部分,來達到隱藏資訊的目的,而被隱藏的資料可以是明文、密文,甚至是圖檔。

一般而言,資訊隱藏會用於加密法不被允許使用時,但更常見的是,資訊隱藏是用來輔助支援加密法,因此即使有些密文遭到解密,而其已運用資訊隱藏技術偽裝的資訊還是無法被發現。

資料抹除

對攻擊者來說,為了避免被追蹤出身分,最好的方法就是刪除掉所有關於其本身在別人電腦的的活動紀錄。在這裡要先學會分辨「簡單地刪除」和「安全地刪除」兩種刪除方法。

前者最常見的例子就是在作業系統中的刪除功能,在這種情況下,只是刪除資料中的連結,而實際上被刪除的資料還是完整儲存於磁區內,只是原本這些資料所佔據的磁區被標記為「可以覆寫」。後者就是所謂的「抹除」方法,欲刪除的資料會被預先設定或是隨機產生的資料覆寫數次,達到確實刪除資料的目的,如下圖所示。

▲資料抹除工具—Eraser操作介面。


若運用資料復原工具Final Data來搜尋與還原被刪除的資料,而從下圖中可以看出經由Eraser抹除後,無法搜尋到任何的資料。這是因為Eraser不但提供有效的方法可以徹底抹除檔案,連相關的緩衝區(Buffer)都會一併抹除。




▲資料復原工具Final Data的操作介面。


在電腦鑑識實務上,所遭受最大的困難點為如何分辨那些重要的數位證鑑是從電腦上被抹除的,而非成功地找回被抹除的證據。

在進行反鑑識的過程中,遭到反鑑識手法處理的電腦系統,其系統內的檔案或描述資料的資訊(Metadata),包含各種紀錄、登錄檔、連接檔、系統回溯點等等,而這些資料在電腦攻擊者在犯案的過程中常都會遭到抹除。

電腦攻擊者通常會先對被攻擊的電腦進行一連串的鑑識工作,以檢查在電腦系統中是否還有遺留任何能夠透露他們行蹤的紀錄,進而將其刪除。

另外,在某些系統中,其紀錄檔可能同時記錄合法的電腦系統使用者和電腦攻擊者的連接資訊,如果攻擊者刪除這些紀錄,系統管理員會立即發覺。

若是選擇性地刪除紀錄檔內的資料,例如只刪除有關於非法活動的紀錄而保留剩餘紀錄,這麼一來,就不會被懷疑電腦系統曾經發生入侵或被攻擊的行為。

然而,這些策略只適用於某些特定種類的檔案,就如同一些系統紀錄的文字檔,或以位元形式儲存的紀錄檔。但若是Windows EVT檔案,就必須使用一些特別的工具來選擇性地抹除這些紀錄。

探尋被抹除工具所抹除的蹤跡,並不是一項簡單的任務。一般而言,某些抹除工具在進行抹除工作之前,會先修改將被抹除的檔案或資料夾的名稱,因此這些即將被抹除的檔案或資料夾的名稱就會隨機產生不規則的變化,而形成不具意義的檔名,例如se4ghswjfv53dj.exe等。

此外,有些抹除工具在抹除過程中會產生紀錄或暫存檔,並且以標準的方式命名檔名,而這些檔案就可能是在抹除過程中唯一留存下來可供辨識的檔案。

除了這些被刻意產生並留在硬碟上的資料外,或許還可以找到一些抹除工具曾經存在的痕跡,以支持「某些資料可能被以安全地方法刪除」的假設,而這些資訊有很大的可能性會在安裝工具的資料夾,或是從安裝過程所產生的登錄檔內找到。

在入侵者反鑑識的程序中,鑑識人員應該要避免證物被有心人士干涉,如刪除或抹除等,因此鑑識人員要了解那些資訊是最容易被刪除或抹除。

坦白說,一般的犯罪者會對紀錄檔動手,刪除某些特定的檔案,例如暫存檔和登錄檔。因此,鑑識人員對於紀錄檔的防護顯得格外重要。

在鑑識人員打擊反鑑識行動中,同時也應該注意殘存空間內可能會有一些蛛絲馬跡,猶如為攻擊行動而建立的紀錄,或是存在於主檔案表格(Master File Table)中的小型紀錄。

除此之外,每個檔案系統皆有獨特的特性,譬如某些較為敏感的檔案可能會被儲存於多個地方。最佳的範例為具備日誌功能(Journaling)的檔案系統,此一檔案系統的特色為將檔案寫入到兩個不同的位置,如此一來,當檔案系統被破壞時,只須判斷兩個位置所儲存的資料是否一致。如果不一致,則可明確斷定檔案系統遭受破壞;反之,若一致則可顯示檔案系統的完整性。

除了以上所提的,尚有另一個可供鑑識人員打擊反鑑識行動的技術,稱為交換空間(Swap Space)。此一系統的運作方法為採取備份的概念,即作業系統會先將記憶體中的資料儲存(又稱備份)到硬碟的暫存記憶區塊。

因此當記憶體內的內容在打擊反鑑識的過程中無法取得時,只要作業系統尚未被關閉,某些記憶體中的資料就有可能被存放在交換空間。

分析者只要利用資料探勘(Data Mining)的方式,即可從交換空間內的檔案來探尋整個完整的檔案,就算僅透過關鍵字的搜索,對於以文字檔案格式存在的資料如Word文件或純文字檔,也能有效地搜尋出檔案。目前有許多軟體皆具備交換空間的功能,例如Encase和FTK軟體。

總而言之,若遭受到反鑑識抹除資料的狀況時,當務之急為找尋曾經被使用過的工具,並且了解這項工具運作的方法,依據在測試檔案上實驗與運作的經驗,找出被使用過的證據。

蹤跡混淆

蹤跡混淆的目的為混淆鑑識人員執行打擊反鑑識任務的作為,下列將歸納出目前蹤跡混淆的手段:

零足跡

零足跡(Zero-footprinting)技術主要的目標為找出所有可消除從攻擊行動中所殘留檔案的方法,防止電腦鑑識人員窺探出任何結果。零足跡手法通常會和資料抹除工具一起運用。

為了要達成這項目標,攻擊者必須明確地了解,攻擊者和電腦系統之間的5W1H原則,也就是攻擊者和電腦系統產生哪些互動(Who)?哪些動作被記錄(What)?每個動作的執行起迄時間為何(When)?如何記錄每個動作(How)?記錄被儲存於何處(Where)?系統的結構組成又是什麼(Why)?以及哪些蹤跡會被系統自動留下,而又有哪些蹤跡是因人為因素而留下?

紀錄清除器

坊間有許多紀錄清除的工具如Log Cleaner、Eraser等可將電腦中使用檔案和登入資訊完整地清除,而這些工具會成為執行鑑識工作的一大阻礙,但是有一點必須注意的是,雖然每個紀錄清除器可有效地清除重要資訊,但紀錄清除器確無法清除自身曾經被使用過的紀錄,因此在檢視此紀錄清除器紀錄時,就能夠看出某些紀錄已遭清除。

錯誤資訊的創造

利用創造錯誤資訊的程式,可將電腦鑑識中所參考到的重要資訊刪除,或者修改為其他數值或內容,譬如檔案的存取和修改時間、瀏覽紀錄等,如此一來,電腦鑑識工作者就有可能被修改後的錯誤資訊所矇騙。

木馬命令

木馬是被刻意植入或潛藏在電腦內的程式,此一木馬程式並不會對電腦造成任何感染,也不具有自我複製的特性,其用途是記錄使用者的動作、登入密碼及重要的資訊等。

阻礙證據的取得

阻礙證據取得的主要目的是,讓鑑識人員無法從鑑識工具中取得正確的數位證據。目前有效的阻礙證據取得之技術可以分「改變資料的數位簽章」和「更改Hash值」二種。

‧ 改變資料的數位簽章:
電子簽章法第2條第3款中明定,數位簽章是指將電子文件以數學演算法或其他方式運算為一定長度的數值資料,以簽署人的私密金鑰對其加密,形成電子簽章,並得以公開金鑰加以驗證者。如果更改資料的數位簽章,會造成簽署人和簽收人皆無法存取這個檔案。

‧ 更改Hash值:
為了確保所存取的檔案的安全,通常會使用工具讓欲確認的檔案產生一個Hash值(稱Digest)。Hash是一文字形式的字串,這個字串遠比它所屬的檔案要小很多,透過特殊函式產生的Digest可以讓任何兩種不同的檔案擁有不同的Digest。Digest在確認使用者所傳送的訊息並沒有遭到竄改的檢查上,扮演很重要的角色。

所以,傳送者將檔案產生Digest後加密,並與檔案一併傳送。待接收者在收到檔案後,將Digest解密,並且再將檔案產生一個Digest,然後比較這兩個Digest是否相同,如果兩個值是相同的,那麼有很高的可能性是,此一檔案並沒有遭到竄改或更動。

結語

介紹完各種反鑑識手法後,之後將接著介紹如何防範及偵測反鑑識,進而延伸至一項與反鑑識息息相關的技術——資訊隱藏。下一期文章將會討論資訊隱藏的定義和各種方法,進而探討多媒體影像的反鑑識,說明其運作原理和發展目標,以及這種趨勢如何被應用在實際情形。
這篇文章讓你覺得滿意不滿意
送出
相關文章
依循數位證據處理規範 實戰熱門通訊App蒐證
萃取iPhone定位資訊紀錄 還原行動軌跡呈現地圖
資安分析師的日常
安碁資訊成為國內唯一Security Operation Center自建數位鑑識中心
中芯數據APT SOC目標威脅獵狩與事件處理的解決方案
留言
顯示暱稱:
留言內容:
送出