iT邦幫忙

1

Day 25:Wazuh 惡意程式偵測實作:整合 VirusTotal 威脅情資

  • 分享至 

  • xImage
  •  

一、什麼是 VirusTotal?

VirusTotal 是一個線上惡意程式分析平台,能夠整合多種防毒引擎的分析結果,協助使用者判斷檔案或網址是否具有安全風險。

在第 24 天,我們介紹了 Wazuh 的檔案完整性監控(FIM),可以偵測檔案是否遭到修改。

但是,檔案發生變化不代表一定存在惡意行為。因此,可以進一步整合 VirusTotal,協助判斷異動檔案是否具有惡意特徵。

Wazuh 可透過 VirusTotal API 查詢檔案雜湊值,取得既有的安全分析結果。

二、Wazuh 與 VirusTotal 的運作流程

整合後的偵測流程如下:

  1. Wazuh FIM 偵測到檔案新增或修改。
  2. 系統產生檔案異動事件。
  3. Wazuh 取得異動檔案的 Hash 值。
  4. 透過 VirusTotal API 查詢分析結果。
  5. 根據回傳結果產生安全警報。
  6. 管理員透過 Dashboard 查看事件。
    需要注意的是,這種整合主要是查詢 VirusTotal 已有的檔案雜湊分析紀錄,並非直接上傳整個檔案進行掃描。

三、VirusTotal API 設定

步驟 1:取得 API Key
前往 VirusTotal 官方網站,註冊並登入帳號,取得個人的 API Key。

VirusTotal 提供免費 Public API,但具有請求次數限制,因此不適合直接用於大量檔案分析。
步驟 2:修改 Wazuh Manager 設定
在 Wazuh Server 上編輯設定檔:

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

在最外層的 <ossec_config> 區塊內加入:

<integration>
  <name>virustotal</name>
  <api_key>YOUR_API_KEY</api_key>
  <group>syscheck</group>
  <alert_format>json</alert_format>
</integration>

設定參數說明:

參數 功能
name 指定整合服務為 VirusTotal
api_key 填入 VirusTotal API Key
group 指定處理 syscheck 事件
alert_format 使用 JSON 格式處理警報

請將 YOUR_API_KEY 替換成自己的金鑰,避免將真實 API Key 公開至 GitHub 或文章中。
步驟 3:重新啟動 Wazuh Manager

sudo systemctl restart wazuh-manager

重新啟動後,Wazuh 即可依照設定處理符合條件的 FIM 警報。

四、設定監控目錄

接下來設定 Wazuh Agent,讓系統監控指定資料夾。

首先建立測試目錄:

sudo mkdir -p /opt/wazuh-test

開啟 Agent 設定檔:

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

在 區塊中加入:

<directories check_all="yes" realtime="yes">/opt/wazuh-test</directories>

重新啟動 Agent:

sudo systemctl restart wazuh-agent

完成後,Wazuh 會監控目錄中的檔案異動,並在符合條件時觸發 VirusTotal 查詢。

五、模擬惡意檔案偵測

為了驗證整合功能,可以使用 EICAR 測試檔案。

EICAR 是專門用於測試防毒軟體的標準測試檔案,本身不包含真正的惡意程式功能。

建議僅在隔離的測試環境中操作。
步驟 1:下載測試檔案
在 Wazuh Agent 所在的 Linux 測試環境執行:

sudo curl -L \
https://secure.eicar.org/eicar.com \
-o /opt/wazuh-test/eicar.com

步驟 2:觀察偵測結果
當 Wazuh FIM 偵測到檔案新增時,便會產生檔案異動事件。

接著,整合模組會嘗試查詢 VirusTotal 的檔案分析資料。

可能產生以下結果:

偵測結果 說明
Malicious detected 有防毒引擎判定檔案具有惡意特徵
No positives found 查詢紀錄中沒有引擎判定為惡意
No records found VirusTotal 尚無該檔案的分析紀錄
API rate limit 已達 API 請求限制
Invalid API Key API 金鑰無效或驗證失敗

若測試檔案未成功下載,或被其他安全軟體提前攔截,則可能無法產生預期警報。

六、查看 Wazuh Dashboard 警報

進入 Wazuh Dashboard 的 Threat Hunting 頁面,搜尋 VirusTotal 相關事件。

可以使用以下搜尋條件:

rule.groups: virustotal

正常情況下,可以查看檔案分析結果、觸發規則及事件時間等資訊。

例如,當多個防毒引擎判定某個檔案為惡意檔案時,Wazuh 可以產生對應的安全警報,提供管理員進一步調查。

另外,也可以在 Wazuh Manager 上檢查整合模組的日誌:

sudo tail -f /var/ossec/logs/integrations.log

七、VirusTotal 整合的優點與限制

項目 說明
優點 整合多種防毒引擎的分析結果
優點 可搭配 FIM 自動查詢檔案 Hash
優點 協助判斷可疑檔案的安全風險
限制 免費 API 具有請求次數限制
限制 未知檔案可能沒有分析紀錄
限制 偵測結果仍可能出現誤判
限制 預設整合不會自動刪除惡意檔案

因此,VirusTotal 適合作為 Wazuh 的輔助威脅情資來源,而不是完全取代端點防毒軟體。

如果需要進一步自動隔離或刪除惡意檔案,可以另外結合 Wazuh Active Response,但應先在測試環境中驗證,避免誤刪正常檔案。


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

尚未有邦友留言

立即登入留言