Referenz zum Websitzungsnormalisierungsschema (Advanced Security Information Model, ASIM)

Das Schema für die Websitzungsnormalisierung 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 Normalization and the Advanced Security Information Model (ASIM).

Schemaübersicht

Das Websitzungsnormalisierungsschema stellt jede HTTP-Netzwerksitzung dar und eignet sich für die Unterstützung gängiger Quelltypen, einschließlich:

  • Webserver
  • Webproxys
  • Websicherheitsgateways

Das ASIM-Websitzungsschema stellt die HTTP- und HTTPS-Protokollaktivität dar. Da das Schema die Protokollaktivität darstellt, wird es von RFCs und offiziell zugewiesenen Parameterlisten gesteuert, auf die in diesem Artikel gegebenenfalls verwiesen wird.

Das Websitzungsschema stellt keine Überwachungsereignisse von Quellgeräten dar. Beispielsweise kann ein Ereignis, das eine Websicherheitsgatewayrichtlinie ändert, nicht durch das Websitzungsschema dargestellt werden.

Da HTTP-Sitzungen Sitzungen auf Anwendungsebene sind, die TCP/IP als zugrunde liegende Netzwerkebenensitzung verwenden, ist das Websitzungsschema ein Übergeordneter Satz des ASIM-Netzwerksitzungsschemas.

Die wichtigsten Felder in einem Websitzungsschema sind:

  • URL, die die URL meldet, die der Client vom Server angefordert hat.
  • Der SrcIpAddr (Alias für IpAddr), der die IP-Adresse darstellt, aus der die Anforderung generiert wurde.
  • EventResultDetails-Feld , das in der Regel den HTTP-Statuscode meldet.

Websitzungsereignisse können auch Benutzer - und Prozessinformationen für den Benutzer und den Prozess enthalten, der die Anforderung initiiert.

Parser

Weitere Informationen zu ASIM-Parsern finden Sie in der Übersicht über ASIM-Parser.

Vereinheitlichende Parser

Verwenden Sie den _Im_WebSession Parser, um Parser zu verwenden, die alle standardmäßigen ASIM-Parser vereinheitlichen und sicherstellen möchten, dass Ihre Analyse in allen konfigurierten Quellen ausgeführt wird.

Sofort einsatzbereite, quellspezifische Parser

Die Liste der Websitzungsparser, die Microsoft Sentinel sofort verfügbar sind, finden Sie in der Liste der ASIM-Parser.

Hinzufügen eigener normalisierter Parser

Wenn Sie benutzerdefinierte Parser für das Websitzungsinformationsmodell implementieren, benennen Sie Ihre KQL-Funktionen mit der folgenden Syntax:

  • vimWebSession<vendor><Product> für parametrisierte Parser
  • ASimWebSession<vendor><Product> für reguläre Parser

Filtern von Parserparametern

Die im Parser und vim* unterstützen filterungsparameter. Diese Parser sind zwar optional, können aber die Abfrageleistung verbessern.

Die folgenden Filterparameter sind verfügbar:

Name Typ Beschreibung
starttime Datum/Uhrzeit Filtern Sie nur Websitzungen, die zu oder nach diesem Zeitpunkt gestartet wurden . Dieser Parameter filtert nach dem TimeGenerated Feld, das der Standardbezeichner für den Zeitpunkt des Ereignisses ist, unabhängig von der parserspezifischen Zuordnung der Felder EventStartTime und EventEndTime.
endtime Datum/Uhrzeit Filtern Sie nur Websitzungen, die zu oder vor diesem Zeitpunkt ausgeführt wurden . Dieser Parameter filtert nach dem TimeGenerated Feld, das der Standardbezeichner für den Zeitpunkt des Ereignisses ist, unabhängig von der parserspezifischen Zuordnung der Felder EventStartTime und EventEndTime.
srcipaddr_has_any_prefix Dynamische Filtern Sie nur Websitzungen, deren Quell-IP-Adressfeldpräfix in einem der aufgeführten Werte enthalten ist. Die Liste der Werte kann IP-Adressen und IP-Adresspräfixe enthalten. Präfixe sollten mit einem .enden, z. B. . 10.0. Die Länge der Liste ist auf 10.000 Elemente beschränkt.
ipaddr_has_any_prefix Dynamische Filtern Sie nur Netzwerksitzungen, für die sich das Ziel-IP-Adressfeld oder das Quell-IP-Adressfeldpräfix in einem der aufgeführten Werte befindet. Präfixe sollten mit einem .enden, z. B. . 10.0. Die Länge der Liste ist auf 10.000 Elemente beschränkt.

