在使用 Wazuh 監控系統時,並非所有事件都代表真正的資安威脅。例如,使用者輸入錯誤密碼、管理員正常登入,或系統服務重新啟動,都可能產生警報。
如果警報數量過多,管理人員可能無法及時發現真正重要的安全事件,因此需要適當調整規則條件與警報等級。
常見的警報問題包括:
Wazuh 使用 0~16 的規則等級表示事件的重要程度,數值越高,通常代表事件越需要關注。
| 等級 | 說明 |
|---|---|
| 0 | 忽略事件,不產生一般警報 |
| 1~3 | 低重要性事件 |
| 4~6 | 一般事件與低風險異常 |
| 7~9 | 值得關注的安全事件 |
| 10~12 | 高風險安全事件 |
| 13~16 | 嚴重或高度重要的安全事件 |
以上為方便理解的概略分類,實際仍應依規則內容與系統環境判斷。
Wazuh 允許管理人員透過自訂規則調整事件的警報等級。
自訂規則通常放在以下位置:
/var/ossec/etc/rules/local_rules.xml
假設希望將特定 SSH 登入失敗事件的警報等級設定為 8,可以新增以下示範規則:
<group name="local,sshd,"> <rule id="100017" level="8"> <if_sid>5716</if_sid> <description>SSH authentication failure - adjusted level</description> </rule> </group>
其中:
除了調整警報等級,也可以針對特定來源 IP 設定例外條件。
例如,假設內部測試主機的 IP 為 192.168.1.100,希望對符合規則 5716 且來自該 IP 的事件降低警報等級:
<group name="local,sshd,"> <rule id="100018" level="2"> <if_sid>5716</if_sid> <srcip>192.168.1.100</srcip> <description>SSH failure from internal test host</description> </rule> </group>
這樣可以讓符合條件的事件使用較低的警報等級。
不過,不建議直接忽略所有內部 IP 的安全事件,因為內部主機同樣可能遭到入侵。
修改完成後,可以使用 Wazuh 提供的工具測試規則:
sudo /var/ossec/bin/wazuh-logtest
接著輸入測試日誌:
Oct 18 10:30:00 server sshd[1234]: Failed password for root from 192.168.1.100 port 52222 ssh2
觀察測試結果是否符合預期,包括:
sudo systemctl restart wazuh-manager
| 優化方式 | 目的 | 注意事項 |
|---|---|---|
| 調整規則等級 | 區分事件重要性 | 避免降低真正高風險事件的等級 |
| 設定來源 IP 條件 | 區分特定來源事件 | 內部 IP 不代表絕對安全 |
| 增加規則條件 | 提高警報精確度 | 條件過嚴可能漏掉攻擊 |
| 測試自訂規則 | 確認規則正常運作 | 應使用正常與異常事件測試 |
| 定期檢查警報 | 持續改善監控品質 | 需隨系統環境變化調整 |
警報優化的目的不是單純減少警報數量,而是讓真正重要的資安事件更容易被發現。