使用 Azure 監視代理程式的變更追蹤和清查概觀

適用於: ✔️ Windows VM ✔️ Linux VM ✔️ Windows 登錄 ✔️ Windows 檔案 ✔️ Linux 檔案 ✔️ Windows 軟體 ✔️ Windows 服務與 Linux 精靈

重要

  • 變更追蹤和清查目前使用 Log Analytics 代理程式,但這排程於 2024 年 8 月 31 日淘汰。 建議您使用 Azure 監視代理程式作為新的支援代理程式。
  • 一旦正式推出,便會提供指引以將使用 Log Analytics 代理程式的變更追蹤和清查移轉至使用 Azure 監視代理程式。 深入了解
  • 建議您透過 Azure 監視代理程式使用變更追蹤延伸模組版本 2.20.0.0 (或更新版本) 的變更追蹤以存取此服務的正式發行版本。

本文說明最新版本的變更追蹤支援如何使用 Azure 監視代理程式作為資料收集的單一代理程式。

注意

以 Log Analytics 代理程式為基礎的檔案完整性監視目前正式發行版本將於 2024 年 8 月取代,並即將透過 MDE 提供新的版本。  以 Azure 監視代理程式 (AMA) 為基礎的 FIM 公開預覽將於透過 MDE 提供替代版本時取代。 因此,AMA 公開預覽版本的 FIM 未計劃正式發行。 請在這裡閱讀公告。

重點優勢

  • 與統一監視代理程式的相容性 - 與 Azure 監視器代理程式相容,可增強安全性、可靠性,並協助多路連接體驗來儲存資料。
  • 與追蹤工具的相容性- 與透過用戶端虛擬機器上 Azure 原則部署的變更追蹤 (CT) 擴充功能相容。 您可以切換至 Azure 監視器代理程式 (AMA),然後 CT 延伸項目會將軟體、檔案和登錄推送至 AMA。
  • 多路連接體驗 – 提供一個中央工作區的標準化管理。 您可以從記錄分析 (LA) 轉換為 AMA,讓所有 VM 都指向單一工作區,以進行資料收集和維護。
  • 規則管理 – 使用 資料收集規則來設定或自訂資料收集的各個層面。 例如,您可以變更檔案集合的頻率。

目前的限制

使用 Azure 監視代理程式變更追蹤和清查目前不支援下列限制:

  • Windows 登錄追蹤的遞迴
  • 網路檔案系統
  • 不同安裝方法
  • 儲存在 Windows 上的 *.exe 檔案
  • [最大檔案大小] 資料行和值未用於目前實作中。
  • 如果您要追蹤檔案變更,其大小限制為 5 MB 或更少。
  • 如果檔案大小顯示為 > 1.25MB,則 FileContentChecksum 由於總和檢查碼計算中的記憶體限制而不正確。
  • 如果您嘗試在 30 分鐘的收集週期收集超過 2500 個檔案,則變更追蹤和清查的效能可能會下降。
  • 若網路流量較高,變更記錄最多可能需要六個小時才會顯示。
  • 如果您在關閉電腦或伺服器時修改組態,其可能會提出屬於舊有組態的變更。
  • 在 Windows Server 2016 Core RS3 機器上收集 Hotfix 更新。
  • 即使未發生任何變更,Linux 精靈程式也可能會顯示已變更的狀態。 此問題發生的原因在於 Azure 監視器 ConfigurationChange 表格中的 SvcRunLevels 資料寫入方式。
  • 變更追蹤延伸模組不支援 Linux 作業系統或發行版的強化標準。

限制

下表顯示對於變更追蹤和清查所追蹤的每個機器項目限制。

資源 限制 注意事項
檔案 500
檔案大小 5 MB
登錄 250
Windows 軟體 250 不包含軟體更新。
Linux 套件 1,250
Windows 服務 250
Linux 精靈 250

受支援的作業系統

所有符合 Azure 監視器代理程式需求的作業系統都支援變更追蹤和清查。 如需 Azure 監視器代理程式目前支援的 Windows 和 Linux 作業系統版本清單,請參閱支援的作業系統

若要瞭解 TLS 的用戶端需求,請參閱 TLS for Azure 自動化

啟用變更追蹤和清查

