Prozkoumání standardních hodnot operačního systému (na základě srovnávacího testu CIS)
Proveďte základní a pokročilá šetření na základě doporučení standardních hodnot operačního systému.
Základní šetření doporučení zabezpečení standardních hodnot operačního systému
Základní doporučení operačního systému můžete prozkoumat tak, že přejdete na Defender for IoT na webu Azure Portal. Další informace najdete v tématu Zkoumání doporučení zabezpečení.
Pokročilé šetření doporučení zabezpečení standardních hodnot operačního systému
Tato část popisuje, jak lépe porozumět výsledkům testu podle směrného plánu operačního systému a dotazovat se na události ve službě Azure Log Analytics.
Požadavky:
Pokročilé šetření doporučení zabezpečení standardních hodnot operačního systému je podporováno pouze pomocí Azure Log Analytics a než budete pokračovat, musíte defender for IoT připojit k pracovnímu prostoru služby Log Analytics.
Další informace najdete v tématu Konfigurace řešení založeného na agentech Microsoft Defenderu pro IoT.
Dotazování událostí zabezpečení IoT v Log Analytics na výstrahy:
V pracovním prostoru služby Log Analytics přejděte na Protokoly>AzureSecurityOfThings>SecurityAlert.
V editoru dotazů napravo zadejte dotaz KQL, aby se zobrazila upozornění, která chcete zobrazit.
Výběrem možnosti Spustit zobrazíte výstrahy, které odpovídají vašemu dotazu.
Příklad:
Poznámka:
Kromě upozornění můžete také použít stejný postup k dotazování na doporučení nebo nezpracovaná data událostí.
Užitečné dotazy k prozkoumání základních prostředků operačního systému
Poznámka:
Nezapomeňte nahradit <device-id>
názvy, které jste svému zařízení dali v každém z následujících dotazů.
Načtení nejnovějších informací
Selhání vozového parku zařízení: Spuštěním tohoto dotazu načtěte nejnovější informace o kontrolách, které selhaly napříč flotilou zařízení:
let lastDates = SecurityIoTRawEvent | where RawEventName == "Baseline" | summarize TimeStamp=max(TimeStamp) by DeviceId; lastDates | join kind=inner (SecurityIoTRawEvent) on TimeStamp, DeviceId | extend event = parse_json(EventDetails) | where event.BaselineCheckResult == "FAIL" | project DeviceId, event.BaselineCheckId, event.BaselineCheckDescription
Konkrétní selhání zařízení – Spuštěním tohoto dotazu načtěte nejnovější informace o kontrolách, které selhaly na konkrétním zařízení:
let id = SecurityIoTRawEvent | extend IoTRawEventId = extractjson("$.EventId", EventDetails, typeof(string)) | where TimeGenerated <= now() | where RawEventName == "Baseline" | where DeviceId == "<device-id>" | summarize arg_max(TimeGenerated, IoTRawEventId) | project IoTRawEventId; SecurityIoTRawEvent | extend IoTRawEventId = extractjson("$.EventId", EventDetails, typeof(string)), extraDetails = todynamic(EventDetails) | where IoTRawEventId == toscalar(id) | where extraDetails.BaselineCheckResult == "FAIL" | project DeviceId, CceId = extraDetails.BaselineCheckId, Description = extraDetails.BaselineCheckDescription
Konkrétní chyba zařízení – Spuštěním tohoto dotazu načtěte nejnovější informace o kontrolách, které mají na konkrétním zařízení chybu:
let id = SecurityIoTRawEvent | extend IoTRawEventId = extractjson("$.EventId", EventDetails, typeof(string)) | where TimeGenerated <= now() | where RawEventName == "Baseline" | where DeviceId == "<device-id>" | summarize arg_max(TimeGenerated, IoTRawEventId) | project IoTRawEventId; SecurityIoTRawEvent | extend IoTRawEventId = extractjson("$.EventId", EventDetails, typeof(string)), extraDetails = todynamic(EventDetails) | where IoTRawEventId == toscalar(id) | where extraDetails.BaselineCheckResult == "ERROR" | project DeviceId, CceId = extraDetails.BaselineCheckId, Description = extraDetails.BaselineCheckDescription
Aktualizujte seznam zařízení pro flotilu zařízení, která selhala konkrétní kontrolou – Spuštěním tohoto dotazu načtěte aktualizovaný seznam zařízení (napříč flotilou zařízení), která selhala konkrétní kontrolou:
let lastDates = SecurityIoTRawEvent | where RawEventName == "Baseline" | summarize TimeStamp=max(TimeStamp) by DeviceId; lastDates | join kind=inner (SecurityIoTRawEvent) on TimeStamp, DeviceId | extend event = parse_json(EventDetails) | where event.BaselineCheckResult == "FAIL" | where event.BaselineCheckId contains "6.2.8" | project DeviceId;
Další kroky
Prozkoumejte doporučení zabezpečení.