Das Feld ASimMatchingIpAddr wird mit einem der Werte SrcIpAddr, DstIpAddroder Both festgelegt, um die übereinstimmenden Felder oder Felder widerzuspiegeln.
url_has_any Dynamische Filtern Sie nur Websitzungen, für die das URL-Feld einen der aufgeführten Werte enthält. Der Parser ignoriert möglicherweise das Schema der URL, die als Parameter übergeben wird, wenn die Quelle es nicht meldet. Wenn angegeben 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 Dynamische Filtern Sie nur Websitzungen, für die das Benutzer-Agent-Feld einen der aufgeführten Werte enthält. Wenn angegeben 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 Dynamische Filtern Sie nur Websitzungen, für die der im Feld EventResultDetails gespeicherte HTTP-status Code einer der aufgeführten Werte ist.
eventresult string Filtern Sie nur Netzwerksitzungen mit einem bestimmten EventResult-Wert .

Einige Parameter können sowohl eine Liste von Werten vom Typ 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.'])

Um beispielsweise nur Websitzungen nach einer angegebenen Liste von Domänennamen zu filtern, verwenden Sie Folgendes:

let torProxies=dynamic(["tor2web.org", "tor2web.com", "torlink.co"]);
_Im_WebSession (url_has_any = torProxies)

Schemadetails

Das Websitzungsinformationsmodell ist am OSSEM-Netzwerkentitätsschema und dem OSSEM-HTTP-Entitätsschema ausgerichtet.

Um den bewährten Methoden der Branche zu entsprechen, verwendet das Websitzungsschema die Deskriptoren Src und Dst , um die Sitzungsquelle und das Zielgerät zu identifizieren, ohne das Token Dvc in den Feldnamen einzuschließen.

Der Hostname und die IP-Adresse des Quellgeräts heißen z. B. SrcHostname bzw . SrcIpAddr und nicht SrcDvcHostname und SrcDvcIpAddr. Das Präfix Dvc wird nur für das Melden oder zwischengeschaltete Gerät verwendet, sofern zutreffend.

Felder, die den Benutzer und die Anwendung beschreiben, die den Quell- und Zielgeräten zugeordnet sind, verwenden auch die Src - und Dst-Deskriptoren .

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 Felder für ASIM ausführlich beschrieben.

Allgemeine Felder mit bestimmten Richtlinien

In der folgenden Liste werden Felder mit spezifischen Richtlinien für Websitzungsereignisse aufgeführt:

Feld Class Typ Beschreibung
Eventtype Erforderlich Aufgelistet Beschreibt den vom Datensatz gemeldeten Vorgang. Gültige 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 http-Anforderung an, die von einem Webserver gemeldet wird. Ein solches Ereignis enthält in der Regel weniger netzwerkbezogene Informationen. Die gemeldete URL sollte kein Schema und einen Servernamen enthalten, sondern nur den Pfad und die Parameter, die teil der URL sind.
- ApiRequest: Gibt eine HTTP-Anforderung an, die einem API-Aufruf zugeordnet ist und in der Regel von einem Anwendungsserver gemeldet wird. Ein solches Ereignis enthält in der Regel weniger netzwerkbezogene Informationen. Wenn sie vom Anwendungsserver gemeldet wird, sollte die gemeldete URL kein Schema und keinen Servernamen enthalten, sondern nur den Pfad und parameterteil der URL.
EventResult Erforderlich Aufgelistet Beschreibt das Ereignisergebnis, das auf einen der folgenden Werte normalisiert wird:
- Success
- Partial
- Failure
- NA (nicht zutreffend)

Für eine HTTP-Sitzung ist als status Code definiert, Success der niedriger als 400ist, und Failure ist als status Code definiert, der höher als 400ist. Eine Liste der HTTP-status-Codes finden Sie unter W3-Organisation.

Die Quelle kann nur einen Wert für das Feld EventResultDetails bereitstellen, der analysiert werden muss, um den EventResult-Wert abzurufen.
EventResultDetails Empfohlen Aufgelistet Der HTTP-status Code, wie vom World Wide Web Consortium definiert

