Dela via


Schema för trafikanalys och dataaggregering

Trafikanalys är en molnbaserad lösning som ger insyn i användar- och programaktivitet i molnnätverk. Trafikanalys analyserar Azure Network Watcher-flödesloggar för att ge insikter om trafikflödet i ditt Azure-moln. Med trafikanalys kan du:

  • Visualisera nätverksaktivitet i dina Azure-prenumerationer och identifiera hot spots.
  • Identifiera säkerhetshot och skydda nätverket med information som öppna portar, program som försöker komma åt Internet och virtuella datorer som ansluter till oseriösa nätverk.
  • Förstå trafikflödesmönster i Azure-regioner och Internet för att optimera nätverksdistributionen för prestanda och kapacitet.
  • Hitta felkonfigurationer i nätverket som leder till misslyckade anslutningar i nätverket.
  • Känna till nätverksanvändning i byte, paket eller flöden.

Dataaggregering

  • Alla flödesloggar i en nätverkssäkerhetsgrupp mellan FlowIntervalStartTime_t och FlowIntervalEndTime_t samlas in med en minuts intervall som blobar i ett lagringskonto.
  • Standardbearbetningsintervallet för trafikanalys är 60 minuter, vilket innebär att trafikanalys varje timme väljer blobar från lagringskontot för aggregering. Men om du väljer ett bearbetningsintervall på 10 minuter väljer trafikanalysen i stället blobar från lagringskontot var 10:e minut.
  • Flöden som har samma Source IP, Destination IP, Destination port, NSG name, NSG rule, Flow Directionoch Transport layer protocol (TCP or UDP) är klubbade i ett enda flöde av trafikanalys (Obs! källporten är undantagen för aggregering).
  • Den här enskilda posten är dekorerad (information i avsnittet nedan) och matas in i Azure Monitor-loggar av trafikanalys. Den här processen kan ta upp till 1 timme.
  • FlowStartTime_t fältet anger den första förekomsten av ett sådant aggregerat flöde (samma fyra tupppel) i flödesloggens bearbetningsintervall mellan FlowIntervalStartTime_t och FlowIntervalEndTime_t.
  • För alla resurser i trafikanalys är de flöden som anges i Azure-portalen totala flöden som ses av nätverkssäkerhetsgruppen, men i Azure Monitor-loggar ser användaren bara den enda, reducerade posten. Om du vill se alla flöden använder du fältet blob_id som kan refereras från lagring. Det totala flödesantalet för posten matchar de enskilda flöden som visas i bloben.

Följande fråga hjälper dig att titta på alla undernät som interagerar med offentliga IP-adresser som inte är azure-adresser under de senaste 30 dagarna.

AzureNetworkAnalytics_CL
| where SubType_s == "FlowLog" and FlowStartTime_t >= ago(30d) and FlowType_s == "ExternalPublic"
| project Subnet1_s, Subnet2_s  

Om du vill visa blobsökvägen för flödena i föregående fråga använder du följande fråga:

let TableWithBlobId =
(AzureNetworkAnalytics_CL
   | where SubType_s == "Topology" and ResourceType == "NetworkSecurityGroup" and DiscoveryRegion_s == Region_s and IsFlowEnabled_b
   | extend binTime = bin(TimeProcessed_t, 6h),
            nsgId = strcat(Subscription_g, "/", Name_s),
            saNameSplit = split(FlowLogStorageAccount_s, "/")
   | extend saName = iif(arraylength(saNameSplit) == 3, saNameSplit[2], '')
   | distinct nsgId, saName, binTime)
| join kind = rightouter (
   AzureNetworkAnalytics_CL
   | where SubType_s == "FlowLog"  
   | extend binTime = bin(FlowEndTime_t, 6h)
) on binTime, $left.nsgId == $right.NSGList_s  
| extend blobTime = format_datetime(todatetime(FlowIntervalStartTime_t), "yyyy MM dd hh")
| extend nsgComponents = split(toupper(NSGList_s), "/"), dateTimeComponents = split(blobTime, " ")
| extend BlobPath = strcat("https://", saName,
                        "@insights-logs-networksecuritygroupflowevent/resoureId=/SUBSCRIPTIONS/", nsgComponents[0],
                        "/RESOURCEGROUPS/", nsgComponents[1],
                        "/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/", nsgComponents[2],
                        "/y=", dateTimeComponents[0], "/m=", dateTimeComponents[1], "/d=", dateTimeComponents[2], "/h=", dateTimeComponents[3],
                        "/m=00/macAddress=", replace(@"-", "", MACAddress_s),
                        "/PT1H.json")
