Speciális konfigurációk Jupyter-notebookokhoz és MSTICPy-hoz a Microsoft Sentinelben
Ez a cikk a Jupyter notebookok és az MSTICPy Microsoft Sentinelben való használatához szükséges speciális konfigurációkat ismerteti.
További információ: A Jupyter-jegyzetfüzetek használata biztonsági fenyegetések keresésére és oktatóanyag: A Jupyter-jegyzetfüzetek és az MSTICPy használatának első lépései a Microsoft Sentinelben.
Előfeltételek
Ez a cikk a Következő oktatóanyag folytatása : A Jupyter notebookok és az MSTICPy használatának első lépései a Microsoft Sentinelben. Javasoljuk, hogy végezze el az oktatóanyagot, mielőtt folytatná az alább ismertetett speciális eljárásokat.
Hitelesítési paraméterek megadása az Azure-hoz és a Microsoft Sentinel API-khoz
Ez az eljárás bemutatja, hogyan konfigurálhatja a Microsoft Sentinel és más Azure API-erőforrások hitelesítési paramétereit az msticpyconfig.yaml fájlban.
Az Azure-hitelesítés és a Microsoft Sentinel API-beállítások hozzáadása az MSTICPy beállítások szerkesztőjében:
Lépjen a következő cellára a következő kóddal, és futtassa azt:
mpedit.set_tab("Data Providers") mpedit
Az Adatszolgáltatók lapon válassza az AzureCLI>Hozzáadás lehetőséget.
Válassza ki a használni kívánt hitelesítési módszereket:
- Bár az Azure alapértelmezett metódusaitól eltérő metódusokat is használhat, ez a használat nem egy tipikus konfiguráció.
- Ha nem szeretné használni az env (környezeti változó) hitelesítést, hagyja üresen a clientId, a tenantId és a clientSecret mezőket.
- Bár nem ajánlott, az MSTICPy az ügyfélalkalmazás azonosítóit és titkos kulcsait is támogatja a hitelesítéshez. Ilyen esetekben közvetlenül az Adatszolgáltatók lapon adja meg a clientId, a tenantId és a clientSecret mezőket.
A módosítások mentéséhez válassza a Fájl mentése lehetőséget.
Lekérdezésszolgáltatók automatikus betöltésének definiálása
Definiálja azokat a lekérdezésszolgáltatókat, amelyeket az MSTICPy-nak automatikusan be szeretne tölteni a nbinit.init_notebook
függvény futtatásakor.
Amikor gyakran új jegyzetfüzeteket szerkeszt, a lekérdezésszolgáltatók automatikus betöltése időt takaríthat meg azáltal, hogy biztosítja a szükséges szolgáltatók betöltését más összetevők, például kimutatásfüggvények és jegyzetfüzetek előtt.
Automatikus betöltési lekérdezésszolgáltatók hozzáadása:
Lépjen a következő cellára a következő kóddal, és futtassa azt:
mpedit.set_tab("Autoload QueryProvs") mpedit
A Lekérdezésprov automatikus betöltése lapon:
- A Microsoft Sentinel-szolgáltatók esetében adja meg a szolgáltató nevét és a munkaterület nevét is, amelyhez csatlakozni szeretne.
- Más lekérdezésszolgáltatók esetében csak a szolgáltató nevét adja meg.
Minden szolgáltató a következő választható értékekkel is rendelkezik:
Automatikus csatlakozás: Ez a beállítás alapértelmezés szerint Igaz értékként van definiálva, és az MSTICPy a betöltés után azonnal megpróbál hitelesítést végezni a szolgáltatóval. Az MSTICPy feltételezi, hogy a beállítások között konfigurálta a szolgáltató hitelesítő adatait.
Alias: Amikor az MSTICPy betölt egy szolgáltatót, a szolgáltatót egy Python-változó nevéhez rendeli. Alapértelmezés szerint a változó neve a Microsoft Sentinel-szolgáltatók qryworkspace_name, más szolgáltatók esetében pedig qryprovider_name .
Ha például betölt egy lekérdezésszolgáltatót a ContosoSOC-munkaterülethez , a rendszer létrehozza ezt a lekérdezésszolgáltatót a jegyzetfüzet-környezetben a névvel
qry_ContosoSOC
. Adjon hozzá egy aliast, ha rövidebb vagy könnyebben beírható és megjegyezendő elemet szeretne használni. A szolgáltató változójának neve leszqry_<alias>
, ahol<alias>
a megadott aliasnév lép.Az ezzel a mechanizmussal betöltendő szolgáltatók az MSTICPy
current_providers
attribútumhoz is hozzáadódnak, amelyet például a következő kód használ:import msticpy msticpy.current_providers
A módosítások mentéséhez válassza a Beállítások mentése lehetőséget.
Automatikusan betöltött MSTICPy-összetevők definiálása
Ez az eljárás azt ismerteti, hogyan definiálhat más összetevőket, amelyeket az MSTICPy automatikusan betölt a nbinit.init_notebook
függvény futtatásakor.
A támogatott összetevők a következő sorrendben jelennek meg:
- TILookup: A TI-szolgáltató könyvtára
- GeoIP: A használni kívánt GeoIP-szolgáltató
- AzureData: Az Azure-erőforrások részleteinek lekérdezéséhez használt modul
- AzureSentinelAPI: A Microsoft Sentinel API lekérdezéséhez használt modul
- Jegyzetfüzetek: Az msticnb-csomag jegyzetfüzetei
- Kimutatás: Kimutatásfüggvények
Feljegyzés
Az összetevők ebben a sorrendben töltődnek be, mert a kimutatás összetevőnek lekérdezésre és más betöltött szolgáltatókra van szüksége az entitásokhoz csatolt kimutatásfüggvények megkereséséhez. További információkért tekintse meg az MSTICPy dokumentációját.
Automatikusan betöltött MSTICPy-összetevők definiálása:
Lépjen a következő cellára a következő kóddal, és futtassa azt:
mpedit.set_tab("Autoload Components") mpedit
Az Összetevők automatikus betöltése lapon szükség szerint definiáljon minden paraméterértéket. Példa:
GeoIpLookup. Adja meg a használni kívánt GeoIP-szolgáltató nevét a GeoLiteLookup vagy az IPStack mezőben. További információ: GeoIP-szolgáltatói beállítások hozzáadása.
AzureData- és AzureSentinelAPI-összetevők. Adja meg a következő értékeket:
- auth_methods: Felülbírálja az AzureCLI alapértelmezett beállításait, és csatlakozzon a kiválasztott módszerekkel.
- Automatikus csatlakozás: Állítsa be a false (hamis) értéket a betöltéshez csatlakozás nélkül.
További információ: Az Azure és a Microsoft Sentinel API-k hitelesítési paramétereinek megadása.
Jegyzetfüzetek. A Notebooklets összetevő egyetlen paraméterblokkot tartalmaz: AzureSentinel.
Adja meg a Microsoft Sentinel-munkaterületet a következő szintaxissal:
workspace:\<workspace name>
. A munkaterület nevének a Microsoft Sentinel lapon meghatározott munkaterületek egyikének kell lennie.Ha további paramétereket szeretne hozzáadni a
notebooklets init
függvényhez, adja meg őket kulcs:érték párként, új vonalakkal elválasztva. Példa:workspace:<workspace name> providers=["LocalData","geolitelookup"]
További információkért tekintse meg az MSTICNB (MSTIC Notebooklets) dokumentációját.
Egyes összetevők, például a TILookup és a Pivot nem igényelnek paramétereket.
A módosítások mentéséhez válassza a Beállítások mentése lehetőséget.
Váltás a Python 3.6 és 3.8 kernelek között
Ha a Python 3.65 és a 3.8 kernel között vált, előfordulhat, hogy az MSTICPy és más csomagok nem a várt módon lesznek telepítve.
Ez akkor fordulhat elő, ha a !pip install pkg
parancs megfelelően lesz telepítve az első környezetben, de a másodikban nem telepít megfelelően. Ez olyan helyzetet teremt, amelyben a második környezet nem tudja importálni vagy használni a csomagot.
Azt javasoljuk, hogy ne telepítsen !pip install...
csomagokat az Azure ML-jegyzetfüzetekben. Ehelyett használja az alábbi lehetőségek egyikét:
Használja a %pip vonalvariánst egy jegyzetfüzetben. Futtatás:
%pip install --upgrade msticpy
Telepítés terminálról:
Nyisson meg egy terminált az Azure ML-jegyzetfüzetekben, és futtassa a következő parancsokat:
conda activate azureml_py38 pip install --upgrade msticpy
Zárja be a terminált, és indítsa újra a kernelt.
Környezeti változó beállítása az msticpyconfig.yaml fájlhoz
Ha az Azure ML-ben fut, és az msticpyconfig.yaml fájl a felhasználói mappa gyökerében található, az MSTICPy automatikusan megtalálja ezeket a beállításokat. Ha azonban egy másik környezetben futtatja a jegyzetfüzeteket, az ebben a szakaszban található utasításokat követve állítson be egy környezeti változót, amely a konfigurációs fájl helyére mutat.
Az msticpyconfig.yaml fájl elérési útjának környezeti változóban való definiálása lehetővé teszi, hogy a fájlt egy ismert helyen tárolja, és győződjön meg arról, hogy mindig ugyanazokat a beállításokat tölti be.
Több konfigurációs fájlt használjon több környezeti változóval, ha különböző beállításokat szeretne használni a különböző jegyzetfüzetekhez.
Döntse el az msticpyconfig.yaml fájl helyét, például a ~/.msticpyconfig.yaml vagy a %userprofile%/msticpyconfig.yaml fájlban.
Azure ML-felhasználók: Ha a konfigurációs fájlt az Azure ML felhasználói mappájában tárolja, az MSTICPy
init_notebook
függvény (amely az inicializálási cellában fut) automatikusan megkeresi és használja a fájlt, és nem kell beállítania egy MSTICPYCONFIG környezeti változót.Ha azonban titkos kulcsokat is tárol a fájlban, javasoljuk, hogy a konfigurációs fájlt a számítási helyi meghajtón tárolja. A számítási belső tároló csak a számítást létrehozó személy számára érhető el, míg a megosztott tárterület bárki számára elérhető, aki hozzáfér az Azure ML-munkaterülethez.
További információ: Mi az Az Azure Machine Learning számítási példánya?
Szükség esetén másolja az msticpyconfig.yaml fájlt a kiválasztott helyre.
Állítsa az MSTICPYCONFIG környezeti változót arra a helyre.
Az MSTICPYCONFIG környezeti változó definiálásához használja az alábbi eljárások egyikét.
Az MSTICPYCONFIG környezeti változó beállítása windowsos rendszereken például:
Szükség szerint helyezze át az msticpyconfig.yaml fájlt a Compute-példányba.
Nyissa meg a Rendszer tulajdonságai párbeszédpanelt a Speciális lapra.
Válassza a Környezeti változók... lehetőséget a Környezeti változók párbeszédpanel megnyitásához.
A Rendszerváltozók területen válassza az Új... lehetőséget, és adja meg az értékeket az alábbiak szerint:
-
Változó neve: Definiálás
MSTICPYCONFIG
- Változó értéke: Adja meg az msticpyconfig.yaml fájl elérési útját
-
Változó neve: Definiálás
Feljegyzés
A Linux és a Windows beállításaihoz újra kell indítania a Jupyter-kiszolgálót, hogy felvegye a megadott környezeti változót.
Következő lépések
További információk:
Tárgy | További hivatkozások |
---|---|
MSTICPy |
-
MSTICPy-csomagkonfiguráció - MSTICPy Beállítások szerkesztője - A jegyzetfüzet-környezet konfigurálása. - MPSettingsEditor-jegyzetfüzet. Megjegyzés: Az Azure-Sentinel-Notebooks GitHub-adattár egy msticpyconfig.yaml sablonfájlt is tartalmaz megjegyzésekkel ellátott szakaszokkal, amelyek segíthetnek a beállítások megértésében. |
Microsoft Sentinel és Jupyter notebookok |
-
Az első Microsoft Sentinel-jegyzetfüzet létrehozása (blogsorozat) - Jupyter Notebooks: Bevezetés - AZ MSTICPy dokumentációja - A Microsoft Sentinel Notebooks dokumentációja - Az Infosec Jupyterbook - A Linux gazdagépkezelő jegyzetfüzetének bemutatója - Miért érdemes a Jupytert biztonsági vizsgálatokhoz használni? - Biztonsági vizsgálatok a Microsoft Sentinel és jegyzetfüzetek használatával - A Pandas dokumentációja - A Bokeh dokumentációja |