CommonSecurityLog
| where DeviceVendor == "Arista Networks" and DeviceProduct == "Awake Security"
| summarize StartTime=min(TimeGenerated), EndTime=max(TimeGenerated), Models=make_set(Activity), ASPMatchURLs=make_set(DeviceCustomString2), SourceIPs=make_set(SourceIP),
DestinationIPs=make_set(DestinationIP), ModelMatchCount=sum(EventCount), MaxSeverity=max(toint(LogSeverity)) by SourceHostName
| where ModelMatchCount > 1000 and MaxSeverity > 2
| extend SeverityName=iff(MaxSeverity == 0, "Informational", iff(MaxSeverity < 5, "Low", iff(MaxSeverity < 8, "Medium", "High")))
tactics: []
OriginalUri: https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/AristaAwakeSecurity/Analytic Rules/HighMatchCountsByDevice.yaml
customDetails:
Matches_Dest_IPs: DestinationIPs
Device: SourceHostName
Matches_Count: ModelMatchCount
Matches_Max_Severity: MaxSeverity
Matched_Models: Models
Matches_ASP_URLs: ASPMatchURLs
version: 1.0.2
requiredDataConnectors:
- dataTypes:
- CommonSecurityLog
connectorId: CefAma
id: 90b7ac11-dd6c-4ba1-a99b-737061873859
severity: Medium
triggerOperator: gt
triggerThreshold: 0
queryFrequency: 1h
name: Awake Security - High Match Counts By Device
incidentConfiguration:
createIncident: true
groupingConfiguration:
groupByCustomDetails:
- Device
groupByAlertDetails: []
matchingMethod: Selected
lookbackDuration: 3d
reopenClosedIncident: true
enabled: true
groupByEntities:
- Host
queryPeriod: 1h
entityMappings:
- entityType: Host
fieldMappings:
- columnName: SourceHostName
identifier: HostName
- entityType: IP
fieldMappings:
- columnName: SourceIPs
identifier: Address
description: This query searches for devices with unexpectedly large number of activity match.
eventGroupingSettings:
aggregationKind: AlertPerResult
relevantTechniques: []
alertDetailsOverride:
alertSeverityColumnName: SeverityName
alertTacticsColumnName:
alertDisplayNameFormat: Awake Security - High Model Match Counts On Device {{SourceHostName}}
alertDescriptionFormat: |-
The following Awake model(s):
{{Models}}
matched {{ModelMatchCount}} activities, an unexpectedly large number. The destination IPs associated with these matches were:
{{DestinationIPs}}
query: |
CommonSecurityLog
| where DeviceVendor == "Arista Networks" and DeviceProduct == "Awake Security"
| summarize StartTime=min(TimeGenerated), EndTime=max(TimeGenerated), Models=make_set(Activity), ASPMatchURLs=make_set(DeviceCustomString2), SourceIPs=make_set(SourceIP),
DestinationIPs=make_set(DestinationIP), ModelMatchCount=sum(EventCount), MaxSeverity=max(toint(LogSeverity)) by SourceHostName
| where ModelMatchCount > 1000 and MaxSeverity > 2
| extend SeverityName=iff(MaxSeverity == 0, "Informational", iff(MaxSeverity < 5, "Low", iff(MaxSeverity < 8, "Medium", "High")))
kind: Scheduled
status: Available