Tartalom módosítása az Advanced Security Information Model (ASIM) (nyilvános előzetes verzió) használatára
A Microsoft Sentinel normalizált biztonsági tartalma elemzési szabályokat, keresési lekérdezéseket és olyan munkafüzeteket tartalmaz, amelyek egységesítő normalizálási elemzőkkel működnek.
A Microsoft Sentinel-gyűjteményekben és -megoldásokban találhat normalizált, beépített tartalmakat, létrehozhat saját normalizált tartalmakat, vagy módosíthatja a meglévő, egyéni tartalmakat a normalizált adatok használatára.
Ez a cikk bemutatja, hogyan konvertálhatja a meglévő Microsoft Sentinel-elemzési szabályokat normalizált adatok használatára az Advanced Security Information Model (ASIM) használatával.
Ha szeretné megtudni, hogy a normalizált tartalom hogyan illeszkedik az ASIM-architektúrába, tekintse meg az ASIM architektúradiagramot.
Tipp.
Emellett tekintse meg a Mély merülés webináriumot a Microsoft Sentinel Normalizing Parsers és Normalized Content szolgáltatásban, vagy tekintse át a diákat. További információ: Következő lépések.
Fontos
Az ASIM jelenleg előzetes verzióban érhető el. Az Azure Előzetes verzió kiegészítő feltételei további jogi feltételeket tartalmaznak, amelyek a bétaverzióban, előzetes verzióban vagy más módon még nem általánosan elérhető Azure-funkciókra vonatkoznak.
Egyéni tartalom módosítása normalizáláshoz
Az egyéni Microsoft Sentinel-tartalom normalizálásának engedélyezése:
Módosítsa a lekérdezéseket úgy, hogy a lekérdezés szempontjából releváns összesítő elemzőt használjon.
Módosítsa a lekérdezés mezőneveit a normalizált sémamezőnevek használatára.
Adott esetben módosítsa a feltételeket a lekérdezés mezőinek normalizált értékeinek használatára.
Minta normalizálása elemzési szabályokhoz
Vegyük például az Infoblox DNS-kiszolgálók által küldött DNS-eseményeken működő, magas fordított DNS-keresésszámú DNS-elemzési szabvánnyal megfigyelt Ritka ügyfelet:
let threshold = 200;
InfobloxNIOS
| where ProcessName =~ "named" and Log_Type =~ "client"
| where isnotempty(ResponseCode)
| where ResponseCode =~ "NXDOMAIN"
| summarize count() by Client_IP, bin(TimeGenerated,15m)
| where count_ > threshold
| join kind=inner (InfobloxNIOS
| where ProcessName =~ "named" and Log_Type =~ "client"
| where isnotempty(ResponseCode)
| where ResponseCode =~ "NXDOMAIN"
) on Client_IP
| extend timestamp = TimeGenerated, IPCustomEntity = Client_IP
A következő kód a forrás-agnosztikus verzió, amely normalizálással ugyanazt az észlelést biztosítja a DNS-lekérdezési eseményeket biztosító bármely forráshoz. Az alábbi példa beépített ASIM-elemzőket használ:
_Im_Dns(responsecodename='NXDOMAIN')
| summarize count() by SrcIpAddr, bin(TimeGenerated,15m)
| where count_ > threshold
| join kind=inner (imDns(responsecodename='NXDOMAIN')) on SrcIpAddr
| extend timestamp = TimeGenerated, IPCustomEntity = SrcIpAddr
A munkaterületen üzembe helyezett ASIM-elemzők használatához cserélje le az első sort a következő kódra:
imDns(responsecodename='NXDOMAIN')
A beépített és a munkaterület által üzembe helyezett elemzők közötti különbségek
A fenti példában szereplő két lehetőség funkcionálisan azonos. A normalizált, forrás-agnosztikus verzió a következő különbségeket tartalmazza:
Az
_Im_Dns
Infoblox-elemző helyett a normalizált vagyimDns
a normalizált elemzőket használja a rendszer.A normalizált elemzők csak DNS-lekérdezési eseményeket kérnek le, így nincs szükség az eseménytípus ellenőrzésére az Infoblox-verzióban
where ProcessName =~ "named" and Log_Type =~ "client"
leírtak szerint.A
SrcIpAddr
mező helyett a rendszer a mezőt használjaClient_IP
.Az elemzési paraméterszűrés a ResponseCodeName esetében használatos, így nincs szükség explicit
where
záradékokra.
Feljegyzés
A normalizált DNS-forrás támogatása mellett a normalizált verzió rövidebb és könnyebben érthető.
Ha a séma vagy elemzők nem támogatják a szűrési paramétereket, a módosítások hasonlóak, kivéve, hogy a szűrési feltételek megmaradnak az eredeti lekérdezésből. Példa:
let threshold = 200;
imDns
| where isnotempty(ResponseCodeName)
| where ResponseCodeName =~ "NXDOMAIN"
| summarize count() by SrcIpAddr, bin(TimeGenerated,15m)
| where count_ > threshold
| join kind=inner (imDns
| where isnotempty(ResponseCodeName)
| where ResponseCodeName =~ "NXDOMAIN"
) on SrcIpAddr
| extend timestamp = TimeGenerated, IPCustomEntity = SrcIpAddr
Az előző példákban használt alábbi elemekről további információt a Kusto dokumentációjában talál:
- let utasítás
- ahol operátor
- operátor kiterjesztése
- illesztés operátor
- összesítő operátor
- isnotempty() függvény
- count() aggregációs függvény
A KQL-ről további információt a Kusto lekérdezésnyelv (KQL) áttekintésében talál.
Egyéb erőforrások:
Következő lépések
Ez a cikk az Advanced Security Information Model (ASIM) tartalmát ismerteti.
További információk:
- Tekintse meg a Mély merülés webináriumot a Microsoft Sentinel Normalizing Parsers és Normalized Content szolgáltatásban, vagy tekintse át a diákat
- Az Advanced Security Information Model (ASIM) áttekintése
- Advanced Security Information Model (ASIM) elemzők
- Advanced Security Information Model (ASIM) sémák
- Advanced Security Information Model (ASIM) tartalom