Cloudflare - Multiple user agents for single source
| Id | fc50076a-0275-43d5-b9dd-38346c061f67 |
| Rulename | Cloudflare - Multiple user agents for single source |
| Description | Detects requests with different user agents from one source in short timeframe. |
| Severity | Medium |
| Tactics | InitialAccess |
| Techniques | T1190 T1133 |
| Required data connectors | CloudflareDataConnector |
| Kind | Scheduled |
| Query frequency | 1h |
| Query period | 1h |
| Trigger threshold | 0 |
| Trigger operator | gt |
| Source Uri | https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Cloudflare/Analytic Rules/CloudflareMultipleUAs.yaml |
| Version | 1.0.1 |
| Arm template | fc50076a-0275-43d5-b9dd-38346c061f67.json |
let threshold = 10;
Cloudflare
| where isnotempty(HttpUserAgentOriginal)
| summarize d_ua = dcount(HttpUserAgentOriginal) by SrcIpAddr, bin(TimeGenerated, 3m)
| where d_ua > threshold
triggerThreshold: 0
entityMappings:
- entityType: IP
fieldMappings:
- identifier: Address
columnName: SrcIpAddr
requiredDataConnectors:
- dataTypes:
- Cloudflare
connectorId: CloudflareDataConnector
OriginalUri: https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Cloudflare/Analytic Rules/CloudflareMultipleUAs.yaml
name: Cloudflare - Multiple user agents for single source
relevantTechniques:
- T1190
- T1133
status: Available
version: 1.0.1
queryPeriod: 1h
kind: Scheduled
id: fc50076a-0275-43d5-b9dd-38346c061f67
query: |
let threshold = 10;
Cloudflare
| where isnotempty(HttpUserAgentOriginal)
| summarize d_ua = dcount(HttpUserAgentOriginal) by SrcIpAddr, bin(TimeGenerated, 3m)
| where d_ua > threshold
description: |
'Detects requests with different user agents from one source in short timeframe.'
queryFrequency: 1h
severity: Medium
triggerOperator: gt
tactics:
- InitialAccess