FineArt News

認識Windows Registry 與內控取證

Registry對於內部安全稽核與取證鑑識來說,Registry是個重要寶藏,很少人去瞭解Registry作用與運作。透過Registry資料分析,可以曾了解系統發生過哪些事件? 觸發事件時間? 發生的脈絡,其價值好比中醫的經絡穴位一樣,牽動著作業系統的運作順暢及穩定外,更可掌握管控機制對作業系統與應用程式(Application),甚至連接硬體裝置運作的關係。反之,一個被汙染的Registry,舉凡:惡意程式注入、挖礦軟體常駐、防毒系統關閉、內賊惡意提權、內鬼迴避內部控管機制,甚至嚴重到作業系統開機失敗…等,都可從Registry來遂行其目的。

 

認識Windows Registry 結構

 

Registry是存儲Windows OS、使用者、硬體、應用程式的配置資訊資料庫。雖然Registry是為配置Windows系統孕育而生,但進一步Registry可追蹤使用者活動、所連接系統的裝置與設備,應用程式在什麼時間被使用都被記錄在Registry。這些資訊都可用內部安全稽核與事件取證溯源使用者是惡意行為或非故意行為。

 

Registry五個根(root),每一個根都是一個巢狀資料庫,易被稱為「蜂巢」分述如下:

  • HKEY_CLASSES_ROOT
    這裡記載主要OLE跟檔案對應配置資訊。儲存Windows可辨識的檔案類型的詳細列表,及關聯的程式對應資料。 

  • HKEY_CURRECT_USER
    這裡記錄使用者有關系統與程式的「設定值」「鍵值」。簡言之,儲存目前使用者設定的資訊。例如:顏色配置、標題、桌面配置。 

  • HKEY_LOCAL_MACHINE
    這裡詳細列載電腦、驅動程式及其他系統設定。換言之就是該電腦機器描述資訊,例如:已安裝硬體種類、連接埠關係、軟體組態及其他。這些資訊提供給電腦使用,不是使用者喔!!早些年許多軟體破解多從此處著手。

  • HKEY_USERS
    這裡記錄著該台電腦中所有使用者的環境資料。每個使用者資料都存在此處。亦提供新登入的新使用者預設的模板環境資訊。

  • HKEY_CURRECT_CONFIG
    記錄著該電腦實際連接的硬體設定,簡言之,就是記錄電腦目前的硬體組態資訊。可以有多重的組態可供使用。資料是複製位於HKEY_LOCAL_MACHINE裡的組態資訊。

 

Registry對於內控稽核取證價值

基本上可以透過Registry查找出使用者最後一次使用系統的時間、最近使用過的應用程式(綠色軟體除外)、掛載連接到該電腦的任何裝置,例如:USB裝置、手機、HDD、鍵盤滑鼠…相關識別資訊、電腦連接過的那些特定Wi-Fi AP、那些系統環境被Access與變更…等。特別舉幾個範例來說明:

 

Wi-Fi 取證鑑識

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

最近使用檔案清單

  • HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\TypedURLs
  • HKEY_CURRENT_USER\Software\Microsoft\Office.0\Word*\File MRU
  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\ OpenSavePidlMRU
  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\ LastVisitedPidlMRU**
  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU
  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs
  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit

URL取證鑑識

  • HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\TypedURLs

追踪使用者接取的IP資料取證

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

USB 連接取證資料

  • HK_Local_Machine\System\ControlSet00x\Enum\USBSTOR
  • HKEY_LOCAL_MACHINE\SYSTEM\MountedDevice
  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2
  • HKEY_LOCAL_MACHINE\SYSTEM\Currentcontrolset\Enum\Usb
  • \Windows\inf\setupapi.dev.log for Windows Vista, 7, and 8, & at \Windows\inf\setupapi.upgrade.log for Windows 10.

檢查註冊表可疑自啟動項

  • HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run

電腦服務啟動取證

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services

電腦掛載設備取證

  • HKEY_LOCAL_MACHINE\System\MountedDevices

尋找已刪除殘留應用程式

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\

效能提升用,清除記憶體內被不使用的DLL檔

  • HKKEY_LOCAL_MACHINE]–[SOFTWARE]–[Microsoft]–[Windows]–[CurrentVersion],在[Explorer]增加一個項[AlwaysUnloadDLL],設值為1

網路分析取證

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Nla\Cache\Intranet
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Nla\ Wireless*
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\ Signatures\Unmanaged**
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\ Profiles***

Windows Shutdown Time

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Windows

UserAssist Forensics

  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist

Printer Registry Information

  • HKEY_CURRENT_USER\Printers
  • HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\Control\Print

 

結論

對端點裝置來說,Registry的管控是一個重要的管制節點,在DLP或是新一代EDR來說,更是重要警示與防禦的節點。Registry被認為是Windows的核心,Windows用戶執行所有操作都以一種或另一種方式存儲在其Registry中。 這使得Windows Registry成為重要的證據來源,對於任何數位鑑識調查都是極為寶貴。