您可以使用下列方式啟用「變更追蹤和清查」:

  • 針對非已啟用 Azure Arc 的機器,請依序移至 [原則] > [定義] > [選取類別 = ChangeTrackingAndInventory] 以手動參閱針對已啟用 Arc 的虛擬機器啟用變更追蹤和清查。 若要大規模啟用啟用,請使用以 DINE 原則為基礎的解決方案。 如需詳細資訊,請參閱使用 Azure 監視代理程式 (預覽版) 啟用變更追蹤和清查

  • 針對單一 Azure VM,從 Azure 入口網站的虛擬機器頁面啟用。 此案例適用於 Linux 與 Windows VM。

  • 針對多部 Azure VM,透過從 Azure 入口網站的虛擬機器頁面中選取這些 VM 的方式來啟用。

追蹤檔案變更

為了同時追蹤 Windows 和 Linux 上的檔案變更,變更追蹤和清查會使用檔案的 SHA256 雜湊。 此功能會使用雜湊來偵測自上次清查之後是否發生變更。

追蹤檔案內容變更

變更追蹤和清查可讓您檢視 Windows 或 Linux 檔案的內容。 對於檔案的每項變更,變更追蹤和清查都會將檔案的內容儲存在 Azure 儲存體帳戶中。 當您要追蹤檔案時,您可以檢視其變更前後的內容。 檔案內容可以內嵌或並排檢視。 深入了解

在 Windows 或 Linux 檔案中檢視變更的螢幕快照。

登錄機碼的追蹤

變更追蹤和清查可讓您監視 Windows 登錄機碼的變更。 監視可讓您找出第三方程式碼和惡意程式碼可啟用的擴充點。 下表列出預先設定 (但未啟用) 的登錄機碼。 若要追蹤這些機碼,則必須啟用每個機碼。

登錄機碼 目的
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Group Policy\Scripts\Startup 監視在啟動時執行的指令碼。
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Group Policy\Scripts\Shutdown 監視在關機時執行的指令碼。
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run 監視使用者登入 Windows 帳戶之前載入的金鑰。 此金鑰供 64 位元電腦上執行的 32 位元應用程式使用。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components 監視應用程式設定的變更。
HKEY_LOCAL_MACHINE\Software\Classes\Directory\ShellEx\ContextMenuHandlers 監視直接連結到 Windows 檔案總管中,且通常使用 explorer.exe 以內含方式執行的內容功能表處理常式。
HKEY_LOCAL_MACHINE\Software\Classes\Directory\Shellex\CopyHookHandlers 監視直接連結到 Windows 檔案總管中,且通常使用 explorer.exe 以內含方式執行的複製掛勾處理常式。
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers 監視圖示覆疊處理常式註冊。
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers 針對在 64 位元電腦上執行的 32 位元應用程式,監視圖示覆疊處理常式註冊。
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects Internet Explorer 之新瀏覽器協助程式物件外掛程式的監視器。 用以存取當前頁面的文件物件模型 (DOM) 並控制瀏覽。
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects Internet Explorer 之新瀏覽器協助程式物件外掛程式的監視器。 用以存取目前頁面的文件物件模型 (DOM) 並控制 64 位元電腦上執行之 32 位元應用程式的瀏覽。
HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Extensions 監視新的 Internet Explorer 擴充功能,例如自訂工具功能表和自訂工具列按鈕。
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Internet Explorer\Extensions 針對在 64 位元電腦上執行的 32 位元應用程式,監視新的 Internet Explorer 擴充功能,例如自訂工具功能表和自訂工具列按鈕。
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Drivers32 監視與 wavemapper、wave1 和 wave2、msacm.imaadpcm、.msadpcm、.msgsm610 和 vidc 相關聯的 32 位元驅動程式。 類似 system.ini 檔案中的 [drivers] 區段。
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Drivers32 針對在 64 位元電腦上執行的 32 位元應用程式,監視與 wavemapper、wave1 和 wave2、msacm.imaadpcm、.msadpcm、.msgsm610 和 vidc 相關聯的 32 位元驅動程式。 類似 system.ini 檔案中的 [drivers] 區段。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\KnownDlls 監視已知或常用系統 DLL 的清單。 監視可防止人員放入特洛伊木馬病毒版本的系統 DLL 來利用弱式應用程式目錄權限。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify 監視可從 winlogon.exe (Windows 的互動式登入支援模型) 接收事件通知的套件清單。

