SEC_015_NO_PII_OR_AUTH_STATE_IN_URLS: Keine PII oder Auth-Zustaende in URLs

Severity: must. Bereich: security.

Regel

Personenbezogene oder authentifizierende Werte wie Email, Magic Code, Session-ID, Reset-Token, Telefonnummer oder interne Account-Identifier DUERFEN nicht in Query-Strings, Redirect-Location-URLs, URL-Fragmenten oder kanonischen Links transportiert werden. Transienter Login- oder Reauth-State MUSS serverseitig gespeichert und ueber ein zufaelliges opakes Cookie-Token mit Secure, HttpOnly, SameSite und kurzer TTL referenziert werden. Falls ausnahmsweise Daten direkt im Cookie stehen, muessen sie verschluesselt und authentifiziert sein; HMAC-only schuetzt nur Integritaet, nicht Vertraulichkeit.

Reflection-Check

check:
  reflect:
    fields:
    - sensitive_fields
    - appears_in_query_string
    - appears_in_redirect_location
    - appears_in_referer
    - appears_in_access_log
    - server_side_state
    - opaque_cookie_token
    - ttl_seconds
    - clear_on_success
    object: transient_sensitive_state

Evidence

alle Regeln dieses Bereichs