| project-away nsgId, saName, binTime, blobTime, nsgComponents, dateTimeComponents;

TableWithBlobId
| where SubType_s == "FlowLog" and FlowStartTime_t >= ago(30d) and FlowType_s == "ExternalPublic"
| project Subnet_s , BlobPath

Den föregående frågan konstruerar en URL för att komma åt bloben direkt. URL:en med platshållare är följande:

https://{storageAccountName}@insights-logs-networksecuritygroupflowevent/resoureId=/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/{resourceGroup}/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/{networkSecurityGroupName}/y={year}/m={month}/d={day}/h={hour}/m=00/macAddress={macAddress}/PT1H.json

Schema för trafikanalys

Trafikanalys bygger på Azure Monitor-loggar, så du kan köra anpassade frågor på data som är dekorerade med trafikanalys och ange aviseringar.

I följande tabell visas fälten i schemat och vad de betyder för flödesloggar för nätverkssäkerhetsgrupper.

Fält Format Kommentarer
TableName AzureNetworkAnalytics_CL Tabell för trafikanalysdata.
SubType_s FlowLog Undertyp för flödesloggarna. Använd endast FlowLog, andra värden för SubType_s är för intern användning.
FASchemaVersion_s 2 Schemaversion. Återspeglar inte nätverkssäkerhetsgruppens flödesloggversion.
TimeProcessed_t Datum och tid i UTC Tid då trafikanalysen bearbetade rådataflödesloggarna från lagringskontot.
FlowIntervalStartTime_t Datum och tid i UTC Starttid för flödesloggens bearbetningsintervall (tid från vilken flödesintervallet mäts).
FlowIntervalEndTime_t Datum och tid i UTC Sluttid för flödesloggens bearbetningsintervall.
FlowStartTime_t Datum och tid i UTC Första förekomsten av flödet (som aggregeras) i flödesloggens bearbetningsintervall mellan FlowIntervalStartTime_t och FlowIntervalEndTime_t. Det här flödet aggregeras baserat på aggregeringslogik.
FlowEndTime_t Datum och tid i UTC Senaste förekomst av flödet (som aggregeras) i flödesloggens bearbetningsintervall mellan FlowIntervalStartTime_t och FlowIntervalEndTime_t. När det gäller flödeslogg v2 innehåller det här fältet den tid då det sista flödet med samma fyra tupplar startade (markerat som B i råflödesposten).
FlowType_s – IntraVNet
– InterVNet
- S2S
- P2S
– AzurePublic
- ExternalPublic
- Skadligt flöde
- Okänd privat
-Okänd
Se Anteckningar för definitioner.
SrcIP_s Källans IP-adress Tom i AzurePublic- och ExternalPublic-flöden.
DestIP_s Mål-IP-adress Tom i AzurePublic- och ExternalPublic-flöden.
VMIP_s IP för den virtuella datorn Används för AzurePublic- och ExternalPublic-flöden.
DestPort_d Målport Port där trafiken är inkommande.
L4Protocol_s - T
- U
Transportprotokoll. T = TCP
U = UDP.
L7Protocol_s Protokollnamn Härledd från målporten.
FlowDirection_s - I = Inkommande
- O = Utgående
Flödesriktning: in eller ut ur nätverkssäkerhetsgruppen per flödeslogg.
FlowStatus_s - A = Tillåten
- D = Nekad
Status för flödet, oavsett om det tillåts eller nekas av nätverkssäkerhetsgruppen per flödeslogg.
NSGList_s <SUBSCRIPTIONID>/<RESOURCEGROUP_NAME>/<NSG_NAME> Nätverkssäkerhetsgrupp som är associerad med flödet.
NSGRules_s <Indexvärde 0>|<>NSG_RULENAME|<Flödesriktning>|<Flödesstatus>|<FlowCount ProcessedByRule> Regel för nätverkssäkerhetsgrupp som tillät eller nekade det här flödet.
NSGRule_s NSG_RULENAME Regel för nätverkssäkerhetsgrupp som tillät eller nekade det här flödet.
NSGRuleType_s – Användardefinierad
-Standard
Typen av regel för nätverkssäkerhetsgrupp som används av flödet.
MACAddress_s MAC-adress MAC-adressen för nätverkskortet där flödet registrerades.
Subscription_g Prenumerationen på det virtuella Azure-nätverket/nätverksgränssnittet/den virtuella datorn fylls i i det här fältet Gäller endast för flödestyperna FlowType = S2S, P2S, AzurePublic, ExternalPublic, MaliciousFlow och UnknownPrivate (flödestyper där endast en sida är Azure).
Subscription1_g Prenumerations-ID:t Prenumerations-ID för virtuellt nätverk/nätverksgränssnitt/virtuell dator som käll-IP-adressen i flödet tillhör.
Subscription2_g Prenumerations-ID:t Prenumerations-ID för virtuellt nätverk/nätverksgränssnitt/virtuell dator som mål-IP-adressen i flödet tillhör.
Region_s Azure-region för virtuellt nätverk/nätverksgränssnitt/virtuell dator som IP-adressen i flödet tillhör. Gäller endast för flödestyperna FlowType = S2S, P2S, AzurePublic, ExternalPublic, MaliciousFlow och UnknownPrivate (flödestyper där endast en sida är Azure).
Region1_s Azure-region Azure-region för virtuellt nätverk/nätverksgränssnitt/virtuell dator som käll-IP-adressen i flödet tillhör.
Region2_s Azure-region Azure-region för virtuellt nätverk som mål-IP-adressen i flödet tillhör.
NIC_s <>resourcegroup_Name/<NetworkInterfaceName> Nätverkskort som är associerat med den virtuella datorn som skickar eller tar emot trafiken.
NIC1_s <>resourcegroup_Name/<NetworkInterfaceName> Nätverkskort som är associerat med käll-IP-adressen i flödet.
NIC2_s <>resourcegroup_Name/<NetworkInterfaceName> Nätverkskort som är associerat med mål-IP-adressen i flödet.
VM_s <>resourcegroup_Name/<NetworkInterfaceName> Virtuell dator som är associerad med nätverksgränssnittet NIC_s.
VM1_s <>resourcegroup_Name/<VirtualMachineName> Virtuell dator som är associerad med käll-IP-adressen i flödet.
VM2_s <>resourcegroup_Name/<VirtualMachineName> Virtuell dator som är associerad med mål-IP-adressen i flödet.
Subnet_s <>ResourceGroup_Name/<VirtualNetwork_Name>/<SubnetName> Undernät som är associerat med NIC_s.
Subnet1_s <>ResourceGroup_Name/<VirtualNetwork_Name>/<SubnetName> Undernät som är associerat med käll-IP-adressen i flödet.
Subnet2_s <>ResourceGroup_Name/<VirtualNetwork_Name>/<SubnetName> Undernät som är associerat med mål-IP-adressen i flödet.
ApplicationGateway1_s <SubscriptionID>/<ResourceGroupName>/<ApplicationGatewayName> Programgateway som är associerad med käll-IP-adressen i flödet.
ApplicationGateway2_s <SubscriptionID>/<ResourceGroupName>/<ApplicationGatewayName> Programgateway som är associerad med mål-IP-adressen i flödet.
ExpressRouteCircuit1_s <SubscriptionID>/<ResourceGroupName>/<ExpressRouteCircuitName> ExpressRoute-krets-ID – när flödet skickas från platsen via ExpressRoute.
ExpressRouteCircuit2_s <SubscriptionID>/<ResourceGroupName>/<ExpressRouteCircuitName> ExpressRoute-krets-ID – när flödet tas emot från molnet av ExpressRoute.
ExpressRouteCircuitPeeringType_s – AzurePrivatePeering
– AzurePublicPeering
– MicrosoftPeering
ExpressRoute-peeringtyp som ingår i flödet.
LoadBalancer1_s <SubscriptionID>/<ResourceGroupName>/<LoadBalancerName> Lastbalanserare som är associerad med käll-IP-adressen i flödet.
LoadBalancer2_s <SubscriptionID>/<ResourceGroupName>/<LoadBalancerName> Lastbalanserare som är associerad med mål-IP-adressen i flödet.
LocalNetworkGateway1_s <SubscriptionID>/<ResourceGroupName>/<LocalNetworkGatewayName> Lokal nätverksgateway som är associerad med käll-IP-adressen i flödet.
LocalNetworkGateway2_s <SubscriptionID>/<ResourceGroupName>/<LocalNetworkGatewayName> Lokal nätverksgateway som är associerad med mål-IP-adressen i flödet.
ConnectionType_s – VNetPeering
– VpnGateway
– ExpressRoute
Onnection-typen.
ConnectionName_s <SubscriptionID>/<ResourceGroupName>/<ConnectionName> Anslutningsnamnet. För flödestypen P2S formateras den som <gateway name>_<VPN Client IP>.
ConnectingVNets_s Blankstegsavgränsad lista över namn på virtuella nätverk När det gäller nav- och ekertopologi fylls virtuella hubbnätverk i här.
Country_s Landskod med två bokstäver (ISO 3166-1 alpha-2) Fylls i för flödestypen ExternalPublic. Alla IP-adresser i PublicIPs_s fält delar samma landskod.
AzureRegion_s Platser i Azure-regionen Fylls i för flödestypen AzurePublic. Alla IP-adresser i PublicIPs_s fält delar Azure-regionen.
AllowedInFlows_d Antal inkommande flöden som tilläts, vilket representerar antalet flöden som delade samma inkommande fyra tupplar till nätverksgränssnittet där flödet hämtades.
DeniedInFlows_d Antal inkommande flöden som nekades. (Inkommande till nätverksgränssnittet där flödet hämtades).
AllowedOutFlows_d Antal utgående flöden som tilläts (Utgående till nätverksgränssnittet där flödet hämtades).
DeniedOutFlows_d Antal utgående flöden som nekades (Utgående till nätverksgränssnittet där flödet hämtades).
FlowCount_d Inaktuell. Totalt antal flöden som matchade samma fyra tuppeln. När det gäller flödestyperna ExternalPublic och AzurePublic inkluderar antalet även flöden från olika PublicIP-adresser.
InboundPackets_d Representerar paket som skickas från målet till flödets källa Endast ifyllt för version 2 av flödesloggschemat för nätverkssäkerhetsgrupp.
OutboundPackets_d Representerar paket som skickas från källan till flödets mål Endast ifyllt för version 2 av flödesloggschemat för nätverkssäkerhetsgrupp.
InboundBytes_d Representerar byte som skickas från målet till flödets källa Endast ifyllt för version 2 av flödesloggschemat för nätverkssäkerhetsgrupp.
OutboundBytes_d Representerar byte som skickas från källan till flödets mål Endast ifyllt för version 2 av flödesloggschemat för nätverkssäkerhetsgrupp.
CompletedFlows_d Fylls med icke-nollvärde endast för version 2 av schema för nätverkssäkerhetsgruppsflödeslogg.
PublicIPs_s <>PUBLIC_IP|<>FLOW_STARTED_COUNT|<>FLOW_ENDED_COUNT|<>OUTBOUND_PACKETS|<>INBOUND_PACKETS|<>OUTBOUND_BYTES|<INBOUND_BYTES> Poster avgränsade med staplar.
SrcPublicIPs_s <>SOURCE_PUBLIC_IP|<>FLOW_STARTED_COUNT|<>FLOW_ENDED_COUNT|<>OUTBOUND_PACKETS|<>INBOUND_PACKETS|<>OUTBOUND_BYTES|<INBOUND_BYTES> Poster avgränsade med staplar.
DestPublicIPs_s <>DESTINATION_PUBLIC_IP|<>FLOW_STARTED_COUNT|<>FLOW_ENDED_COUNT|<>OUTBOUND_PACKETS|<>INBOUND_PACKETS|<>OUTBOUND_BYTES|<INBOUND_BYTES> Poster avgränsade med staplar.
IsFlowCapturedAtUDRHop_b -Sann
-Falsk
Om flödet hämtades vid ett UDR-hopp är värdet Sant.