遞迴支援

變更追蹤和清查支援遞迴,可讓您指定萬用字元以簡化跨目錄的追蹤。 遞迴也提供了環境變數,可讓您在具有多個或動態磁碟機名稱的環境中追蹤檔案。 以下清單包含您在設定遞迴時所應知悉的一般資訊:

  • 需要萬用字元才能追蹤多個檔案。

  • 您只能在檔案路徑的最後一個區段中使用萬用字元,例如 c:\folder\file* 或 /etc/*.conf

  • 如果環境變數具有不正確路徑,驗證雖然會成功,但路徑會在執行期間失敗。

  • 您設定路徑時應避免一般路徑名稱,因為這類設定可能會導致無法遍歷太多資料夾。

變更追蹤和清查的資料收集

下表顯示變更追蹤和清查所支援變更類型的資料收集頻率。 對於每個類型,目前狀態的資料快照集也至少會每隔 24 小時重新整理一次。

變更類型 頻率
Windows 登錄 50 分鐘
Windows 檔案 30 到 40 分鐘
Linux 檔案 15 分鐘
Windows 服務 10 分鐘到 30 分鐘
預設值:30 分鐘
Windows 軟體 30 分鐘
Linux 軟體 5 分鐘
Linux 精靈 5 分鐘

下表顯示對於變更追蹤和清查所追蹤的每個機器項目限制。

資源 限制
檔案 500
登錄 250
Windows 軟體 (不包括修正程式) 250
Linux 套件 1250
Windows 服務 250
Linux 精靈 500

Windows 服務資料

必要條件

若要啟用追蹤 Windows 服務資料,您必須升級 CT 延伸模組並使用 2.11.0.0 或更新版本的延伸模組

- az vm extension set --publisher Microsoft.Azure.ChangeTrackingAndInventory --version 2.11.0 --ids /subscriptions/<subscriptionids>/resourceGroups/<resourcegroupname>/providers/Microsoft.Compute/virtualMachines/<vmname> --name ChangeTracking-Windows --enable-auto-upgrade true

設定頻率

Windows 服務的預設收集頻率為 30 分鐘。 若要設定頻率,

  • 請在 [編輯] 設定下使用 [Windows 服務] 索引標籤上的滑桿。

頻率滑桿的螢幕快照。

設定狀態的警示支援

變更追蹤和清查的重要功能,就是能夠針對混合式環境組態狀態的變更提出警示。 許多有用的動作可用來觸發以回應警示。 例如,Azure 函式、自動化 Runbook、Webhook 上的動作等。 針對電腦中 c:\windows\system32\drivers\etc\hosts 檔案的變更發出警示,就是變更追蹤和清查資料警示的一個良好應用。 此外還有許多警示案例,包括下表中定義的查詢案例。

查詢 描述
ConfigurationChange
| where ConfigChangeType == "Files" and FileSystemPath contains " c:\windows\system32\drivers\"
適用於追蹤系統重要檔案的變更。
ConfigurationChange
| where FieldsChanged contains "FileContentChecksum" and FileSystemPath == "c:\windows\system32\drivers\etc\hosts"
適用於追蹤重要組態檔的修改。
ConfigurationChange
| where ConfigChangeType == "WindowsServices" and SvcName contains "w3svc" and SvcState == "Stopped"
適用於追蹤系統重要服務的變更。
ConfigurationChange
| where ConfigChangeType == "Daemons" and SvcName contains "ssh" and SvcState!= "Running"
適用於追蹤系統重要服務的變更。
ConfigurationChange
| where ConfigChangeType == "Software" and ChangeCategory == "Added"
適用於需要鎖定軟體組態的環境。
ConfigurationData
| where SoftwareName contains "Monitoring Agent" and CurrentVersion!= "8.0.11081.0"
適用於查看哪些電腦已過時或不符合所安裝軟體版本的規範。 此查詢會報告上次回報的組態狀態,但不會報告變更。
ConfigurationChange
| where RegistryKey == @"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\QualityCompat"
適用於追蹤重要防毒金鑰的變更。
ConfigurationChange
| where RegistryKey contains @"HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\SharedAccess\\Parameters\\FirewallPolicy"
適用於追蹤防火牆設定的變更。

下一步