Hinweis: Der Wert kann im Quelldatensatz mit unterschiedlichen Begriffen bereitgestellt werden, die auf diese Werte normalisiert werden sollten. Der ursprüngliche Wert sollte im Feld EventOriginalResultDetails gespeichert werden.
EventSchema Erforderlich Aufgelistet Der Name des hier dokumentierten Schemas lautet WebSession.
EventSchemaVersion Erforderlich SchemaVersion (Zeichenfolge) Die Version des Schemas. Die hier dokumentierte Version des Schemas lautet 0.2.7
Dvc-Felder Bei Websitzungsereignissen beziehen sich Gerätefelder auf das System, das das Websitzungsereignis meldet. Dies ist in der Regel ein Zwischengerät für HTTPSession Ereignisse und der Zielweb- oder Anwendungsserver für WebServerSession - und ApiRequest -Ereignisse.

Alle gemeinsamen Felder

Felder, die in der folgenden Tabelle angezeigt werden, sind für alle ASIM-Schemas gemeinsam. 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 FELDER für ASIM .

Class Fields
Erforderlich - 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 Sitzungen auf Anwendungsebene, die TCP/IP als zugrunde liegende Netzwerkebenensitzung verwenden. Das Websitzungsschema ist ein übergeordneter Satz des ASIM-Netzwerksitzungsschemas , und alle Netzwerkschemafelder sind auch im Websitzungsschema enthalten.

Die folgenden Felder des ASIM-Netzwerksitzungsschemas weisen spezifische Richtlinien auf, wenn sie für ein Websitzungsereignis verwendet werden:

  • Der Alias User sollte auf SrcUsername und nicht auf DstUsername verweisen.
  • Das Feld EventOriginalResultDetails kann zusätzlich zum http-status code, der in EventResultDetails gespeichert ist, jedes von der Quelle gemeldete Ergebnis enthalten.
  • Bei Websitzungen ist das primäre Zielfeld das Url-Feld. Die DstDomain ist optional und nicht empfohlen. Wenn sie nicht verfügbar ist, ist es nicht erforderlich, sie aus der URL im Parser zu extrahieren.
  • Die Felder NetworkRuleName und NetworkRuleNumber werden bzw. umbenannt RuleNumberRuleName.

Websitzungsereignisse werden häufig von Zwischengeräten gemeldet, die die HTTP-Verbindung vom Client beenden und eine neue Verbindung als Proxy mit dem Server initiieren. Verwenden Sie zum Darstellen des Zwischengeräts die Felder des ASIM-NetzwerksitzungsschemasZwischengeräts.

HTTP-Sitzungsfelder

Im Folgenden finden Sie zusätzliche Felder, die spezifisch für Websitzungen sind:

Feld Class Typ Beschreibung
Url Erforderlich URL (Zeichenfolge) Die HTTP-Anforderungs-URL, einschließlich Parametern. Bei HTTPSession Ereignissen kann die URL das Schema und den Servernamen enthalten. Für WebServerSession und für ApiRequest die URL würden in der Regel nicht das Schema und den Server enthalten, die in den NetworkApplicationProtocol Feldern und DstFQDN zu finden sind.

Beispiel: https://contoso.com/fo/?k=v&amp;q=u#f
UrlCategory Optional Zeichenfolge Die definierte Gruppierung einer URL oder des Domänenteils der URL. Die Kategorie wird häufig von Websicherheitsgateways bereitgestellt und basiert auf dem Inhalt der Website, auf die die URL verweist.

Beispiel: Suchmaschinen, Erwachsene, Nachrichten, Werbung und geparkte Domänen.
UrlOriginal Optional URL (Zeichenfolge) Der ursprüngliche Wert der URL, wenn die URL vom Meldengerät geändert wurde und beide Werte bereitgestellt werden.
HttpVersion Optional Zeichenfolge Die HTTP-Anforderungsversion.

Beispiel: 2.0
HttpRequestMethod Empfohlen Aufgelistet Die HTTP-Methode. Die Werte sind wie in RFC 7231 und RFC 5789 definiert und umfassen GET, HEAD, POST, , PUT, DELETEOPTIONSCONNECT, TRACEund .PATCH

Beispiel: GET
HttpStatusCode Alias Der HTTP-Statuscode. Alias für EventResultDetails.
HttpContentType Optional Zeichenfolge Der Http-Antwort-Inhaltstypheader.

Hinweis: Das HttpContentType-Feld kann sowohl das Inhaltsformat als auch zusätzliche Parameter enthalten, z. B. die Codierung, die zum Abrufen des tatsächlichen Formats verwendet wird.

Beispiel: text/html; charset=ISO-8859-4
HttpContentFormat Optional Zeichenfolge Der Inhaltsformatteil von HttpContentType

Beispiel: text/html
HttpReferrer Optional Zeichenfolge Der HTTP-Verweisheader.

