type: trigger
name: martinschaible/http-sqli-probing-detection-evo
description: "A scenario that detects SQL injection probing from a local file"
filter: "evt.Meta.log_type in ['http_access-log', 'http_error-log'] && any(File('sqli_probe_patterns_evo.txt'), {Upper(evt.Parsed.http_args) contains Upper(#)})"
data:
- dest_file: sqli_probe_patterns_evo.txt
type: string
groupby: possibly.Meta.source_ip
blackhole: 1m
#low false positives approach: we require distinct payloads to avoid false positives
distinct: evt.Parsed.http_args
labels:
label: "SQL Injection Attempt"
spoofable: 0
confidence: 3
service: http
remediation: true
type: trigger
name: martinschaible/http-sqli-probing-detection-evo
description: "A scenario that detects SQL injection probing from a local file"
filter: "evt.Meta.log_type in ['http_access-log', 'http_error-log'] && any(File('sqli_probe_patterns_evo.txt'), {Upper(evt.Parsed.http_args) contains Upper(#)})"
data:
- dest_file: sqli_probe_patterns_evo.txt
type: string
groupby: possibly.Meta.source_ip
blackhole: 1m
#low false positives approach: we require distinct payloads to avoid false positives
distinct: evt.Parsed.http_args
labels:
label: "SQL Injection Attempt"
spoofable: 0
confidence: 3
service: http
remediation: true