今天會分享沒有放在 %WinDir%\System32\Config
,但是很值得去查看的其他兩個 hive,分別是 Amcache.hve、NTUSER.DAT。
路徑位置:%WinDir%\AppCompat\Programs\Amcache.hve
自 Windows 8 起引入,記錄了已執行應用程式的詳細資訊,包括檔案路徑、SHA-1 雜湊值、時間戳記等。
若惡意程式本體被刪除或遭清除,無法從映像直接看到該檔案本身時,可以透過 Amcache 的記錄去驗證該程式曾經被執行過
可以先使用 RegistryExplorer 合併 Transport logs 後直接查看或者使用 Eric Zimmerman's tools 中的 AmcacheParser 轉成 CSV 檔
AmcacheParser 是由數位鑑識專家 Eric Zimmerman 所開發的一款命令列工具,專門用於解析 Windows 系統中的 Amcache.hve 註冊檔,支援將解析結果輸出為 CSV 格式,方便後續分析與處理
PS C:\Users\yunshiuan\Desktop\net9 > .\AmcacheParser.exe -f C:\Users\yunshiuan\Desktop\Amcache.hve_clean --csv C:\Users\yunshiuan\Desktop
AmcacheParser version 1.5.2.0
Author: Eric Zimmerman (saericzimmerman@gmail.com)
https://github.com/EricZimmerman/AmcacheParser
Command line: -f C:\Users\yunshiuan\Desktop\Amcache.hve_clean --csv C:\Users\yunshiuan\Desktop
Warning: Administrator privileges not found!
Unknown value name when processing DevicePnp at path {11517B7C-E79D-4e20-961B-75A811715ADD}\Root\InventoryDevicePnp\display/default_monitor/1&1f0c3c2f&0&uid256: ManifestPath
C:\Users\yunshiuan\Desktop\Amcache.hve_clean is in new format!
Total file entries found: 240
Total shortcuts found: 51
Total device containers found: 13
Total device PnPs found: 94
Total drive binaries found: 373
Total driver packages found: 4
Found 123 unassociated file entry
Results saved to: C:\Users\yunshiuan\Desktop
Total parsing time: 0.909 seconds
它的輸出會有很多 CSV 檔,可能會出現下面檔案
Amcache_ProgramEntries.csv | 程式條目(Programs Entry) | 描述註冊在 Amcache “Programs” 分支下的應用程式資訊,如安裝資訊或註冊的程式條目。 |
---|---|---|
Amcache_AssociatedFileEntries.csv | 關聯的檔案條目 | 指那些能夠被對應(或關聯)到程式條目的檔案條目(File entries)。即那些被安裝程式所擁有或管理的檔案。 |
Amcache_UnassociatedFileEntries.csv | 無關聯的檔案條目 | 指那些沒有被關聯到任何程式條目的檔案條目,也就是那些孤立的可執行檔 / 檔案。這是很多調查中重點查看的部分,因為可能是惡意工具或獨立執行檔。 |
Amcache_Shortcuts.csv | 快捷方式 / 連結資訊 | 描述系統或應用程式捷徑(.lnk 或類似連結)相關的資訊,例如快捷目標、路徑等。 |
Amcache_DeviceContainers.csv | 裝置容器 (Device Container) | 與裝置(例如 USB 裝置、硬體裝置)或其容器有關的條目。 |
Amcache_DevicePnps.csv | 裝置 PnP 條目 (Plug-and-Play 裝置) | 描述插拔裝置 (PnP 裝置) 的資訊,例如硬體 ID、裝置名稱、相關時間等。 |
Amcache_DriveBinaries.csv | 驅動程式二進位檔 | 涉及驅動程式(driver binaries)或在磁碟上可執行但屬驅動程式範疇的條目。 |
Amcache_DriverPackages.csv | 驅動套件 (Driver Packages) | 關於驅動程式套件安裝、驅動套件版本、封裝資訊等。 |
接下來就可以用 Timeline Explorer 或者其他可以查看 CSV 檔的程式查看內容
假設想要知道 notepad.exe 的實際路徑以及它的 SHA-1 值,按照上面的步驟並在 <XXX_UnassociatedFileEntries.csv>
搜尋 notepad.exe
可以馬上就看到相關資訊
路徑位置:C:\Users\<username>\NTUSER.DAT
NTUSER.DAT 是 Windows 每個使用者帳戶在其使用者設定檔底下的一個檔案,用來儲存與該帳戶相關的 Registry 設定與使用者偏好,在使用者登入時,系統會將這個檔案對應到註冊表的 HKEY_CURRENT_USER(HKCU) 分支,讓該使用者的作業與應用程式可以讀寫其個人設定;在登出或關機時,這些變更會回寫到 NTUSER.DAT。
可以直接用 RegistryExplorer 查看。
這邊重點提兩個比較特別的 key
key 路徑:Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\{GUID}\Count
UserAssist 是 Windows 用來追蹤使用者透過圖形介面啟動應用程式或捷徑的統計記錄機制,裡面會包含程式的執行次數、最後執行時間、Focus Count、Focus Time
ShellBags 是 Windows 用於記錄使用者在檔案總管中瀏覽資料夾時的設定偏好與檔案夾訪問紀錄,包括資料夾的視窗配置 / 檢視樣式 / 排列方式 / 大小 / 位置等,代表如有刪除或存取資料夾的操作會被記錄在 ShellBags 當中。
它會依照作業系統存在不同地方
<NTUSER.DAT>\Software\Microsoft\Windows\Shell\BagMRU
<NTUSER.DAT>\Software\Microsoft\Windows\Shell\Bags
C:\Users\<username>\AppData\Local\Microsoft\Windows\UsrClass.dat
如果直接使用 RegistryExplorer 會很難閱讀,建議使用 Eric Zimmerman's tools 中的 ShellBags Explorer 查看
下載連結:https://ericzimmerman.github.io/#!index.md
ShellBags Explorer 是由 Eric Zimmerman 所開發的一款專門用來瀏覽與解析 Windows ShellBags 資料的工具,將 BagMRU / Bags 的註冊表資料解析為資料夾層級樹狀視圖,可以看到使用者曾瀏覽過哪些資料夾
它的介面跟 RegistryExplorer 差不多,一樣需要匯入 hive,看作業系統版本匯入 NTUSER.DAT
或者 UsrClass.dat
匯入後就可以看到 ShellBags 資訊
今天分享了 Amcache.hve、NTUSER.DAT 兩個 Hive,多了一點線索可以分析,這兩個 Hive 對於 Disk Forensic 來說挺重要也挺常用到的,在打藍隊 Lab 或 CTF 時如果沒什麼線索也會跑來看這兩個 Hive,明天也會持續分享其他可分析的部分。