Beveiligingsrisico's opsporen met Jupyter-notebooks

Als onderdeel van uw beveiligingsonderzoeken en opsporing kunt u Jupyter-notebooks starten en uitvoeren om uw gegevens programmatisch te analyseren.

In deze handleiding maakt u een Azure Machine Learning-werkruimte (ML), start u een notebook vanuit de Sentinel-portal naar uw Azure ML-werkruimte en voert u code uit in het notebook.

Vereisten

We raden u aan meer te weten te komen over Microsoft Sentinel-notebooks in het algemeen voordat u de stappen in dit artikel uitvoert. Zie Jupyter-notebooks gebruiken om beveiligingsrisico's op te sporen.

Als u Microsoft Sentinel-notebooks wilt gebruiken, moet u over de volgende rollen en machtigingen beschikken:

Type Details
Microsoft Sentinel - De rol Microsoft Sentinel-inzender om notitieblokken op te slaan en te starten vanuit Microsoft Sentinel
Azure Machine Learning - Een rol eigenaar of inzender op resourcegroepniveau om indien nodig een nieuwe Azure Machine Learning-werkruimte te maken.
- De rol Inzender voor de Azure Machine Learning-werkruimte waar u uw Microsoft Sentinel-notebooks uitvoert.

Zie Toegang tot een Azure Machine Learning-werkruimte beheren voor meer informatie.

Een Azure ML-werkruimte maken vanuit Microsoft Sentinel

Als u uw werkruimte wilt maken, selecteert u een van de volgende tabbladen, afhankelijk van of u een openbaar of privé-eindpunt gebruikt.

  • We raden u aan een openbaar eindpunt te gebruiken als uw Microsoft Sentinel-werkruimte er een heeft, om potentiële problemen in de netwerkcommunicatie te voorkomen.
  • Als u een Azure ML-werkruimte in een virtueel netwerk wilt gebruiken, gebruikt u een privé-eindpunt.
  1. Ga in de Azure Portal naar Microsoft Sentinel>Threat Management>Notebooks en selecteer vervolgens Een nieuwe AML-werkruimte maken.

  2. Voer de volgende gegevens in en selecteer Volgende.

    Veld Beschrijving
    Abonnement Selecteer het Azure-abonnement dat u wilt gebruiken.
    Resourcegroep Gebruik een bestaande resourcegroep in uw abonnement of voer een naam in om een nieuwe resourcegroep te maken. Een resourcegroep bevat gerelateerde resources voor een Azure-oplossing.
    Werkruimtenaam Voer een unieke naam in die uw werkruimte aanduidt. Namen moeten uniek zijn binnen de resourcegroep. Gebruik een naam die gemakkelijk te onthouden is en te onderscheiden is van door anderen gemaakte werkruimten.
    Regio Selecteer de locatie die zich het dichtst bij uw gebruikers en de gegevensresources bevindt om uw werkruimte te maken.
    Opslagaccount Een opslagaccount wordt gebruikt als het standaardgegevensarchief voor de werkruimte. U kunt een nieuwe Azure Storage-resource maken of een bestaande resource in uw abonnement selecteren.
    KeyVault Een sleutelkluis wordt gebruikt voor het opslaan van geheimen en andere gevoelige informatie die nodig is voor de werkruimte. U kunt een nieuwe Azure Key Vault-resource maken of een bestaande resource selecteren in uw abonnement.
    Application Insights De werkruimte gebruikt Azure-toepassing Insights om bewakingsgegevens over uw geïmplementeerde modellen op te slaan. U kunt een nieuwe Azure-toepassing Insights-resource maken of een bestaande resource in uw abonnement selecteren.
    Containerregister Een containerregister wordt gebruikt voor het registreren van Docker-installatiekopieën die worden gebruikt in training en implementaties. Om de kosten te minimaliseren, wordt er pas een nieuwe Azure Container Registry resource gemaakt nadat u uw eerste installatiekopieën hebt gemaakt. U kunt er ook voor kiezen om de resource nu te maken of een bestaande resource in uw abonnement te selecteren of Geen te selecteren als u geen containerregister wilt gebruiken.
  3. Selecteer openbare toegang vanuit alle netwerken inschakelen op het tabblad Netwerken.

    Definieer alle relevante instellingen op het tabblad Geavanceerd of Tags en selecteer vervolgens Beoordelen en maken.

  4. Controleer op het tabblad Controleren en maken de informatie om te controleren of deze juist is en selecteer vervolgens Maken om te beginnen met het implementeren van uw werkruimte. Bijvoorbeeld:

    Controleer en maak uw Machine Learning-werkruimte vanuit Microsoft Sentinel.

    Het kan enkele minuten duren om uw werkruimte in de cloud te maken. Gedurende deze periode wordt op de pagina Overzicht van de werkruimte de huidige implementatiestatus weergegeven en worden updates weergegeven wanneer de implementatie is voltooid.

