Contrast ADR - WAF Alert Correlation
| Id | 93641436-afb3-4921-8828-ceab0d15aaab |
| Rulename | Contrast ADR - WAF Alert Correlation |
| Description | Correlates Contrast ADR security alerts with WAF logs to identify confirmed attack attempts that were either exploited or blocked. This rule helps security teams prioritize incidents by focusing on attacks that have been validated by application security monitoring. |
| Severity | Medium |
| Tactics | InitialAccess DefenseEvasion CommandAndControl |
| Techniques | T1190 T1211 T1008 |
| Required data connectors | ContrastADRCCF |
| Kind | Scheduled |
| Query frequency | 5m |
| Query period | 5m |
| Trigger threshold | 0 |
| Trigger operator | gt |
| Source Uri | https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/ContrastADR/Analytic Rules/Contrast_ADR_Confirmed_WAF.yaml |
| Version | 1.0.1 |
| Arm template | 93641436-afb3-4921-8828-ceab0d15aaab.json |
ContrastADRAttackEvents_CL
| where result =~ "exploited" or result =~ "blocked"
| project-rename ip=sourceIp
//please add you WAF table in place of ContrastWAFLogs_CL and WAF tables source IP or target IP column's inplace of ip and uncomment the queries below
//| join kind=inner (ContrastWAFLogs_CL | where TimeGenerated >= ago(5m)) on ip
entityMappings:
- entityType: IP
fieldMappings:
- identifier: Address
columnName: ip
tactics:
- InitialAccess
- DefenseEvasion
- CommandAndControl
requiredDataConnectors:
- dataTypes:
- ContrastADRAttackEvents_CL
connectorId: ContrastADRCCF
alertDetailsOverride:
alertDisplayNameFormat: 'WAF Alert Confirmed {{result}} by Contrast ADR on {{request_headers_referer}} endpoint of {{application_name}} '
alertDescriptionFormat: 'WAF Alert Confirmed {{result}} by Contrast ADR on {{request_headers_referer}} endpoint of {{application_name}} '
incidentConfiguration:
groupingConfiguration:
reopenClosedIncident: false
lookbackDuration: PT1H
groupByEntities:
- IP
enabled: true
matchingMethod: Selected
createIncident: true
id: 93641436-afb3-4921-8828-ceab0d15aaab
severity: Medium
eventGroupingSettings:
aggregationKind: AlertPerResult
status: Available
query: |
ContrastADRAttackEvents_CL
| where result =~ "exploited" or result =~ "blocked"
| project-rename ip=sourceIp
//please add you WAF table in place of ContrastWAFLogs_CL and WAF tables source IP or target IP column's inplace of ip and uncomment the queries below
//| join kind=inner (ContrastWAFLogs_CL | where TimeGenerated >= ago(5m)) on ip
OriginalUri: https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/ContrastADR/Analytic Rules/Contrast_ADR_Confirmed_WAF.yaml
kind: Scheduled
queryPeriod: 5m
version: 1.0.1
name: Contrast ADR - WAF Alert Correlation
queryFrequency: 5m
triggerThreshold: 0
relevantTechniques:
- T1190
- T1211
- T1008
description: |
'Correlates Contrast ADR security alerts with WAF logs to identify confirmed attack attempts that were either exploited or blocked. This rule helps security teams prioritize incidents by focusing on attacks that have been validated by application security monitoring.'
triggerOperator: gt