Hinweis: ASIM verwendet, synchronisiert mit OSSEM, die richtige Schreibweise für referrer und nicht die ursprüngliche HTTP-Headerschreibweise.

Beispiel: https://developer.mozilla.org/docs
HttpUserAgent Optional Zeichenfolge 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 Der HTTP-X-Forwarded-For-Header.

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 benötigt wurde, um eine Antwort auf dem Server zu empfangen, falls zutreffend.

Beispiel: 800
HttpHost Optional Zeichenfolge Der virtuelle Webserver, auf den die HTTP-Anforderung abzielt. Dieser Wert basiert in der Regel auf dem HTTP-Hostheader.
FileName Optional Zeichenfolge 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
DateiSHA256 Optional SHA256 Bei HTTP-Uploads der SHA256-Hash der hochgeladenen Datei.

Beispiel:
e81bb824c4a09a811af17deae22f22dd
2e1ec8cbb00b22629d2899f7c68da274
DateiSHA512 Optional SHA512 Bei HTTP-Uploads der SHA512-Hash der hochgeladenen Datei.
Hash Alias Alias für das verfügbare Hashfeld.
HashType Bedingte Aufgelistet Der Typ des Hashs im Feld Hash . Mögliche Werte sind: MD5, SHA1, SHA256und SHA512.
FileSize Optional Long Bei HTTP-Uploads die Größe der hochgeladenen Datei in Bytes.
Filecontenttype Optional Zeichenfolge Bei HTTP-Uploads der Inhaltstyp der hochgeladenen Datei.
HttpCookie Optional Zeichenfolge Der Inhalt des HTTP-Cookieheaders, der vom Client an den Server gesendet wird und Name-Wert-Paare von Sitzungsdaten enthält.

Beispiel: session_id=abc123; user_pref=dark_mode
HttpIsProxied Optional Boolean Gibt an, ob die HTTP-Anforderung über einen Proxyserver gesendet wurde.

Beispiel: true
HttpRequestBodyBytes Optional Long Die Größe des HTTP-Anforderungstexts in Bytes, ohne Header.

Beispiel: 1024
HttpRequestCacheControl Optional Zeichenfolge Der Inhalt des HTTP-Cache-Control-Anforderungsheader, der Zwischenspeicherungsdirektiven vom Client angibt.

Beispiel: no-cache
HttpRequestHeaderCount Optional Integer Die Anzahl der http-Header, die in der Anforderung enthalten sind.

Beispiel: 12
HttpResponseBodyBytes Optional Long Die Größe des HTTP-Antworttexts in Bytes, ohne Header.

Beispiel: 8192
HttpResponseCacheControl Optional Zeichenfolge Der Inhalt des HTTP-Cache-Control-Antwortheaders, der Zwischenspeicherungsdirektiven vom Server angibt.

Beispiel: max-age=3600, public
HttpResponseExpires Optional Zeichenfolge Der Inhalt des HTTP Expires-Antwortheaders, der angibt, wann der Antwortinhalt abläuft.

Beispiel: Thu, 01 Dec 2024 16:00:00 GMT
HttpResponseHeaderCount Optional Integer Die Anzahl der http-Header, die in der Antwort enthalten sind.

Beispiel: 15

Andere Felder

Wenn das Ereignis von einem der Endpunkte der Websitzung gemeldet wird, kann es Informationen über den Prozess enthalten, der die Sitzung initiiert oder beendet hat. In solchen Fällen wird das ASIM-Prozessereignisschema zum Normalisieren dieser Informationen verwendet.

Schemaaktualisierungen

Das Websitzungsschema basiert auf dem Netzwerksitzungsschema. Daher gelten Aktualisierungen des Netzwerksitzungsschemas auch für das Websitzungsschema.

Im Folgenden sind die Änderungen in Version 0.2.5 des Schemas aufgeführt:

  • Das Feld HttpHostwurde hinzugefügt.

Im Folgenden sind die Änderungen in Version 0.2.6 des Schemas aufgeführt:

  • Der FileSize-Typ wurde von Integer in Long geändert.

Im Folgenden sind die Änderungen in Version 0.2.7 des Schemas aufgeführt:

  • Die Felder HttpCookie, HttpIsProxied, , HttpRequestBodyBytes, HttpRequestCacheControl, HttpRequestHeaderCount, HttpResponseBodyBytes, HttpResponseCacheControlHttpResponseExpires, und HttpResponseHeaderCountwurden hinzugefügt.

Nächste Schritte

Weitere Informationen finden Sie unter: