iT邦幫忙

0

Day 19|Wazuh FIM 進階應用:追蹤檔案修改內容與操作來源

  • 分享至 

  • xImage
  •  

一、FIM 進階監控功能

在第 18 天,我們已經透過 Wazuh FIM 功能,偵測檔案的新增、修改與刪除。
不過,在實際的資安事件調查中,僅知道檔案被修改通常還不夠,管理人員可能還需要了解:

  • 哪位使用者修改了檔案?
  • 透過什麼程序進行修改?
  • 檔案的哪些內容發生變化?
  • 修改是否屬於正常的系統維護?
    Wazuh 提供 whodata 與 report_changes 兩項功能,協助管理人員取得更詳細的檔案異動資訊。

二、FIM 進階監控功能比較

功能 說明 用途
realtime 即時偵測檔案變更 快速發現異常
whodata 記錄修改者與相關程序資訊 追蹤操作來源
report_changes 記錄文字檔案的內容差異 分析修改內容
check_all 檢查檔案完整性屬性 確認檔案變化

其中,whodata 在 Linux 系統上需要搭配 Audit 稽核機制,才能取得修改事件的相關資訊。

三、設定進階 FIM 監控

本次延續昨天建立的 /home/wazuh-test 目錄進行實作。
步驟一:確認 Audit 服務
在 Ubuntu 或 Debian 系統上,可以先安裝並確認 auditd:

sudo apt install auditd -y
sudo systemctl enable --now auditd
sudo systemctl status auditd

步驟二:修改 Wazuh Agent 設定
開啟設定檔:

sudo nano /var/ossec/etc/ossec.conf

找到既有的 區塊,將昨天測試目錄的設定改成:

<directories check_all="yes"
             whodata="yes"
             report_changes="yes">/home/wazuh-test</directories>

這次新增兩個重要參數:
whodata="yes":記錄檔案修改者及相關程序資訊。
report_changes="yes":記錄文字檔案修改前後的內容差異。
注意:以上設定應放在原本的 區塊中,不需要另外建立重複的區塊。
步驟三:重新啟動 Agent

sudo systemctl restart wazuh-agent

完成後,Wazuh 就能依照新的設定監控測試目錄。

四、模擬檔案內容變更

首先建立測試檔案:

echo "Version 1" | sudo tee /home/wazuh-test/config.txt

接著修改檔案內容:

echo "Version 2" | sudo tee /home/wazuh-test/config.txt

這個操作將原本的 Version 1 改為 Version 2。
如果已正確啟用 report_changes,Wazuh 就可以記錄文字內容的變化。
例如:

  • Version 1
  • Version 2
    以上為簡化的差異示意,實際 Wazuh 警報中的 syscheck.diff 可能使用不同的差異格式。

五、查看修改者與程序資訊

完成測試後,可以進入 Wazuh Dashboard 的 File Integrity Monitoring → Events 查看事件。
展開警報內容後,可以觀察以下資訊:

欄位 說明
syscheck.path 發生變更的檔案路徑
syscheck.diff 檔案修改前後的內容差異
syscheck.audit.user.name 執行變更程序的使用者
syscheck.audit.process.name 執行修改的程序名稱
syscheck.audit.process.id 修改程序的 PID
syscheck.changed_attributes 發生變更的檔案屬性

實際出現的欄位會依系統環境、稽核機制與監控設定有所不同。
透過這些資訊,管理人員可以進一步分析檔案修改事件,判斷是否存在異常操作。

六、實際應用與注意事項

進階 FIM 功能可以應用在多種資安監控情境,例如:

  1. 設定檔監控:追蹤重要服務設定檔被修改的內容。
  2. 網站安全監控:分析網站程式碼遭到變更的情形。
  3. 操作行為稽核:記錄修改檔案的使用者與程序。
  4. 事件調查:透過檔案變化與操作資訊,協助還原事件經過。
    需要特別注意的是,report_changes 會保存受監控檔案的副本以比較內容差異,因此可能增加儲存空間使用量。
    此外,若監控的檔案包含密碼或其他敏感資料,可能造成資訊洩漏風險。可以使用 排除特定檔案的內容差異紀錄。
    例如:
<nodiff>/home/wazuh-test/private.txt</nodiff>

這樣仍可監控該檔案的完整性變化,但不會在警報中提供其具體文字內容差異。


圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言