本文說明如何啟用並設定 Sysmon,以在 Windows 系統上收集詳細的安全遙測數據。 內容涵蓋安裝選項、服務行為及組態要求,以開始捕捉高保真度事件資料以供安全監控與鑑識分析。
Sysmon 預設是被關閉的。 你必須明確安裝並設定它來產生事件。 有效的部署需要選擇合適的配置、了解包含與排除過濾行為,並確保服務受到保護並可靠地記錄資料以供下游分析。
Sysmon 做了什麼,什麼不做
Sysmon 會記錄系統活動並將事件寫入 Windows 事件日誌。
Sysmon 不會分析事件或產生警報。
Sysmon 不會阻擋或阻止活動。
要分析 Sysmon 事件,請將其轉發至 Windows 事件集合或 SIEM) (安全資訊與事件管理解決方案,例如 Splunk
必要條件
啟用內建 Sysmon 前,請確保:
運行支援版本 Windows 11 或更新版本的裝置。
你在裝置上擁有管理員權限或等效權限。
獨立的 Sysmon 沒有安裝。 內建的 Sysmon 不支援與獨立 Sysmon 共存。
檢查現有安裝
內建的 Sysmon 設計為原生 Windows 功能,不支援與獨立 Sysmon 共存。
要確認 Sysmon 沒有在運行,請依照步驟操作。
以管理員身份開啟 PowerShell 視窗。
請使用以下指令檢查 Sysmon 服務。
Get-Service sysmon*檢查輸出,你不應該回傳任何結果。 如果有,務必先卸載獨立的 Sysmon 再繼續。
啟用內建 Sysmon
內建 Sysmon 預設為停用,且必須明確啟用。 要啟用 Sysmon,請依照步驟操作。
要安裝 Sysmon 的可選功能,請執行以下指令。
Enable-WindowsOptionalFeature -Online -FeatureName Sysmon要依預設設定安裝 Sysmon,請執行以下指令。
sysmon –i
提供 Sysmon 配置
Sysmon 使用設定檔來判斷哪些事件被記錄,哪些事件被過濾掉。
設定檔以 XML 撰寫,並定義了記錄特定 Sysmon 事件的規則。 一些事件類型範例包括:流程建立、網路連接和檔案建立。 欲了解更多關於設定檔運作方式的資訊,請參閱 《理解 Sysmon 設定檔》。
建立或取得 Sysmon 設定檔。 配置通常包括:
啟用事件類型
包含與排除過濾規則
雜湊演算法與元資料選項
以下是可用的範例設定與指南:
Sysmon-config – 由 SwiftOnSecurity 維護的預設高品質 Sysmon 事件設定:
Sysmon-modular – 模組化 Sysmon 配置,搭配 MITRE ATT&CK 覆蓋,由 Olaf Hartong 維護
SysmonCommunityGuide – 由 Carlos Perez 維護的 Sysmon 指南、技術細節及範例
Sysmon 配置深度解析
設定檔通常包括:
啟用事件類型
包含與排除過濾規則
雜湊演算法與元資料選項
您可以在以下資源中找到範例設定檔與指南:
Sysmon-config – 由 SwiftOnSecurity 維護的預設高品質 Sysmon 事件設定:
Sysmon-modular – 模組化 Sysmon 配置,搭配 MITRE ATT&CK 覆蓋,由 Olaf Hartong 維護
Carlos Perez 的 SysmonCommunityGuide – 一份指南、技術細節與 Sysmon 範例
將設定檔放入你選擇的任何目錄中,例如:
C:\Sysmon\sysmonconfig.xml以管理員身份開啟 PowerShell 視窗
用指令
cd將目錄改成你放置設定檔的目錄。 例如,cd c:\Sysmon要套用你的設定檔,請執行以下其中一項:
- 請使用以下指令設定 Sysmon 的設定檔。 記得用你的設定檔路徑來替換
C:\Sysmon\sysmonconfig.xml。
sysmon – c C:\Sysmon\sysmonconfig.xml或
如果你還沒安裝 Sysmon,可以用以下指令用設定檔安裝 Sysmon。 記得用你的設定檔路徑來替換
C:\Sysmon\sysmonconfig.xml。sysmon -i C:\Sysmon\sysmonconfig.xml
套用後,該配置立即生效。 不需要重啟。
- 請使用以下指令設定 Sysmon 的設定檔。 記得用你的設定檔路徑來替換
重要
限制性或未優化的配置可能會產生大量事件量。 在廣泛部署前,先檢視並測試設定。
範例配置
以下範例展示了一個最小的 Sysmon 配置,使常見事件類型得以實現:
<Sysmon schemaversion="4.90">
<HashAlgorithms>SHA256</HashAlgorithms>
<EventFiltering>
<ProcessCreate onmatch="exclude" />
<NetworkConnect onmatch="exclude" />
<FileCreate onmatch="exclude" />
</EventFiltering>
</Sysmon>
此範例可實現基本可見性,並可擴充包含與排除規則以降低雜訊。
提示
Process create on match -exclude 無子參數時包含所有製程建立事件
確認 Sysmon 是否已啟用並設定
啟用並設定內建 Sysmon 後,請依照以下步驟確認其正常運作。
選擇 開始 按鈕,輸入 事件檢視器,然後從最佳配對清單中開啟 活動檢視 器。
在事件檢視器中,請前往 Microsoft > Windows > 系統運作>中的應用程式與服務日誌>。
確認 Sysmon 事件是否存在,例如程序建立、網路連接、檔案建立。 若事件發生,表示內建 Sysmon 已啟用並使用主動設定。
更新 Sysmon 設定
要更新 Sysmon 設定,請依照以下步驟操作。
請依照 「了解 sysmon 設定檔」中的指引修改 Sysmon 設定檔。
請使用以下指令套用更新後的設定。 記得替換
C:\Sysmon\sysmonconfig.xml成你的設定檔路徑。
sysmon -c C:\Sysmon\sysmonconfig.xml
設定更新是動態執行的,不需要重啟系統。
後續步驟
調整 Sysmon 濾波器以平衡可見性與事件音量。
將 Sysmon 事件轉發到集中式日誌收集(SIEM)。
請參閱設定後的 Sysmon 讀取 /轉發與調整教學。