Viktigt!

Schemat för trafikanalys uppdaterades den 22 augusti 2019. Det nya schemat tillhandahåller käll- och mål-IP-adresser separat, vilket tar bort behovet av att parsa FlowDirection fältet så att frågorna blir enklare. Det uppdaterade schemat hade följande ändringar:

  • FASchemaVersion_s uppdateras från 1 till 2.
  • Inaktuella fält: VMIP_s, Subscription_g, Region_s, , NSGRules_s, Subnet_s, VM_s, NIC_s, PublicIPs_s, FlowCount_d
  • Nya fält: SrcPublicIPs_s, DestPublicIPs_s, NSGRule_s

Schema för offentlig IP-information

Trafikanalys tillhandahåller WHOIS-data och geografisk plats för alla offentliga IP-adresser i din miljö. För en skadlig IP-adress tillhandahåller trafikanalys DNS-domän, hottyp och trådbeskrivningar som identifieras av Microsofts säkerhetsinformationslösningar. IP-information publiceras på Log Analytics-arbetsytan så att du kan skapa anpassade frågor och lägga aviseringar på dem. Du kan också komma åt förifyllda frågor från instrumentpanelen för trafikanalys.

Följande tabell beskriver offentligt IP-schema:

Fält Format Kommentarer
TableName AzureNetworkAnalyticsIPDetails_CL Tabell som innehåller IP-informationsdata för trafikanalys.
SubType_s FlowLog Undertyp för flödesloggarna. Använd endast "FlowLog", andra värden för SubType_s är för produktens interna arbete.
FASchemaVersion_s 2 Schemaversion. Återspeglar inte nätverkssäkerhetsgruppens flödesloggversion.
FlowIntervalStartTime_t Datum och tid i UTC Starttid för flödesloggens bearbetningsintervall (tid från vilken flödesintervallet mäts).
FlowIntervalEndTime_t Datum och tid i UTC Sluttid för flödesloggens bearbetningsintervall.
FlowType_s – AzurePublic
- ExternalPublic
- Skadligt flöde
Se Anteckningar för definitioner.
IP Offentlig IP-adress Offentlig IP-adress vars information anges i posten.
Plats IP-adressens plats – För offentlig IP-adress i Azure: Azure-region för virtuellt nätverk/nätverksgränssnitt/virtuell dator som IP-adressen tillhör ELLER Global för IP 168.63.129.16.
– För extern offentlig IP-adress och skadlig IP-adress: landskod med två bokstäver där IP finns (ISO 3166-1 alpha-2).
PublicIPDetails Information om IP – För AzurePublic IP: Azure-tjänsten äger IP-adressen eller microsofts virtuella offentliga IP-adress för 168.63.129.16.
– ExternalPublic/Skadlig IP-adress: WhoIS-information om IP-adressen.
ThreatType Hot som orsakas av skadlig IP-adress Endast för skadliga IP-adresser: Ett av hoten från listan över tillåtna värden (beskrivs i nästa tabell).
ThreatDescription Beskrivning av hotet Endast för skadliga IP-adresser. Beskrivning av hotet från den skadliga IP-adressen.
DNSDomain DNS-domän Endast för skadliga IP-adresser. Domännamn som är associerat med den skadliga IP-adressen.
Url URL som motsvarar den skadliga IP-adressen Endast för skadliga IP-adresser
Port Port som motsvarar den skadliga IP-adressen Endast för skadliga IP-adresser

Lista över hottyper:

Värde beskrivning
Botnät Indikator som beskriver en botnet-nod/medlem.
C2 Indikator som beskriver en kommando- och kontrollnod i ett botnät.
CryptoMining Trafik som involverar den här nätverksadressen/URL:en är en indikation på CyrptoMining/Resursmissbruk.
DarkNet Indikator för en Darknet-nod/nätverk.
DDos Indikatorer som rör en aktiv eller kommande DDoS-kampanj.
MaliciousUrl URL som betjänar skadlig kod.
Skadlig kod Indikator som beskriver en skadlig fil eller filer.
Nätfiske Indikatorer som rör en nätfiskekampanj.
Proxy Indikator för en proxytjänst.
PUA Potentiellt oönskat program.
Visningslista En allmän bucket som indikatorer placeras i när den inte kan fastställas exakt vad hotet är eller kräver manuell tolkning. WatchList bör normalt inte användas av partner som skickar data till systemet.

Kommentar

  • När det gäller AzurePublic och ExternalPublic flöden fylls kundens ägda IP-adress för virtuella Azure-datorer i VMIP_s fältet, medan de offentliga IP-adresserna fylls i i fältet PublicIPs_s . För dessa två flödestyper bör du använda VMIP_s och PublicIPs_s i stället för SrcIP_s fält DestIP_s . För AzurePublic- och ExternalPublic IP-adresser aggregerar vi ytterligare, så att antalet poster som matas in till Log Analytics-arbetsytan är minimalt. (Det här fältet kommer att bli inaktuellt. Använd SrcIP_s och DestIP_s beroende på om den virtuella datorn var källan eller målet i flödet).
  • Vissa fältnamn läggs till med _s eller _d, som inte betyder källa och mål, men anger datatypernas sträng respektive decimal .
  • Baserat på DE IP-adresser som ingår i flödet kategoriserar vi flödena i följande flödestyper:
    • IntraVNet: Båda IP-adresserna i flödet finns i samma virtuella Azure-nätverk.
    • InterVNet: IP-adresser i flödet finns i två olika virtuella Azure-nätverk.
    • S2S (Plats-till-plats): En av IP-adresserna tillhör ett virtuellt Azure-nätverk, medan den andra IP-adressen tillhör kundens nätverk (plats) som är anslutet till det virtuella nätverket via VPN-gatewayen eller ExpressRoute.
    • P2S (Punkt-till-plats): En av IP-adresserna tillhör ett virtuellt Azure-nätverk, medan den andra IP-adressen tillhör kundens nätverk (plats) som är anslutet till det virtuella Azure-nätverket via VPN-gateway.
    • AzurePublic: En av IP-adresserna tillhör ett virtuellt Azure-nätverk, medan den andra IP-adressen är en offentlig IP-adress i Azure som ägs av Microsoft. Kundägda offentliga IP-adresser ingår inte i den här flödestypen. Till exempel skulle alla kundägda virtuella datorer som skickar trafik till en Azure-tjänst (lagringsslutpunkt) kategoriseras under den här flödestypen.
    • ExternalPublic: En av IP-adresserna tillhör ett virtuellt Azure-nätverk, medan den andra IP-adressen är en offentlig IP-adress som inte finns i Azure och inte rapporteras som skadlig i ASC-feeds som trafikanalys förbrukar för bearbetningsintervallet mellan "FlowIntervalStartTime_t" och "FlowIntervalEndTime_t".
    • MaliciousFlow: En av IP-adresserna tillhör ett virtuellt Azure-nätverk, medan den andra IP-adressen är en offentlig IP-adress som inte finns i Azure och rapporteras som skadlig i ASC-feeds som trafikanalys förbrukar för bearbetningsintervallet mellan "FlowIntervalStartTime_t" och "FlowIntervalEndTime_t".
    • UnknownPrivate: En av IP-adresserna tillhör ett virtuellt Azure-nätverk, medan den andra IP-adressen tillhör det privata IP-intervall som definierats i RFC 1918 och inte kunde mappas av trafikanalys till en kundägd webbplats eller ett virtuellt Azure-nätverk.
    • Unknown: Det går inte att mappa någon av IP-adresserna i flödet med kundtopologin i Azure och lokalt (plats).