Nadat de implementatie is voltooid, kunt u teruggaan naar de Microsoft Sentinel Notebooks en notebooks starten vanuit uw nieuwe Azure ML-werkruimte.

Als u meerdere notebooks hebt, selecteert u een standaard-AML-werkruimte die u wilt gebruiken bij het starten van uw notitieblokken. Bijvoorbeeld:

Selecteer een standaard AML-werkruimte voor uw notebooks.

Een notebook starten in uw Azure ML-werkruimte

Nadat u een AML-werkruimte hebt gemaakt, start u uw notebooks in uw Azure ML-werkruimte vanuit Microsoft Sentinel.

  1. Ga in de Azure Portal naar Microsoft Sentinel>Threat management>Notebooks>Templates, waar u notebooks kunt zien die Microsoft Sentinel biedt.

  2. Selecteer een notitieblok om de beschrijving, vereiste gegevenstypen en gegevensbronnen weer te geven.

    Wanneer u het notitieblok hebt gevonden dat u wilt gebruiken, selecteert u Maken op basis van sjabloon en Opslaan om het te klonen in uw eigen werkruimte.

    Bewerk de naam indien nodig. Als het notitieblok al in uw werkruimte bestaat, kunt u het bestaande notitieblok overschrijven of een nieuw notitieblok maken. Standaard wordt uw notitieblok opgeslagen in de map /Gebruikers/<Your_User_Name>/ van de geselecteerde AML-werkruimte.

    Sla een notitieblok op om het te klonen naar uw eigen werkruimte.

  3. Nadat het notitieblok is opgeslagen, verandert de knop Notitieblok opslaan in Notitieblok starten. Selecteer Notebook starten om het te openen in uw AML-werkruimte.

    Bijvoorbeeld:

    Start uw notebook in uw AML-werkruimte.

  4. Selecteer boven aan de pagina een rekenproces dat u wilt gebruiken voor uw notebookserver.

    Als u geen rekenproces hebt, maakt u een nieuw exemplaar. Als uw rekenproces is gestopt, moet u deze starten. Zie Een notitieblok uitvoeren in de Azure Machine Learning-studio voor meer informatie.

    Alleen u kunt de rekeninstanties zien en gebruiken die u maakt. Uw gebruikersbestanden worden afzonderlijk van de VM opgeslagen en worden gedeeld tussen alle rekenprocessen in de werkruimte.

    Als u een nieuw rekenproces maakt om uw notebooks te testen, maakt u uw rekenproces met de categorie Algemeen.

    De kernel wordt ook rechtsboven in het Azure ML-venster weergegeven. Als de kernel die u nodig hebt niet is geselecteerd, selecteert u een andere versie in de vervolgkeuzelijst.

  5. Zodra de notebookserver is gemaakt en gestart, kunt u beginnen met het uitvoeren van uw notebookcellen. Selecteer in elke cel het pictogram Uitvoeren om uw notebookcode uit te voeren.

    Zie Sneltoetsen voor de opdrachtmodus voor meer informatie.

  6. Als uw notebook vastloopt of als u opnieuw wilt beginnen, kunt u de kernel opnieuw starten en de notebookcellen vanaf het begin opnieuw uitvoeren. Als u de kernel opnieuw start, worden variabelen en andere statussen verwijderd. Voer alle initialisatie- en verificatiecellen opnieuw uit nadat u opnieuw hebt opgestart.

    Selecteer Kernelbewerkingen>Kernel opnieuw opstarten om opnieuw te beginnen. Bijvoorbeeld:

    Start een notebook-kernel opnieuw op.

