kingfisher/crates/kingfisher-rules/data/rules/statuspage.yml

42 lines
1.1 KiB
YAML

rules:
- name: Statuspage API Key
id: kingfisher.statuspage.1
pattern: |
(?xi)
\b
statuspage
(?:.|[\n\r]){0,32}?
(?:SECRET|PRIVATE|ACCESS|KEY|TOKEN|API)
(?:.|[\n\r]){0,48}?
\b
(
[0-9a-f]{64}
|
# Legacy UUID-ish keys (seen in older configs)
[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}
)
\b
pattern_requirements:
min_digits: 2
min_entropy: 3.5
confidence: medium
examples:
- 'statuspage_api: OAuth 89a229ce1a8dbcf9ff30430fbe35eb4c0426574bca932061892cefd2138aa4b1'
- statuspage_key = 123e4567-e89b-12d3-a456-426614174000
references:
- https://developer.statuspage.io/
validation:
type: Http
content:
request:
method: GET
url: "https://api.statuspage.io/v1/pages"
headers:
Authorization: "OAuth {{ TOKEN }}"
Accept: "application/json"
response_matcher:
- report_response: true
- type: StatusMatch
status: [200]
- type: WordMatch
words: ['"id"', '"name"']