今天要打的是 Africanfalls Lab,難度為 medium,分類是 Endpoint Forensics。
SQLite Viewer, shellbag explorer, PECmd, Timeline explorer, exiftool, Mimikatz
John Doe 被指控從事非法活動。他的筆記型電腦的磁碟映像被盜了。作為 SOC 分析師,你的任務是分析該映像並了解幕後發生了什麼。
在 DiskDrigger.ad1.txt 中,可以看到 MD5 checksum 為 9471e69c95d8909ae60ddff30d50ffa1
Ans:9471e69c95d8909ae60ddff30d50ffa1
前面講過 chrome 瀏覽器的紀錄會存在 Users\John Doe\AppData\Local\Google\Chrome\User Data\Default\History,我們用 DB Browser 打開,在 keyword_search_terms Table 有搜尋紀錄,但是並沒有記錄他的時間
urls Table 有紀錄訪問時間,但是它使用的是 Webkit timestamp,Webkit timestamp 是一種由 Chrome 和其他 Webkit 瀏覽器使用的時間戳,它以從 1601 年 1 月 1 日開始的微秒數來記錄時間。
我最終定位到 13264193858900891 這個時間,經過轉換正好為題目所說的 2021-04-29 18:17:38
而這條紀錄的 title 是 password cracking lists - Google Search,顯示他搜尋了 password cracking lists 這個關鍵字。
Ans:password cracking lists
可以看到使用者的電腦上有 FileZilla。FileZilla 是一款開源的 FTP client,調查他的歷史紀錄可以得到過去連線過的伺服器位址、使用者名稱、密碼等等對我們的調查至關重要的資訊。
前面提到過這種要同步的資料會存在 Roaming 目錄。
\Users\John Doe\AppData\Roaming\FileZilla\ recentservers.xml 存著最近連線的伺服器位址
Ans:192.168.1.20
在回收桶中可以看到一份密碼清單 $Recycle.Bin\S-1-5-21-3061953532-2461696977-1363062292-1001$RW9BJ2Z.txt
從 Windows Vista 開始,微軟回收桶採用分離式的雙檔案系統。
使用者刪除檔案時,系統會建立兩個檔案:
$I 檔案:名稱為 $I + 6 位隨機字元,儲存被刪除檔案的元數據,例如:原始檔案名稱、完整路徑、刪除時間等。
$R 檔案:名稱為 $R + 與 $I檔案相同的 6 位隨機字元,儲存被刪除檔案的實際內容。
所以這份刪除的密碼清單刪除時間實際上是 4/29/2021 6:22:17 PM。
Ans:2021-04-29 18:22
Prefetch 檔案是 Windows 為提升應用程式載入速度而設計的效能最佳化機制。系統會記錄程式所需的資源、執行次數等,並儲存為 Prefetch 檔案,下次執行相同程式時就能根據 Prefetch 預先載入資源,提升效率。
透過分析 Prefetch 檔案,我們可以重建程式執行時間線、偵測惡意軟體活動、追蹤使用者行為,甚至在原始程式已被刪除的情況下仍能提供執行證據。
我們可以用 Eric Zimmerman 的 PECmd 來分析 Prefetch 檔案
Prefetch 檔案存在 \Windows\Prefetch\ ,直接把整個資料夾匯出
.\PECmd.exe -d \Prefetch --csv "output" --csvf "prefetch.csv"
-d 指定 prefetch 資料夾路徑,--csv 指定輸出路徑,--csvf 輸出檔案名稱
接著我們用 Timeline explorer 分析輸出
可以看到他執行的是 TORBROWSER-INSTALL-WIN64-10.0,這是 tor 瀏覽機的安裝程式,我們並沒有看到 Tor.exe 被執行,所以可以推斷他並沒有被執行過
Ans:0
在 History 的 urls Table 中搜尋 mail,可以看到使用者在 dreammaker82@protonmail.com 這個電子郵件的收件匣下,可以得知這是他的電子郵件。
Ans:dreammaker82@protonmail.com
剛剛在瀏覽 History的時候可以看到使用者下載了 nmap 和 battercap
nmap 是一款知名的開源網路掃描工具,而 bettercap 是一款用於進行中間人攻擊(Man in the Middle attack)的工具。
它們使用指令操作,所以透過瀏覽指令紀錄就可以知道使用者用這些工具做了甚麼。,在 Users\John Doe\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine 下找到 powershell 歷史紀錄 ConsoleHost_history.txt
我們可以看到使用者用 nmap 掃描了 dfir.science 這個域名。
Ans:dfir.science
在 \Users\John Doe\Pictures\Contact\ 下找到 20210429_152043.jpg 這張照片
要知道這張照片是在哪裡拍攝的,我們可以用 exiftool 這個工具來查看圖片的元數據。
& '.\exiftool(-k).exe' .\20210429_152043.jpg
把它調成 google map 接受的格式,像是 16°00'00.0"S 23°00'00.0"E
可以看到他位於尚比亞。
Ans:Zambia
ShellBags 是 Windows 記錄使用者資料夾瀏覽偏好設定的登錄項目,它能夠追蹤使用者透過 Windows Explorer 存取過的資料夾,即使資料夾已被刪除或位於已移除的外部裝置上。
ShellBags 主要存在 NTUSER.DAT 和 UsrClass.dat 這兩個 hive 中,但是我們這裡沒有 NTUSER.DAT 這個檔案,所以我們只剩 UsrClass.dat 能分析。
在 \Users\John Doe\AppData\Local\Microsoft\Windows 下找到 UsrClass.dat
把它全部匯出到一個資料夾然後用 shellbag explorer 打開這個資料夾
我們可以看到有一個名叫 LG Q7 的裝置曾經連接到使用者的電腦上,剛剛 exiftool 的輸出中可以看到照這張照片的相機型號名稱叫 LM-Q725k,所以我們可以推斷出這張照片應該是從這個裝置上被傳到使用者的電腦裡的。
DCIM (Digital Camera Images) 資料夾是手機和相機上常見的目錄結構,用於儲存拍攝的照片,而這張照片是拍攝出來的,所以可以判斷它原本存在 /DCIM/Camera 下。你可能會覺得 shellbag explorer 沒有顯示 20210429_151535.jpg 這個檔案代表它不在 /Camera 目錄下,但這很可能是因為 NTUSER.DAT 的缺失所以我們的資料並不齊全導致的。
Ans:Camera
把 NTLM 雜湊值丟到 Hashes.com
Ans:AFR1CA!
SAM (Security Account Manager ) 是 Windows 作業系統中的安全帳戶管理資料庫,負責儲存本機使用者帳戶的認證資訊,包括使用者名稱和密碼雜湊值。
要從 SAM 檔案提取雜湊值需要擁有 SYSTEM 檔案,因為 SAM 資料庫使用 SYSKEY 機制加密,而解密金鑰儲存在 SYSTEM hive 中。
我們使用 Mimikatz,專門用於 Windows 提取憑證資訊的工具,來提取使用者的 NTLM 雜湊值。
啟動 mimikaz
lsadump::sam /system:path_to_SYSTEM /sam:path_to_SAM
/system:指定 SYSTEM 路徑,/sam:指定 SAM 路徑
可以看到 John Doe 的 NTLM 雜湊值為 ecf53750b76cc9a62057ca85ff4c850e,一樣丟到 Hashes.com
Ans:ctf2021
今天學到了很多進階 Windows 鑑識技術,像是:透過 Prefetch 分析應用程式執行資訊、分析 ShellBags 得知檔案瀏覽紀錄、使用 Mimikatz 提取並成功破解使用者的密碼等。
除了 Windows 鑑識技術外,我們也學到了如何從照片中提取地理位置、從瀏覽紀錄獲取使用者的 email 等等不可或缺的的分析技巧。
明天我們將學習 Android 鑑識。