Schemaverwijzing voor websessienormalisatie van ASIM (Advanced Security Information Model) (openbare preview)
Het normalisatieschema voor websessies wordt gebruikt om een IP-netwerkactiviteit te beschrijven. IP-netwerkactiviteiten worden bijvoorbeeld gerapporteerd door webservers, webproxy's en webbeveiligingsgateways.
Zie Normalisatie en het Advanced Security Information Model (ASIM) voor meer informatie over normalisatie in Microsoft Sentinel.
Belangrijk
Het schema voor netwerknormalisatie is momenteel beschikbaar als PREVIEW-versie. Deze functie wordt geleverd zonder service level agreement en wordt niet aanbevolen voor productieworkloads.
De Aanvullende voorwaarden voor Azure-previews omvatten aanvullende juridische voorwaarden die van toepassing zijn op Azure-functies die in bèta of preview zijn of die anders nog niet algemeen beschikbaar zijn.
Schema-overzicht
Het schema voor normalisatie van websessies vertegenwoordigt elke HTTP-netwerksessie en is geschikt om ondersteuning te bieden voor algemene brontypen, waaronder:
- Webservers
- Webproxy's
- Webbeveiligingsgateways
Het ASIM-websessieschema vertegenwoordigt HTTP- en HTTPS-protocolactiviteit. Omdat het schema protocolactiviteit vertegenwoordigt, wordt het beheerd door RFC's en officieel toegewezen parameterlijsten, waarnaar in dit artikel wordt verwezen indien van toepassing.
Het websessieschema vertegenwoordigt geen controlegebeurtenissen van bronapparaten. Een gebeurtenis die een Web Security Gateway-beleid wijzigt, kan bijvoorbeeld niet worden vertegenwoordigd door het websessieschema.
Omdat HTTP-sessies toepassingslagensessies zijn die gebruikmaken van TCP/IP als de onderliggende netwerklaagsessie, is het schema van de websessie een superset van het ASIM-netwerksessieschema.
De belangrijkste velden in een websessieschema zijn:
- URL, die de URL rapporteert die de client heeft aangevraagd bij de server.
- De SrcIpAddr (met als alias IpAddr), die het IP-adres vertegenwoordigt van waaruit de aanvraag is gegenereerd.
- Het veld EventResultDetails , waarin doorgaans de HTTP-statuscode wordt gerapporteerd.
Websessie-gebeurtenissen kunnen ook gebruikers- en procesgegevens voor de gebruiker en het proces voor het initiëren van de aanvraag omvatten.
Parsers
Zie het overzicht van ASIM-parsers voor meer informatie over ASIM-parsers.
Parsers samenvoegen
Als u parsers wilt gebruiken die alle out-of-the-box ASIM-parsers samenvoegen en ervoor wilt zorgen dat uw analyse wordt uitgevoerd op alle geconfigureerde bronnen, gebruikt u de _Im_WebSession
filterparser of de _ASim_WebSession
parameterloze parser.
U kunt ook werkruimte-geïmplementeerde ImWebSession
parsers en ASimWebSession
parsers gebruiken door deze te implementeren vanuit de GitHub-opslagplaats van Microsoft Sentinel. Zie ingebouwde ASIM-parsers en door werkruimten geïmplementeerde parsers voor meer informatie.
Out-of-the-box, bronspecifieke parsers
Raadpleeg de lijst met ASIM-parsers voor de out-of-the-box van Microsoft Sentinel voor de lijst met websessieparser
Uw eigen genormaliseerde parsers toevoegen
Bij het implementeren van aangepaste parsers voor het informatiemodel voor websessies geeft u de KQL-functies een naam met behulp van de volgende syntaxis:
vimWebSession<vendor><Product>
voor geparametriseerde parsersASimWebSession<vendor><Product>
voor normale parsers
Parserparameters filteren
De im
parsers en vim*
ondersteunen filterparameters. Hoewel deze parsers optioneel zijn, kunnen ze de prestaties van uw query verbeteren.
De volgende filterparameters zijn beschikbaar:
Naam | Type | Description |
---|---|---|
Starttime | datum/tijd | Filter alleen websessies die zijn gestart op of na deze tijd. |
Eindtijd | datum/tijd | Filter alleen websessies die zijn gestart op of vóór deze tijd. |
srcipaddr_has_any_prefix | dynamisch | Filter alleen websessies waarvoor het veldvoorvoegsel van het bron-IP-adres zich in een van de vermelde waarden bevindt. De lijst met waarden kan IP-adressen en IP-adresvoorvoegsels bevatten. Voorvoegsels moeten eindigen op een . , bijvoorbeeld: 10.0. . De lengte van de lijst is beperkt tot 10.000 items. |
ipaddr_has_any_prefix | dynamisch | Filter alleen netwerksessies waarvoor het doel-IP-adresveld of het voorvoegsel van het bron-IP-adresveld zich in een van de vermelde waarden bevindt. Voorvoegsels moeten eindigen op een . , bijvoorbeeld: 10.0. . De lengte van de lijst is beperkt tot 10.000 items.Het veld ASimMatchingIpAddr wordt ingesteld met een van de waarden SrcIpAddr , DstIpAddr of Both om de overeenkomende velden of velden weer te geven. |
url_has_any | dynamisch | Filter alleen websessies waarvoor het URL-veld een van de vermelde waarden bevat. De parser kan het schema van de URL negeren die als parameter wordt doorgegeven, als de bron dit niet rapporteert. Als dit is opgegeven en de sessie geen websessie is, wordt er geen resultaat geretourneerd. De lengte van de lijst is beperkt tot 10.000 items. |
httpuseragent_has_any | dynamisch | Filter alleen websessies waarvoor het veld gebruikersagent een van de waarden bevat die worden vermeld. Als dit is opgegeven en de sessie geen websessie is, wordt er geen resultaat geretourneerd. De lengte van de lijst is beperkt tot 10.000 items. |
eventresultdetails_in | dynamisch | Filter alleen websessies waarvoor de HTTP-statuscode, opgeslagen in het veld EventResultDetails , een van de vermelde waarden is. |
eventresult | tekenreeks | Filter alleen netwerksessies met een specifieke EventResult-waarde . |
Sommige parameters kunnen zowel een lijst met waarden van het type dynamic
als één tekenreekswaarde accepteren. Als u een letterlijke lijst wilt doorgeven aan parameters die een dynamische waarde verwachten, gebruikt u expliciet een dynamische letterlijke waarde. Bijvoorbeeld: dynamic(['192.168.','10.'])
Als u bijvoorbeeld alleen websessies wilt filteren op een opgegeven lijst met domeinnamen, gebruikt u:
let torProxies=dynamic(["tor2web.org", "tor2web.com", "torlink.co"]);
_Im_WebSession (url_has_any = torProxies)
Schemadetails
Het informatiemodel van de websessie is afgestemd op het entiteitsschema OSSEM Network en het OSSEM HTTP-entiteitsschema.
Om te voldoen aan de best practices van de branche, gebruikt het schema van de websessie de descriptors Src en Dst om de sessiebron en doelapparaten te identificeren, zonder het token Dvc op te geven in de veldnaam.
De hostnaam en het IP-adres van het bronapparaat heten bijvoorbeeld respectievelijk SrcHostname en SrcIpAddr en niet SrcDvcHostname en SrcDvcIpAddr. Het voorvoegsel Dvc wordt alleen gebruikt voor het rapportage- of intermediaire apparaat, indien van toepassing.
Velden die de gebruiker en toepassing beschrijven die zijn gekoppeld aan de bron- en doelapparaten, gebruiken ook de Src - en Dst-descriptors .
Andere ASIM-schema's gebruiken doorgaans Doel in plaats van Dst.
Algemene ASIM-velden
Belangrijk
Velden die gemeenschappelijk zijn voor alle schema's, worden gedetailleerd beschreven in het artikel Algemene ASIM-velden .
Algemene velden met specifieke richtlijnen
De volgende lijst vermeldt velden met specifieke richtlijnen voor websessie-gebeurtenissen:
Veld | Klas | Type | Description |
---|---|---|---|
EventType | Verplicht | Enumerated | Beschrijft de bewerking die door de record wordt gerapporteerd. Toegestane waarden zijn: - HTTPsession : geeft een netwerksessie aan die wordt gebruikt voor HTTP of HTTPS, meestal gerapporteerd door een tussenliggend apparaat, zoals een proxy of een webbeveiligingsgateway.- WebServerSession : geeft een HTTP-aanvraag aan die is gerapporteerd door een webserver. Een dergelijke gebeurtenis heeft doorgaans minder netwerkgerelateerde informatie. De gerapporteerde URL mag geen schema en servernaam bevatten, maar alleen het pad en de parameters die deel uitmaken van de URL. - ApiRequest : geeft een HTTP-aanvraag aan die is gekoppeld aan een API-aanroep, meestal gerapporteerd door een toepassingsserver. Een dergelijke gebeurtenis heeft doorgaans minder netwerkgerelateerde informatie. Wanneer de gerapporteerde URL door de toepassingsserver wordt gerapporteerd, mag deze geen schema en servernaam bevatten, maar alleen het pad en de parameters die deel uitmaken van de URL. |
EventResult | Verplicht | Enumerated | Beschrijft het gebeurtenisresultaat, genormaliseerd naar een van de volgende waarden: - Success - Partial - Failure - NA (niet van toepassing)Voor een HTTP-sessie Success wordt gedefinieerd als een statuscode die lager is dan 400 en Failure wordt gedefinieerd als een statuscode hoger dan 400 . Raadpleeg W3 Org voor een lijst met HTTP-statuscodes.De bron geeft mogelijk alleen een waarde op voor het veld EventResultDetails , die moet worden geanalyseerd om de waarde EventResult op te halen. |
EventResultDetails | Aanbevolen | Tekenreeks | De HTTP-statuscode. Opmerking: de waarde kan worden opgegeven in de bronrecord met behulp van verschillende termen, die moeten worden genormaliseerd voor deze waarden. De oorspronkelijke waarde moet worden opgeslagen in het veld EventOriginalResultDetails . |
EventSchema | Verplicht | Tekenreeks | De naam van het schema dat hier wordt beschreven, is WebSession . |
EventSchemaVersion | Verplicht | Tekenreeks | De versie van het schema. De versie van het schema die hier wordt beschreven, is 0.2.6 |
Dvc-velden | Voor websessie-gebeurtenissen verwijzen apparaatvelden naar het systeem dat de websessie-gebeurtenis rapporteert. Dit is meestal een tussenliggend apparaat voor HTTPSession gebeurtenissen en de doelweb- of toepassingsserver voor WebServerSession en ApiRequest -gebeurtenissen. |
Alle algemene velden
Velden die in de onderstaande tabel worden weergegeven, zijn gemeenschappelijk voor alle ASIM-schema's. Elke hierboven opgegeven richtlijn overschrijft de algemene richtlijnen voor het veld. Een veld kan bijvoorbeeld in het algemeen optioneel zijn, maar verplicht voor een specifiek schema. Raadpleeg het artikel Algemene ASIM-velden voor meer informatie over elk veld.
Klas | Fields |
---|---|
Verplicht | - EventCount - EventStartTime - EventEndTime - EventType - EventResult - EventProduct - EventVendor - EventSchema - EventSchemaVersion - Dvc |
Aanbevolen | - EventResultDetails - EventSeverity - EventUid - DvcIpAddr - DvcHostname - DvcDomain - DvcDomainType - DvcFQDN - DvcId - DvcIdType - DvcAction |
Optioneel | - EventMessage - EventSubType - EventOriginalUid - EventOriginalType - EventOriginalSubType - EventOriginalResultDetails - EventOriginalSeverity - EventProductVersion - EventReportUrl - EventOwner - DvcZone - DvcMacAddr - DvcO's - DvcOsVersion - DvcOriginalAction - DvcInterface - AdditionalFields - DvcDescription - DvcScopeId - DvcScope |
Velden voor netwerksessies
HTTP-sessies zijn toepassingslagensessies die gebruikmaken van TCP/IP als de onderliggende netwerklaagsessie. Het schema voor websessies is een superset van het ASIM-netwerksessieschema en alle netwerkschemavelden zijn ook opgenomen in het schema voor websessies.
De volgende schemavelden voor ASIM-netwerksessies hebben specifieke richtlijnen wanneer deze worden gebruikt voor een websessie-gebeurtenis:
- De alias Gebruiker moet verwijzen naar de SrcUsername en niet naar DstUsername.
- Het veld EventOriginalResultDetails kan elk resultaat bevatten dat is gerapporteerd door de bron, naast de HTTP-statuscode die is opgeslagen in EventResultDetails.
- Voor websessies is het primaire doelveld het URL-veld. Het DstDomain is optioneel in plaats van aanbevolen. Als deze niet beschikbaar is, hoeft u deze niet te extraheren uit de URL in de parser.
- De velden
NetworkRuleName
enNetworkRuleNumber
hebben respectievelijk de naamRuleName
enRuleNumber
.
Websessie-gebeurtenissen worden meestal gerapporteerd door tussenliggende apparaten die de HTTP-verbinding van de client beëindigen en een nieuwe verbinding starten, die als proxy fungeert, met de server. Als u het tussenliggende apparaat wilt weergeven, gebruikt u de velden ASIM-netwerksessieschemaTussenliggend apparaat
HTTP-sessievelden
Hier volgen aanvullende velden die specifiek zijn voor websessies:
Veld | Klas | Type | Description |
---|---|---|---|
Url | Verplicht | Tekenreeks | De URL van de HTTP-aanvraag, inclusief parameters. Voor HTTPSession gebeurtenissen kan de URL het schema bevatten en de servernaam bevatten. Voor WebServerSession en voor ApiRequest de URL bevatten doorgaans niet het schema en de server, die u kunt vinden in respectievelijk de NetworkApplicationProtocol velden en DstFQDN . Voorbeeld: https://contoso.com/fo/?k=v&q=u#f |
UrlCategory | Optioneel | Tekenreeks | De gedefinieerde groepering van een URL of het domeingedeelte van de URL. De categorie wordt meestal geleverd door webbeveiligingsgateways en is gebaseerd op de inhoud van de site waarnaar de URL verwijst. Voorbeeld: zoekmachines, volwassenen, nieuws, advertenties en geparkeerde domeinen. |
UrlOriginal | Optioneel | Tekenreeks | De oorspronkelijke waarde van de URL, wanneer de URL is gewijzigd door het rapportageapparaat en beide waarden worden opgegeven. |
HttpVersion | Optioneel | Tekenreeks | De versie van de HTTP-aanvraag. Voorbeeld: 2.0 |
HttpRequestMethod | Aanbevolen | Enumerated | De HTTP-methode. De waarden zijn zoals gedefinieerd in RFC 7231 en RFC 5789 en omvatten GET , HEAD , POST , , PUT , DELETE , TRACE CONNECT OPTIONS en .PATCH Voorbeeld: GET |
HttpStatusCode | Alias | De HTTP-statuscode. Alias naar EventResultDetails. | |
HttpContentType | Optioneel | Tekenreeks | De header van het inhoudstype HTTP-antwoord. Opmerking: het veld HttpContentType kan zowel de inhoudsindeling als extra parameters bevatten, zoals de codering die wordt gebruikt om de werkelijke indeling op te halen. Voorbeeld: text/html; charset=ISO-8859-4 |
HttpContentFormat | Optioneel | Tekenreeks | Het inhoudsindelingsgedeelte van het HttpContentType Voorbeeld: text/html |
HttpReferrer | Optioneel | Tekenreeks | De HTTP-verwijzingsheader. Opmerking: ASIM, gesynchroniseerd met OSSEM, gebruikt de juiste spelling voor verwijzer en niet de oorspronkelijke http-headerspelling. Voorbeeld: https://developer.mozilla.org/docs |
HttpUserAgent | Optioneel | Tekenreeks | De header van de HTTP-gebruikersagent. Voorbeeld: Mozilla/5.0 (Windows NT 10.0; WOW64)AppleWebKit/537.36 (KHTML, zoals Gecko)Chrome/83.0.4103.97 Safari/537.36 |
Useragent | Alias | Alias naar HttpUserAgent | |
HttpRequestXff | Optioneel | IP-adres | De HTTP X-Forwarded-For-header. Voorbeeld: 120.12.41.1 |
HttpRequestTime | Optioneel | Geheel getal | De hoeveelheid tijd, in milliseconden, die nodig was om de aanvraag naar de server te verzenden, indien van toepassing. Voorbeeld: 700 |
HttpResponseTime | Optioneel | Geheel getal | De hoeveelheid tijd, in milliseconden, die nodig was om een antwoord op de server te ontvangen, indien van toepassing. Voorbeeld: 800 |
HttpHost | Optioneel | Tekenreeks | De virtuele webserver waarop de HTTP-aanvraag is gericht. Deze waarde is doorgaans gebaseerd op de HTTP-hostheader. |
Bestandsnaam | Optioneel | Tekenreeks | Voor HTTP-uploads, de naam van het geüploade bestand. |
FileMD5 | Optioneel | MD5 | Voor HTTP-uploads, de MD5-hash van het geüploade bestand. Voorbeeld: 75a599802f1fa166cdadb360960b1dd0 |
FileSHA1 | Optioneel | SHA1 | Voor HTTP-uploads: de SHA1-hash van het geüploade bestand. Voorbeeld: d55c5a4df19b46db8c54 c801c4665d3338acdab0 |
BestandSHA256 | Optioneel | SHA256 | Voor HTTP-uploads de SHA256-hash van het geüploade bestand. Voorbeeld: e81bb824c4a09a811af17deae22f22dd 2e1ec8cbb00b22629d2899f7c68da274 |
BestandSHA512 | Optioneel | SHA512 | Voor HTTP-uploads de SHA512-hash van het geüploade bestand. |
Hash | Alias | Alias naar het beschikbare hashveld. | |
FileHashType | Optioneel | Enumerated | Het type hash in het veld Hash . Mogelijke waarden zijn: MD5 , SHA1 , SHA256 en SHA512 . |
Bestandsgrootte | Optioneel | Lange | Voor HTTP-uploads is dit de grootte in bytes van het geüploade bestand. |
FileContentType | Optioneel | Tekenreeks | Voor HTTP-uploads het inhoudstype van het geüploade bestand. |
Overige velden
Als de gebeurtenis wordt gerapporteerd door een van de eindpunten van de websessie, kan deze informatie bevatten over het proces dat de sessie heeft gestart of beëindigd. In dergelijke gevallen normaliseert het ASIM Process Event-schema deze informatie.
Schema-updates
Het schema van de websessie is afhankelijk van het netwerksessieschema. Daarom zijn updates van het netwerksessieschema ook van toepassing op het schema van de websessie.
Hier volgen de wijzigingen in versie 0.2.5 van het schema:
- Het veld
HttpHost
is toegevoegd.
Hier volgen de wijzigingen in versie 0.2.6 van het schema:
- Het type FileSize is gewijzigd van Integer in Lang.
Volgende stappen
Zie voor meer informatie: