Cookie und Session Sicherheit
Cookies mit Session-ID
Cookies werden häufig für die Session-ID verwendet
- Benutzer hat sich mit Benutzername und Passwort identifiziert
- Danach wird eine Session aufgebaut und das Cookie dient der Identifizierung
Konsequenzen
- Cookie ist genauso zu beschützen wie ein Passwort
- Ansonsten droht Session-Hijacking
Session Hijacking
Schutz vor Session Hijacking
Cookies sind shared secret zwischen Client und Server
- Session-ID darf nicht geraten werden können
- muss wirklich zufällig sein
- mindestens 128 Bit Zufall in der ID
- Session-ID darf nicht von außen vorgegeben werden
- keine Session-ID von außen akzeptieren
- Session-ID darf nicht ausgelesen werden können
- Cookie auf Secure setzen (nur per HTTPS übertragen)
- Cookie auf HttpOnly setzen (kein Zugriff mit JavaScript)
- Session-ID nicht anzeigen
- Session-ID nicht speichern oder in Log-Dateien schreiben
Daten im Cookie
Cookie kann beliebig manipuliert werden
Beispiel 1
Cookie: lang=en-us; ADMIN=no; y=1; time=10:30GMT;
Cookie: lang=en-us; ADMIN=yes; y=1; time=10:30GMT;
Beispiel 2
Cookie1: item1_ID=12369&item1_pr=27,95&item2_ID=10334&item2_pr=19,95
Cookie2: item1_ID=12369&item1_pr=0,95&item2_ID=10334&item2_pr=1,95