Používání vlastního strojového učení (ML) do služby Microsoft Sentinel

Poznámka

Informace o dostupnosti funkcí v cloudech státní správy USA najdete v tabulkách služby Microsoft Sentinel v tématu Dostupnost cloudových funkcí pro zákazníky ze státní správy USA.

Strojové učení (ML) je jedním z hlavních základů služby Microsoft Sentinel a jedním z hlavních atributů, které ho odlišují. Microsoft Sentinel nabízí ML v několika prostředích: integrovaný do modulu fúzní korelace a poznámkových bloků Jupyter a nově dostupné platformy Byo ML (Build-Your-Own ML).

Modely detekce ML se můžou přizpůsobit jednotlivým prostředím a změnám chování uživatelů, snížit počet falešně pozitivních výsledků a identifikovat hrozby, které by se při tradičním přístupu nenašly. Mnoho bezpečnostních organizací chápe hodnotu ML pro zabezpečení, i když ne mnoho z nich má luxus odborníků, kteří mají zkušenosti se zabezpečením i ml. Architekturu, kterou zde prezentujeme, jsme navrhli pro organizace a profesionály v oblasti zabezpečení, aby mohli růst společně s námi na jejich cestě k strojovému učení. Organizace, které s ML začíná nebo nemají potřebné znalosti, můžou díky integrovaným funkcím strojového učení služby Microsoft Sentinel získat významnou hodnotu ochrany.

architektura strojového učení

Co je platforma Přineste si vlastní strojové učení (BYO-ML)?

Pro organizace, které mají prostředky ML a chtějí vytvářet přizpůsobené modely ML pro své jedinečné obchodní potřeby, nabízíme platformu BYO-ML. Platforma k vytvoření prostředí ML využívá prostředí Azure Databricks/Apache Spark a poznámkové bloky Jupyter. Poskytuje následující komponenty:

  • balíček BYO-ML, který obsahuje knihovny, které vám pomůžou získat přístup k datům a odesílat výsledky zpět do Log Analytics (LA), abyste mohli výsledky integrovat s detekcí, vyšetřováním a proaktivním vyhledáváním.

  • Šablony algoritmů STROJOVÉHO UČENÍ, které můžete přizpůsobit konkrétním problémům se zabezpečením ve vaší organizaci.

  • Ukázkové poznámkové bloky pro trénování modelu a naplánování vyhodnocování modelu

Kromě toho můžete použít vlastní modely ml a/nebo vlastní prostředí Spark pro integraci se službou Microsoft Sentinel.

S platformou BYO-ML můžete rychle začít vytvářet vlastní modely ML:

  • Poznámkový blok s ukázkovými daty vám pomůže získat kompletní praktické zkušenosti, aniž byste se museli starat o zpracování produkčních dat.

  • Balíček integrovaný s prostředím Spark snižuje problémy a třecí plochy při správě infrastruktury.

  • Knihovny podporují přesuny dat. Poznámkové bloky pro trénování a bodování předvádějí kompletní prostředí a slouží jako šablona pro přizpůsobení vašemu prostředí.

Případy použití

Platforma a balíček BYO-ML výrazně zkracují čas a úsilí, které budete potřebovat k vytváření vlastních detekcí ML, a uvolní schopnost řešit konkrétní problémy se zabezpečením ve službě Microsoft Sentinel. Platforma podporuje následující případy použití:

Trénování algoritmu ML pro získání přizpůsobeného modelu: Můžete použít existující algoritmus strojového učení (sdílený Microsoftem nebo komunitou uživatelů) a snadno ho vytrénovat na vlastních datech, abyste získali přizpůsobený model ML, který lépe vyhovuje vašim datům a prostředí.

Úprava šablony algoritmu ML pro získání přizpůsobeného modelu: Můžete upravit šablonu algoritmu ML (sdílenou Microsoftem nebo komunitou uživatelů) a vytrénovat upravený algoritmus na vlastních datech tak, aby odvozoval přizpůsobený model, který odpovídá vašemu konkrétnímu problému.

Vytvoření vlastního modelu: Vytvořte si vlastní model od začátku pomocí platformy a nástrojů BYO-ML služby Microsoft Sentinel.

Integrace prostředí Databricks/Spark: Integrujte stávající prostředí Databricks/Spark do služby Microsoft Sentinel a pomocí knihoven a šablon BYO-ML vytvářejte modely ML pro jejich jedinečné situace.

Import vlastního modelu ML: Můžete importovat vlastní modely ML a pomocí platformy BYO-ML a nástrojů je integrovat se službou Microsoft Sentinel.

Sdílení algoritmu ML: Sdílejte algoritmus strojového učení, který má komunita přijmout a přizpůsobit.

Použití ML k posílení SecOps: Použijte vlastní model ML a výsledky k proaktivnímu vyhledávání, detekci, vyšetřování a reakci.

Tento článek popisuje komponenty platformy BYO-ML a způsob využití platformy a algoritmu neobvyklého přístupu k prostředkům k zajištění přizpůsobené detekce strojového učení pomocí služby Microsoft Sentinel.

Prostředí Azure Databricks/Spark

Apache Spark udělal skok kupředu ve zjednodušení velkých objemů dat tím, že poskytuje jednotnou architekturu pro vytváření datových kanálů. Azure Databricks poskytuje cloudovou platformu s nulovou správou postavenou na Sparku. Pro platformu BYO-ML doporučujeme používat Databricks, abyste se mohli soustředit na hledání odpovědí, které mají okamžitý dopad na vaši firmu, a ne na řešení problémů s datovými kanály a platformami.

Pokud už máte Databricks nebo jakékoli jiné prostředí Sparku a dáváte přednost použití stávajícího nastavení, bude balíček BYO-ML fungovat i pro ně.

Balíček BYO-ML

Balíček BYO ML obsahuje osvědčené postupy a výzkum Microsoftu v oblasti zabezpečení na front-endu STROJOVÉHO UČENÍ. V tomto balíčku poskytujeme následující seznam nástrojů, poznámkových bloků a šablon algoritmů pro problémy se zabezpečením.

Název souboru Popis
azure_sentinel_utilities.whl Obsahuje nástroje pro čtení objektů blob z Azure a zápis do Log Analytics.
AnomalousRASampleData Poznámkový blok ukazuje použití neobvyklého modelu přístupu k prostředkům ve službě Microsoft Sentinel s vygenerovanými trénovacími a testovacími ukázkovými daty.
AnomalousRATraining.ipynb Poznámkový blok pro trénování algoritmu, sestavení a uložení modelů
AnomalousRAScoring.ipynb Poznámkový blok pro naplánování spuštění modelu, vizualizaci výsledku a zápis skóre zpět do služby Microsoft Sentinel

První šablona algoritmu ML, která nabízíme, je pro detekci neobvyklého přístupu k prostředkům. Je založená na algoritmu filtrování založeném na spolupráci a trénuje se pomocí protokolů přístupu ke sdíleným složkám Windows (události zabezpečení s ID 5140). Klíčové informace, které potřebujete pro tento model v protokolu, je párování uživatelů a prostředků, ke které se přistupuje.

Příklad návodu: Detekce přístupu k neobvyklým sdíleným složkám

Teď, když jste se seznámili s klíčovými komponentami platformy BYO-ML, tady je příklad, který vám ukáže, jak používat platformu a komponenty k zajištění přizpůsobené detekce ML.

Nastavení prostředí Databricks/Spark

Pokud ho ještě nemáte, budete si muset nastavit vlastní prostředí Databricks. Pokyny najdete v dokumentu Rychlý start k Databricks .

Pokyny k automatickému exportu

Pokud chcete vytvářet vlastní modely ML založené na vlastních datech ve službě Microsoft Sentinel, budete muset exportovat data z Log Analytics do prostředku úložiště objektů blob nebo centra událostí, aby k němu model ML měl přístup z Databricks. Zjistěte, jak ingestovat data do služby Microsoft Sentinel.

V tomto příkladu potřebujete mít trénovací data pro protokol přístupu ke sdílené složce v úložišti objektů blob v Azure. Formát dat je zdokumentovaný v poznámkovém bloku a knihovnách.

Data z Log Analytics můžete automaticky exportovat pomocí Azure CLI.

Abyste mohli spouštět příkazy, musíte mít přiřazenou roli Přispěvatel ve vašem pracovním prostoru služby Log Analytics, účtu úložiště a prostředku EventHub.

Tady je ukázková sada příkazů pro nastavení automatického exportu:


az –version

# Login with Azure CLI
az login

# List all Log Analytics clusters
az monitor log-analytics cluster list

# Set to specific subscription
az account set --subscription "SUBSCRIPTION_NAME"
 
# Export to Storage - all tables
az monitor log-analytics workspace data-export create --resource-group "RG_NAME" --workspace-name "WS_NAME" -n LAExportCLIStr --destination "DESTINATION_NAME" --enable "true" --tables SecurityEvent
 
# Export to EventHub - all tables
az monitor log-analytics workspace data-export create --resource-group "RG_NAME" --workspace-name "WS_NAME" -n LAExportCLIEH --destination "DESTINATION_NAME" --enable "true" --tables ["SecurityEvent","Heartbeat"]

# List export settings
az monitor log-analytics workspace data-export list --resource-group "RG_NAME" --workspace-name "WS_NAME"

# Delete export setting
az monitor log-analytics workspace data-export delete --resource-group "RG_NAME" --workspace-name "WS_NAME" --name "NAME"

Export vlastních dat

U vlastních dat, která automatický export Log Analytics nepodporuje, můžete k přesunu dat použít aplikaci logiky nebo jiná řešení. Můžete se podívat na blog a skript Export dat Log Analytics do úložiště objektů blob .

Korelace s daty mimo službu Microsoft Sentinel

Můžete také přenést data z prostředí mimo službu Microsoft Sentinel do úložiště objektů blob nebo centra událostí a při vytváření modelů ML je korelovat s daty služby Microsoft Sentinel.

Zkopírujte balíček BYO-ML z výše uvedeného úložiště GitHub služby Microsoft Sentinel do prostředí Databricks. Pak otevřete poznámkové bloky a podle pokynů v poznámkovém bloku nainstalujte požadované knihovny do clusterů.

Trénování a vyhodnocování modelů

Postupujte podle pokynů v těchto dvou poznámkových blocích a změňte konfigurace podle vašeho vlastního prostředí a prostředků, postupujte podle kroků pro trénování a sestavení modelu a pak naplánujte model tak, aby vyhodnocoval příchozí protokoly přístupu ke sdílené složce.

Zápis výsledků do Log Analytics

Po naplánování bodování můžete pomocí modulu v hodnoticím poznámkovém bloku zapsat výsledky skóre do pracovního prostoru služby Log Analytics přidruženého k instanci služby Microsoft Sentinel.

Kontrola výsledků ve službě Microsoft Sentinel

Pokud chcete zobrazit výsledky se skóre společně se souvisejícími podrobnostmi protokolu, vraťte se na portál Microsoft Sentinel. V části Protokoly> vlastní protokoly uvidíte výsledky v AnomalousResourceAccessResult_CL tabulce (nebo vlastním názvu vlastní tabulky). Tyto výsledky můžete použít k vylepšení možností prošetření a proaktivního vyhledávání.

neobvyklé protokoly přístupu k prostředkům

Vytvoření vlastního analytického pravidla s výsledky ML

Jakmile ověříte, že výsledky ML jsou ve vlastní tabulce protokolů a budete spokojeni s věrností skóre, můžete na základě výsledků vytvořit detekci. Na portálu Microsoft Sentinel přejděte do části Analýza a vytvořte nové pravidlo detekce. Níže je příklad znázorňující dotaz použitý k vytvoření detekce.

vytvoření vlastního analytického pravidla pro detekce BY O M L

Zobrazení incidentů a reakce na ně

Jakmile na základě výsledků ML nastavíte analytické pravidlo a výsledky překročí prahovou hodnotu, kterou jste nastavili v dotazu, vygeneruje se incident, který se objeví na stránce Incidenty ve službě Microsoft Sentinel.

Další kroky

V tomto dokumentu jste zjistili, jak používat platformu BYO-ML služby Microsoft Sentinel k vytvoření nebo importu vlastních algoritmů strojového učení k analýze dat a detekci hrozeb.