Cloudflare - XSS probing pattern in request
| Id | 4d9d00b9-31a6-49e4-88c1-9e68277053ac |
| Rulename | Cloudflare - XSS probing pattern in request |
| Description | Detects XSS probing patterns. |
| 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/CloudflareXSSProbingPattern.yaml |
| Version | 1.0.1 |
| Arm template | 4d9d00b9-31a6-49e4-88c1-9e68277053ac.json |
let s_threshold = 3;
Cloudflare
| where HttpRequestMethod in~ ('POST', 'PUT')
| extend susp_ch = countof(ClientRequestURI, '%00')
| where ClientRequestURI matches regex @'(alert\()|(alert\%28)|(String\.fromCharCode\()|(expression\(alert)' or susp_ch > s_threshold
| extend CompleteUrl = strcat(HttpRequestHeaderHost,ClientRequestPath)
triggerThreshold: 0
entityMappings:
- entityType: IP
fieldMappings:
- identifier: Address
columnName: SrcIpAddr
- entityType: URL
fieldMappings:
- identifier: Url
columnName: CompleteUrl
requiredDataConnectors:
- dataTypes:
- Cloudflare
connectorId: CloudflareDataConnector
OriginalUri: https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Cloudflare/Analytic Rules/CloudflareXSSProbingPattern.yaml
name: Cloudflare - XSS probing pattern in request
relevantTechniques:
- T1190
- T1133
status: Available
version: 1.0.1
queryPeriod: 1h
kind: Scheduled
id: 4d9d00b9-31a6-49e4-88c1-9e68277053ac
query: |
let s_threshold = 3;
Cloudflare
| where HttpRequestMethod in~ ('POST', 'PUT')
| extend susp_ch = countof(ClientRequestURI, '%00')
| where ClientRequestURI matches regex @'(alert\()|(alert\%28)|(String\.fromCharCode\()|(expression\(alert)' or susp_ch > s_threshold
| extend CompleteUrl = strcat(HttpRequestHeaderHost,ClientRequestPath)
description: |
'Detects XSS probing patterns.'
queryFrequency: 1h
severity: Medium
triggerOperator: gt
tactics:
- InitialAccess