1. 程式人生 > >詳解Windows註冊表分析取證

詳解Windows註冊表分析取證

classes 創建 dev html ida soft free 人在 隱藏

大多數都知道windows系統中有個叫註冊表的東西,但卻很少有人會去深入的了解它的作用以及如何對它進行操作。然而對於計算機取證人員來說註冊表無疑是塊巨大的寶藏。通過註冊表取證人員能分析出系統發生了什麽,發生的時間以及如何發生的等。在本文中我將為大家詳細介紹Windows註冊表的工作原理,以及如何對收集用戶留下的各類指紋信息。

什麽是註冊表?

註冊表是用於存儲Windows系統用戶,硬件和軟件的存儲配置信息的數據庫。雖然註冊表是為了配置系統而設計的,但它可以跟蹤用戶的活動,連接到系統的設備,什麽時間什麽軟件被使用過等都將被記錄在案。所有這些都可用於取證人員,分析溯源用戶的惡意或非惡意行為。

蜂巢

在註冊表中,有根文件夾。這些根文件夾被稱為蜂巢。 以下是5個註冊表的配置單元:

  • HKEY_USERS:包含所有加載的用戶配置文件
  • HKEYCURRENT_USER:當前登錄用戶的配置文件
  • HKEY_CLASSES_ROOT:包含所有已註冊的文件類型、OLE等信息
  • HKEYCURRENT_CONFIG:啟動時系統硬件配置文件
  • HKEYLOCAL_MACHINE:配置信息,包括硬件和軟件設置

註冊表結構

註冊表由鍵、子鍵和值項構成,一個鍵就是分支中的一個文件夾,而子鍵就是這個文件夾中的子文件夾,子鍵同樣是一個鍵。一個值項則是一個鍵的當前定義,由名稱、數據類型以及分配的值組成。一個鍵可以有一個或多個值,每個值的名稱各不相同,如果一個值的名稱為空,則該值為該鍵的默認值。通常,值是0或1,意味著開或關,也可以包含通常以十六進制顯示的更復雜的信息。

技術分享

訪問註冊表

在我們普通的windows系統上,我們可以使用Windows內置的regedit實用程序來訪問註冊表。我們只需在左下角開始界面的搜索框內鍵入regedit,然後單擊便可打開我們的註冊表編輯器。

技術分享

註冊表信息取證價值

對於計算機取證人員來說註冊表無疑是塊巨大的寶藏。通過註冊表取證人員能分析出系統發生了什麽,發生的時間以及如何發生的等。在註冊表中可以獲取到的信息包括:

  • 用戶以及他們最後一次使用系統的時間
  • 最近使用過的軟件
  • 掛載到系統的任何設備,包括閃存驅動器,硬盤驅動器,手機,平板電腦等的唯一標識符。
  • 系統連接過的特定無線接入點
  • 什麽文件何時被訪問過
  • 列出在系統上完成的任何搜索等

註冊表中的無線證據

許多黑客會通過攻破目標網絡的無線來進行入侵。這種情況如果調查人員對提取的IP進行溯源,往往會最終定位在鄰居家或周圍其他無線AP。

例如早在2012年1月,一位匿名者成員John Borrell III,就曾入侵了鹽湖城和猶他州警察局的電腦系統。最終聯邦調查局通過追蹤,定位到了俄亥俄州托萊多的祝福聖禮教堂的Wi-Fi AP地址。黑客顯然是破解了教堂無線AP的密碼,然後利用該IP在互聯網上使用,以達到隱藏自己的目的。最終,聯邦調查局還是通過各種調查技術以及偵察工作找到了他。最終Borrell在聯邦監獄被定罪,並被判處兩年有期徒刑。

在收繳了Borrell電腦後,取證人員可以通過檢查其系統註冊表來收集他此前連接過教會AP的證據。可以通過查看以下註冊表位置獲取:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Profiles

在以上位置我們可以找到機器連接到的無線接入點的GUID列表。我們點擊其中的任意一個,它都將為我們顯示一些關於無線的詳細信息,其中包括SSID名稱和以十六進制表示的最後連接日期。

從以下截圖可以獲知,Borrell於2014年11月連接過SSID為“HolidayInnColumbia”的無線AP。

技術分享

RecentDocs鍵

Windows註冊表會跟蹤用戶活動的大量信息。通常情況下,這些註冊表項旨在使Windows運行更加高效和順利。但對於調查取證人員來說,這些鍵值就好比是用戶或攻擊者活動的線路圖。

這些鍵值中其中有一個叫“RecentDocs”的鍵,可以通過文件擴展來跟蹤系統上使用或打開的最新文檔。我們可以在以下位置找到它:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs

如果你想查看用戶最近使用的Word文檔,那麽我們可以在.doc或.docx擴展名下進行查找,這取決於它們創建的Word文檔的版本(每個鍵可以容納最近10個文檔)。例如我們點擊.docx擴展的鍵,可以看到這裏為我們列出了最近使用過的10個文檔。

技術分享

當我們點擊其中一個鍵時,它會顯示有關文檔的信息,如下所示。我們可以在十六進制,左側和ASCII格式的右側查看文檔數據。從以下數據可以得知,該文件是一個Metasploit的課程大綱。

技術分享

在某些時候攻擊者可能會上傳一個.tar文件,這將是一個非常好的證據。因為一般來說Windows機器上不應該顯示一個.tar文件擴展名,所以我們可以對.tar鍵中的文件做進一步的檢查,或許可以發現有關攻擊或攻擊者的蛛絲馬跡。

技術分享

在民事或政策違規調查中,證據可能會在各種圖形文件擴展名中找到(例如.jpg,.gif或.png)。

TypedURLs鍵

當用戶在Internet Explorer中輸入URL時,該值將被存儲在以下註冊表中:

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\TypedURLs

當打開該鍵時,它會為我們列出用戶使用IE訪問的最後URL瀏覽記錄。在這些記錄中或許我們可以找到惡意軟件的來源,或在民事或政策違規類的調查中,獲知用戶正在看的內容是什麽。

技術分享

鍵值將從urI1(最近的)~ urI25(之前的)。

IP地址

註冊表還跟蹤用戶接口的IP地址。請註意接口可能有多個,該註冊表項將跟蹤每個接口的IP地址及相關信息。

HKEY_LOCAL_MACHINE\System\Services\CurrentControlSet\services\Tcpip\Parameters\Interfaces

如下所示,我們可以找到分配給接口的IP地址,子網掩碼以及DHCP服務器租用IP的時間。這樣,我們就可以判斷嫌疑人在入侵或犯罪時是否使用了某個特定的IP。

技術分享

啟動項在註冊表中的位置

作為一名取證人員,我們經常需要找到哪些應用程序或服務會在系統啟動時被啟動。因為攻擊者很可能會通過這種方式來啟動他們在目標機器上種植的木馬程序,以與遠程服務器建立連接。我們可以在以下位置找到該啟動項:

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run

技術分享

這些子項中指定的任何軟件/位置都將在每次系統啟動時啟動。Rootkit和其它惡意軟件通常會被放置在這裏。

RunOnce啟動

如果攻擊者只是希望軟件在啟動時運行一次,則可以在此處設置子鍵。

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce

啟動服務

下面的鍵列出了系統啟動時將會啟動的所有服務。如果鍵值設置為2,服務將自動啟動;如果設置為3,則必須手動啟動服務;如果設置為4,則該服務被禁用。

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services

啟動遺留應用程序

運行16位應用程序時,列出的程序運行在:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\WOW

特定用戶登錄時啟動

在以下鍵中,鍵值將在特定用戶登錄時運行。

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

註冊表中的存儲設備證據

攻擊者常常會使用Flash驅動器或硬盤驅動器進行惡意攻擊,然後將其移除,以避免留下任何的證據。然而經驗豐富的取證人員,仍然可以在註冊表中找到這些存儲設備的證據。

不同版本的Windows系統,註冊表可能也有所不同。一名專業的取證人員,需要了解不同版本間的差異。由於Windows 7目前仍然是使用最廣泛的操作系統,所以這裏我將以Windows 7為例。

USB存儲設備

想象一下在某些場景中,攻擊者可能在你的電腦插入了一個USB設備,並拷貝走了你大量重要的數據文件。這時我們就可以通過以下鍵值,來查找USB存儲設備插入和使用的證據。

HK_Local_Machine\System\ControlSet00x\Enum\USBSTOR

展開USBSTOR可以查看到,所有曾經連接過該系統的USB存儲設備列表。

技術分享

在上面的截圖中,我圈出了一個可疑的USB設備。當我們展開它時,它會顯示該設備的唯一標識符。通過點擊此標識符,我們可以找到有關設備的更多信息。

技術分享

如上圖所示,當我們點擊USB存儲標識符時,它會在右側窗口中顯示全局唯一標識符(GUID),FriendlyName和硬件ID等。

掛載設備

如果攻擊者使用任何必須掛載的硬件設備來讀取或寫入數據(CD-ROM,DVD,硬盤驅動器,閃存驅動器等),註冊表將記錄已掛載的設備。 此信息存儲在:

HKEY_LOCAL_MACHINE\System\MountedDevices

如下所示,當我們點擊該鍵時,它為我們提供了一個很長的列表,列表中都是曾經掛載過的設備。

技術分享

如果我們需要獲取更多有關這些掛載設備的信息,我們可以簡單的點擊它,它將打開一個小的應用程序,使我們能夠以ASCII讀取數據。如圖所示,該設備是Teac制造的IDE CD-ROM。

技術分享

如果系統上沒有TEAC CD ROM,那麽取證人員就知道他們需要找到這塊硬件才能找到進一步的犯罪證據。

通過本文的學習,我們知道註冊表不僅僅是一個用於存儲Windows系統用戶,硬件和軟件的存儲配置信息的數據庫,更是計算機犯罪取證中的一個寶庫。想要成為一名合格的計算機取證人員,必須要熟練運用和掌握註冊表的相關知識。

詳解Windows註冊表分析取證