Files
DECNET/rules/ttp/R0037.yaml
anti 321ea7a2a6 refactor(ttp): normalise lifter:<owner>_<name> match.kind prefix
E.3.9.1 prerequisite. Rules R0031-R0040 now use lifter:behavioral_*,
R0041 (open_relay) uses lifter:email_open_relay; the rest of the email,
canary, and intel cohorts already conformed. Each lifter at E.3.9-E.3.12
will claim its rules via str.startswith('lifter:<owner>_'), keeping the
ownership routing explicit and trivially extensible.

R0001-R0006 / R0030 lifter:* rules are E.3.13 (Identity/Credential)
territory and stay as-is.
2026-05-01 20:10:33 -04:00

23 lines
533 B
YAML

rule_id: R0037
rule_version: 1
name: k8s_service_account_token
description: |
Reading /api/v1/namespaces/*/secrets or /var/run/secrets/k8s.io/
serviceaccount/token — kube SA harvest.
applies_to:
- session
- http_request
match:
kind: lifter:behavioral_k8s_sa_token
paths:
- '/api/v1/namespaces/[^/]+/secrets'
- '/var/run/secrets/kubernetes\\.io/serviceaccount'
emits:
- tactic: TA0006
technique_id: T1552
sub_technique_id: T1552.007
confidence: 0.95
evidence_fields:
- matched_path
- namespace