Referenz zum Schema für die Websitzungsnormalisierung des erweiterten Sicherheitsinformationsmodells (ADVANCED Security Information Model, ASIM) (öffentliche Vorschau)
Das Normalisierungsschema für Websitzungen wird verwendet, um eine IP-Netzwerkaktivität zu beschreiben. IP-Netzwerkaktivitäten werden beispielsweise von Webservern, Webproxys und Websicherheitsgateways gemeldet.
Weitere Informationen zur Normalisierung in Microsoft Sentinel finden Sie unter Normalisierung und erweitertes Sicherheitsinformationsmodell (Advanced Security Information Model, ASIM).
Wichtig
Das Netzwerknormalisierungsschema befindet sich derzeit in der VORSCHAUPHASE. Dieses Feature wird ohne Vereinbarung zum Servicelevel bereitgestellt und ist nicht für Produktionsworkloads vorgesehen.
In den zusätzlichen Nutzungsbestimmungen für Microsoft Azure-Vorschauen finden Sie weitere rechtliche Bedingungen, die für Azure-Features gelten, die sich in der Beta- oder Vorschauversion befinden oder anderweitig noch nicht zur allgemeinen Verfügbarkeit freigegeben sind.
Schemaübersicht
Das Normalisierungsschema für Websitzungen stellt eine beliebige HTTP-Netzwerksitzung dar und eignet sich für die Unterstützung gängiger Quelltypen. Hierzu zählen unter anderem folgende:
- Webserver
- Webproxys
- Websicherheitsgateways
Das ASIM-Websitzungsschema stellt HTTP- und HTTPS-Protokollaktivitäten dar. Da das Schema die Protokollaktivität darstellt, wird es von RFCs und offiziell zugewiesenen Parameterlisten bestimmt, auf die in diesem Artikel gegebenenfalls verwiesen wird.
Das Websitzungsschema stellt keine Überwachungsereignisse von Quellgeräten dar. Beispielsweise kann ein Ereignis, das eine Richtlinie für Websicherheitsgateways ändert, nicht durch das Websitzungsschema dargestellt werden.
Da es sich bei HTTP-Sitzungen um Anwendungsschichtsitzungen handelt, die TCP/IP als zugrunde liegende Netzwerkschichtsitzung verwenden, ist das Websitzungsschema eine Obermenge des ASIM-Netzwerksitzungsschemas.
Die wichtigsten Felder in einem Websitzungsschema sind:
- Url: Meldet die URL, die der Client vom Server angefordert hat.
- SrcIpAddr (mit dem Alias IpAddr), das die IP-Adresse darstellt, von der die Anforderung generiert wurde.
- Feld EventResultDetails, in dem in der Regel der HTTP-Statuscode gemeldet wird.
Websitzungsereignisse können auch Informationen zu dem Benutzer und Prozess enthalten, von dem die Anforderung initiiert wird.
Parser
Weitere Informationen zu ASIM-Parsern finden Sie in der Übersicht über ASIM-Parser.
Vereinheitlichende Parsern
Um Parser zu verwenden, die alle bereits integrierten ASIM-Parser vereinheitlichen, und sicherzustellen, dass ihre Analyse über alle konfigurierten Quellen hinweg ausgeführt wird, verwenden Sie den Filterparser _Im_WebSession
oder den parameterlosen Parser _ASim_WebSession
.
Sie können auch vom Arbeitsbereich bereitgestellte ImWebSession
- und ASimWebSession
-Parser verwenden, indem Sie sie aus dem Microsoft Sentinel GitHub-Repository bereitstellen. Weitere Informationen finden Sie unter Integrierte ASIM-Parser und im Arbeitsbereich bereitgestellte Parser.
Vorkonfigurierte, quellspezifische Parser
Die Liste der Websitzungsparser, die Microsoft Sentinel einsatzbereit zur Verfügung stellt, finden Sie in der ASIM-Parserliste
Hinzufügen eigener normalisierter Parser
Wenn Sie benutzerdefinierte Parser für das Websitzungsinformationsmodell implementieren, benennen Sie Ihre KQL-Funktionen anhand der folgenden Syntax:
vimWebSession<vendor><Product>
für parametrisierte ParserASimWebSession<vendor><Product>
für reguläre Parser
Filtern von Parser-Parametern
Die Parser im
und vim*
unterstützen Filterparameter. Indem diese Parser optional sind, können sie die Leistung Ihrer Abfrage verbessern.
Die folgenden Filterparameter sind verfügbar:
Name | Typ | Beschreibung |
---|---|---|
StartTime | datetime | Filtern Sie nur Websitzungen, die zu oder nach diesem Zeitpunkt gestartet wurden. |
EndTime | datetime | Filtern Sie nur Websitzungen, deren Ausführung zu oder nach diesem Zeitpunkt begonnen hat. |
srcipaddr_has_any_prefix | dynamisch | Filtern Sie nur Websitzungen, deren Präfix des Felds für die Quell-IP-Adresse in einem der aufgeführten Werte enthalten ist. Die Liste der Werte kann sowohl IP-Adressen als auch IP-Adresspräfixe enthalten. Präfixe müssen mit einem Punkt (. ) enden. Beispiel: 10.0. Die Länge der Liste ist auf 10.000 Elemente beschränkt. |
ipaddr_has_any_prefix | dynamisch | Filtern Sie nur Netzwerksitzungen, deren Präfix des Felds für die Ziel-IP-Adresse oder des Felds für die Quell-IP-Adresse in einem der aufgeführten Werte enthalten ist. Präfixe müssen mit einem Punkt (. ) enden. Beispiel: 10.0. Die Länge der Liste ist auf 10.000 Elemente beschränkt.Das Feld ASimMatchingIpAddr wird mit einem der Werte SrcIpAddr DstIpAddr , oder Both festgelegt, um die übereinstimmenden Felder oder Felder widerzuspiegeln. |
url_has_any | dynamisch | Filtern Sie nur Websitzungen, bei denen das URL-Feld einen der aufgeführten Werte enthält. Das Schema der als Parameter übergebenen URL wird vom Parser möglicherweise ignoriert, wenn keine entsprechende Meldung durch die Quelle erfolgt. Wenn diese Option angegeben wurde und die Sitzung keine Websitzung ist, wird kein Ergebnis zurückgegeben. Die Länge der Liste ist auf 10.000 Elemente beschränkt. |
httpuseragent_has_any | dynamisch | Filtern Sie nur Websitzungen, bei denen das Benutzer-Agent-Feld einen der aufgeführten Werte enthält. Wenn diese Option angegeben wurde und die Sitzung keine Websitzung ist, wird kein Ergebnis zurückgegeben. Die Länge der Liste ist auf 10.000 Elemente beschränkt. |
eventresultdetails_in | dynamisch | Filtern Sie nur Websitzungen, bei denen der im Feld EventResultDetails gespeicherte HTTP-Statuscode einem der aufgeführten Werte entspricht. |
eventresult | Zeichenfolge | Filtern Sie nur Netzwerksitzungen mit einem bestimmten Wert für EventResult. |
Einige Parameter können sowohl eine Liste von Werten des Typs dynamic
als auch einen einzelnen Zeichenfolgenwert akzeptieren. Um eine Literalliste an Parameter zu übergeben, die einen dynamischen Wert erwarten, verwenden Sie explizit ein dynamisches Literal. Beispiel: dynamic(['192.168.','10.'])
Verwenden Sie beispielsweise Folgendes, um nur Websitzungen für eine angegebenen Liste von Domänennamen zu filtern:
let torProxies=dynamic(["tor2web.org", "tor2web.com", "torlink.co"]);
_Im_WebSession (url_has_any = torProxies)
Schemadetails
Das Websitzungsinformationsmodell ist auf das OSSEM-Netzwerkentitätsschema und auf das OSSEM-HTTP-Entitätsschema ausgerichtet.
Den bewährten Methoden der Branche entsprechend verwendet das Websitzungsschema die Deskriptoren Src und Dst zur Identifikation der Quell- und Zielgeräte der Sitzung, ohne das Token Dvc in den Feldnamen einzuschließen.
Der Hostname und die IP-Adresse des Quellgeräts heißen also beispielsweise SrcHostname bzw. SrcIpAddr und nicht SrcDvcHostname und SrcDvcIpAddr. Das Präfix Dvc wird ggf. nur für das meldende Gerät oder das Zwischengerät verwendet.
Felder, die die den Quell- und Zielgeräten zugeordneten Benutzer und Anwendungen beschreiben, verwenden auch die Deskriptoren Src und Dst.
Andere ASIM-Schemas verwenden in der Regel Target anstelle von Dst.
Allgemeine ASIM-Felder
Wichtig
Felder, die allen Schemas gemeinsam sind, werden im Artikel Allgemeine ASIM-Felder ausführlich beschrieben.
Allgemeine Felder mit bestimmten Richtlinien
In der folgenden Liste werden Felder erwähnt, die bestimmte Richtlinien für Websitzungsereignisse enthalten.
Feld | Klasse | type | BESCHREIBUNG |
---|---|---|---|
EventType | Obligatorisch. | Enumerated | Beschreibt den vom Datensatz gemeldeten Vorgang. Zulässige Werte sind: - HTTPsession gibt eine Netzwerksitzung an, die für HTTP oder HTTPS verwendet wird und in der Regel von einem zwischengeschalteten Gerät wie einem Proxy oder einem Websicherheitsgateway gemeldet wird.- WebServerSession gibt eine von einem Webserver gemeldete HTTP-Anforderung an. Ein solches Ereignis weist in der Regel weniger netzwerkbezogene Informationen auf. Die gemeldete URL sollte kein Schema und keinen Servernamen enthalten, sondern nur den Pfad und die Parameter als Teil der URL. - ApiRequest gibt eine HTTP-Anforderung an, die einem API-Aufruf zugeordnet ist und in der Regel von einem Anwendungsserver gemeldet wird. Ein solches Ereignis weist in der Regel weniger netzwerkbezogene Informationen auf. Bei der Meldung durch den Anwendungsserver sollte die gemeldete URL kein Schema und keinen Servernamen enthalten, sondern nur den Pfad und die Parameter als Teil der URL. |
EventResult | Obligatorisch. | Enumerated | Beschreibt das Ereignisergebnis, normalisiert auf einen der folgenden Werte: - Success - Partial - Failure - NA (nicht zutreffend) Für eine HTTP-Sitzung wird Success als Statuscode definiert, der niedriger als 400 ist, und Failure wird als Statuscode definiert, der höher als 400 ist. Eine Liste der HTTP-Statuscodes finden Sie unter W3 Org.Die Quelle stellt möglicherweise nur einen Wert für das Feld EventResultDetails bereit, das analysiert werden muss, um den Wert EventResult zu erhalten. |
EventResultDetails | Empfohlen | String | Der HTTP-Statuscode. Hinweis: Der Wert kann im Quelldatensatz mit anderen Begriffen angegeben werden, die auf diese Werte normalisiert werden sollten. Der ursprüngliche Wert muss im Feld EventOriginalResultDetails gespeichert werden. |
EventSchema | Obligatorisch. | String | Der Name des hier dokumentierten Schemas lautet WebSession . |
EventSchemaVersion | Obligatorisch. | String | Die Version des Schemas. Die hier dokumentierte Version des Schemas ist 0.2.6 . |
Dvc-Felder | Bei Websitzungsereignissen verweisen Gerätefelder auf das System, von dem das Websitzungsereignis gemeldet wird. Dies ist in der Regel ein zwischengeschaltetes Gerät für HTTPSession -Ereignisse und der Zielwebserver oder Zielanwendungsserver für WebServerSession - und ApiRequest -Ereignisse. |
Alle allgemeinen Felder
Felder, die in der folgenden Tabelle angezeigt werden, sind für alle ASIM-Schemas gleich. Jede oben angegebene Richtlinie setzt die allgemeinen Richtlinien für das Feld außer Kraft. Beispielsweise kann ein Feld im Allgemeinen optional, aber für ein bestimmtes Schema obligatorisch sein. Weitere Informationen zu den einzelnen Feldern finden Sie im Artikel Allgemeine ASIM-Felder.
Klasse | Fields |
---|---|
Obligatorisch. | - EventCount - EventStartTime - EventEndTime - EventType - EventResult - EventProduct - EventVendor - EventSchema - EventSchemaVersion - Dvc |
Empfohlen | - EventResultDetails - EventSeverity - EventUid - DvcIpAddr - DvcHostname - DvcDomain - DvcDomainType - DvcFQDN - DvcId - DvcIdType - DvcAction |
Optional | - EventMessage - EventSubType - EventOriginalUid - EventOriginalType - EventOriginalSubType - EventOriginalResultDetails - EventOriginalSeverity - EventProductVersion - EventReportUrl - EventOwner - DvcZone - DvcMacAddr - DvcOs - DvcOsVersion - DvcOriginalAction - DvcInterface - AdditionalFields - DvcDescription - DvcScopeId - DvcScope |
Netzwerksitzungsfelder
HTTP-Sitzungen sind Anwendungsschichtsitzungen, die TCP/IP als zugrunde liegende Netzwerkschichtsitzung verwenden. Das Websitzungsschema ist eine Obermenge des ASIM-Netzwerksitzungsschemas, und alle Netzwerkschemafelder sind auch im Websitzungsschema enthalten.
Für die folgenden ASIM-Netzwerksitzungsschemafelder gelten spezifische Richtlinien, wenn es für ein Websitzungsereignis verwendet wird:
- Der Alias „User“ sollte auf SrcUsername verweisen, nicht auf DstUsername.
- Das Feld EventOriginalResultDetails kann jedes von der Quelle gemeldete Ergebnis sowie den in EventResultDetails gespeicherten HTTP-Statuscode enthalten.
- Für Websitzungen ist das primäre Zielfeld das URL-Feld. Die Zieldomäne (DstDomain) ist optional und wird nicht empfohlen. Insbesondere ist es nicht notwendig, sie im Parser aus der URL zu extrahieren, wenn sie nicht verfügbar ist.
- Die Felder
NetworkRuleName
undNetworkRuleNumber
werden inRuleName
bzw.RuleNumber
umbenannt.
Websitzungsereignisse werden üblicherweise von Zwischengeräten gemeldet, die die HTTP-Verbindung des Clients beenden und als Proxy eine neue Verbindung mit dem Server initiieren. Verwenden Sie zum Darstellen des Zwischengeräts die Felder des ASIM-Netzwerksitzungsschemas "Intermediäre Geräte".
HTTP-Sitzungsfelder
Im Anschluss sind weitere spezifische Felder für Websitzungen aufgeführt:
Feld | Klasse | type | Beschreibung |
---|---|---|---|
Url | Obligatorisch. | String | Die HTTP-Anforderungs-URL (einschließlich Parametern). Bei HTTPSession -Ereignissen kann die URL das Schema und sollte den Servernamen enthalten. Für WebServerSession und für ApiRequest enthält die URL in der Regel nicht das Schema und den Server, die in den Feldern NetworkApplicationProtocol bzw. DstFQDN zu finden sind. Beispiel: https://contoso.com/fo/?k=v&q=u#f |
UrlCategory | Optional | String | Die definierte Gruppierung einer URL oder der Domänenteil der URL. Die Kategorie wird häufig von Websicherheitsgateways bereitgestellt und basiert auf dem Inhalt der Website, auf die die URL verweist. Beispiel: Suchmaschinen, Erwachsenen-, Nachrichten-, Werbe- und geparkte Domänen. |
UrlOriginal | Optional | String | Der ursprüngliche Wert der URL, wenn die URL vom meldenden Gerät geändert wurde und beide Werte angegeben werden. |
HttpVersion | Optional | String | Die HTTP-Anforderungsversion. Beispiel: 2.0 |
HttpRequestMethod | Empfohlen | Enumerated | Die HTTP-Methode. Die Werte entsprechen der Definition in RFC 7231 und RFC 5789und umfassen GET , HEAD , POST , PUT , DELETE , CONNECT , OPTIONS , TRACE und PATCH .Beispiel: GET |
HttpStatusCode | Alias | Der HTTP-Statuscode. Alias für EventResultDetails. | |
HttpContentType | Optional | String | Der Inhaltstypheader der HTTP-Antwort. Hinweis: Das Feld HttpContentType kann sowohl das Inhaltsformat als auch zusätzliche Parameter enthalten, etwa die Codierung, die zum Abrufen des tatsächlichen Formats verwendet wird. Beispiel: text/html; charset=ISO-8859-4 |
HttpContentFormat | Optional | String | Der Inhaltsformatteil von HttpContentType Beispiel: text/html |
HttpReferrer | Optional | String | Der HTTP-Referrer-Header. Hinweis: ASIM verwendet die gemäß OSSEM richtige Schreibweise für Referrer und nicht die ursprüngliche HTTP-Headerschreibweise. Beispiel: https://developer.mozilla.org/docs |
HttpUserAgent | Optional | String | Der HTTP-Benutzer-Agent-Header. Beispiel: Mozilla/5.0 (Windows NT 10.0; WOW64)AppleWebKit/537.36 (KHTML, wie Gecko)Chrome/83.0.4103.97 Safari/537.36 |
UserAgent | Alias | Alias für HttpUserAgent | |
HttpRequestXff | Optional | IP-Adresse | The HTTP-Header vom Typ „X-Forwarded-For“. Beispiel: 120.12.41.1 |
HttpRequestTime | Optional | Integer | Die Zeitspanne in Millisekunden, die zum Senden der Anforderung an den Server benötigt wurde, falls zutreffend. Beispiel: 700 |
HttpResponseTime | Optional | Integer | Die Zeitspanne in Millisekunden, die zum Empfangen einer Antwort auf dem Server benötigt wurde, falls zutreffend. Beispiel: 800 |
HttpHost | Optional | String | Der virtuelle Webserver, auf den die HTTP-Anforderung ausgerichtet ist. Dieser Wert basiert in der Regel auf dem HTTP-Hostheader. |
FileName | Optional | String | Bei HTTP-Uploads der Name der hochgeladenen Datei. |
FileMD5 | Optional | MD5 | Bei HTTP-Uploads der MD5-Hash der hochgeladenen Datei. Beispiel: 75a599802f1fa166cdadb360960b1dd0 |
FileSHA1 | Optional | SHA1 | Bei HTTP-Uploads der SHA1-Hash der hochgeladenen Datei. Beispiel: d55c5a4df19b46db8c54 c801c4665d3338acdab0 |
FileSHA256 | Optional | SHA256 | Bei HTTP-Uploads der SHA256-Hash der hochgeladenen Datei. Beispiel: e81bb824c4a09a811af17deae22f22dd 2e1ec8cbb00b22629d2899f7c68da274 |
FileSHA512 | Optional | SHA512 | Bei HTTP-Uploads der SHA512-Hash der hochgeladenen Datei. |
Hash | Alias | Alias für das verfügbare Hashfeld. | |
FileHashType | Optional | Enumerated | Der Typ des Hashs im Feld Hash. Mögliche Werte: MD5 , SHA1 , SHA256 und SHA512 . |
FileSize | Optional | Long | Bei HTTP-Uploads die Größe der hochgeladenen Datei in Bytes. |
FileContentType | Optional | String | Bei HTTP-Uploads der Inhaltstyp der hochgeladenen Datei. |
Weitere Felder
Wenn das Ereignis von einem der Endpunkte der Websitzung gemeldet wird, kann es Informationen zu dem Prozess enthalten, von dem die Sitzung initiiert oder beendet wurde. In solchen Fällen wird das ASIM-Prozessereignisschema zum Normalisieren dieser Informationen verwendet.
Schemaupdates
Das Websitzungsschema basiert auf dem Netzwerksitzungsschema. Daher gelten Aktualisierungen des Netzwerksitzungsschemas auch für das Websitzungsschema.
In der Version 0.2.5 des Schemas wurde Folgendes geändert:
- Das Feld
HttpHost
wurde hinzugefügt.
In der Version 0.2.6 des Schemas wurde Folgendes geändert:
- Der Typ von FileSize wurde von Integer in Long geändert.
Nächste Schritte
Weitere Informationen finden Sie unter
- Sehen Sie sich das ASIM-Webinar an, oder befassen Sie sich mit den Folien.
- Übersicht über das erweiterte Sicherheitsinformationsmodell (Advanced Security Information Model, ASIM)
- Schemas für das erweiterte Sicherheitsinformationsmodell (Advanced Security Information Model, ASIM)
- Parser für das erweiterte Sicherheitsinformationsmodell (Advanced Security Information Model, ASIM)
- Inhalte für das erweiterte Sicherheitsinformationsmodell (Advanced Security Information Model, ASIM)