Code uitvoeren in uw notebook

Voer notebookcodecellen altijd achter elkaar uit. Het overslaan van cellen kan leiden tot fouten.

In een notitieblok:

  • Markdown-cellen bevatten tekst, inclusief HTML en statische afbeeldingen.
  • Codecellen bevatten code. Nadat u een codecel hebt geselecteerd, voert u de code uit in de cel door het pictogram Afspelen links van de cel te selecteren of door op Shift+Enter te drukken.

Voer bijvoorbeeld de volgende codecel uit in uw notebook:

# This is your first code cell. This cell contains basic Python code.

# You can run a code cell by selecting it and then selecting
# the Play button to the left of the cell, or by pressing SHIFT+ENTER.
# Code output displays below the code.

print("Congratulations, you just ran this code cell")

y = 2 + 2

print("2 + 2 =", y)

De voorbeeldcode die hierboven wordt weergegeven, produceert deze uitvoer:

Congratulations, you just ran this code cell

2 + 2 = 4

Variabelen die zijn ingesteld in een notebook-codecel, blijven behouden tussen cellen, zodat u cellen aan elkaar kunt koppelen. In de volgende codecel wordt bijvoorbeeld de waarde van y uit de vorige cel gebruikt:

# Note that output from the last line of a cell is automatically
# sent to the output cell, without needing the print() function.

y + 2

Dit is de uitvoer:

6

Alle Microsoft Sentinel-notebooks downloaden

In deze sectie wordt beschreven hoe u Git gebruikt om alle notebooks die beschikbaar zijn in de Microsoft Sentinel GitHub-opslagplaats, rechtstreeks vanuit een Microsoft Sentinel-notebook, te downloaden naar uw Azure ML-werkruimte.

Als u Microsoft Sentinel-notebooks hebt opgeslagen in uw Azure ML-werkruimte, kunt u ze eenvoudig up-to-date houden.

  1. Voer vanuit een Microsoft Sentinel-notebook de volgende code in een lege cel in en voer de cel vervolgens uit:

    !git clone https://github.com/Azure/Azure-Sentinel-Notebooks.git azure-sentinel-nb
    

    Er wordt een kopie van de inhoud van de GitHub-opslagplaats gemaakt in de map azure-Sentinel-nb in uw gebruikersmap in uw Azure ML-werkruimte.

  2. Kopieer de gewenste notitieblokken uit deze map naar uw werkmap.

  3. Als u uw notebooks wilt bijwerken met recente wijzigingen van GitHub, voert u het volgende uit:

    !cd azure-sentinel-nb && git pull
    

Volgende stappen

Andere resources:

  • Gebruik notitieblokken die worden gedeeld in de GitHub-opslagplaats van Microsoft Sentinel als handige hulpprogramma's, illustraties en codevoorbeelden die u kunt gebruiken bij het ontwikkelen van uw eigen notebooks.

  • Dien feedback, suggesties, aanvragen voor functies, bijgedragen notebooks, foutrapporten of verbeteringen en toevoegingen aan bestaande notebooks in. Ga naar de GitHub-opslagplaats van Microsoft Sentinel om een probleem of fork te maken en een bijdrage te uploaden.

  • Meer informatie over het gebruik van notebooks bij het opsporen en onderzoeken van bedreigingen door enkele notebooksjablonen te verkennen, zoals Referentiescan in Azure Log Analytics en Begeleide onderzoek - proceswaarschuwingen.

    Zoek meer notitiebloksjablonen ophet tabblad Sjablonen voor Microsoft Sentinel-notitieblokken>>.

  • Zoek meer notebooks in de GitHub-opslagplaats van Microsoft Sentinel:

    • De Example-Notebooks map bevat voorbeeldnotitieblokken die worden opgeslagen met gegevens die u kunt gebruiken om de beoogde uitvoer weer te geven.

    • De HowTos map bevat notebooks die concepten beschrijven, zoals het instellen van uw standaard Python-versie, het maken van Microsoft Sentinel-bladwijzers op basis van een notebook en meer.

Zie voor meer informatie: