Zum Inhalt springen

HttpOnly-Cookie

HttpOnly verhindert den direkten Cookiezugriff durch Seitenskripte. Passende Anfragen können das Cookie weiterhin mitsenden; die Sitzung bleibt zu prüfen.

IT-Sicherheit

Den Cookiewert vor Seitenskripten abschirmen

Ein Cookie mit dem Attribut HttpOnly ist für Seitenskripte nicht über document.cookie zugänglich. Der Server setzt das Attribut im Antwortheader Set-Cookie. Bei einer Sitzungskennung begrenzt das die Möglichkeit, ihren Wert durch eingeschleusten JavaScript-Code auszulesen. Die Ausführung eines solchen Skripts wird dadurch jedoch nicht verhindert.

Sitzungskennung und Anzeigedaten trennen

Ein fiktives Projektportal speichert seine Sitzungskennung im Cookie sessionId. Für die Begrüßung benötigt die Oberfläche nur den Anzeigenamen. Der geplante Profilabruf liefert nach serverseitiger Sitzungs- und Rechteprüfung das Feld displayName; das Frontend muss dafür nicht die Sitzungskennung lesen.

Der Browser kann ein HttpOnly-Cookie weiterhin automatisch an passende Anfragen anhängen, auch wenn diese durch fetch() ausgelöst werden. Die übrigen Cookiebedingungen gelten dabei weiter. Ein eingeschleustes Skript könnte daher unter Umständen Aktionen innerhalb der angemeldeten Sitzung ausführen, ohne den Cookiewert zu kennen. Schutz vor XSS und CSRF sowie serverseitige Berechtigungsprüfungen bleiben nötig.

Für die Beschränkung auf HTTPS ist das gesonderte Attribut Secure zuständig; SameSite beeinflusst das Mitsenden bei websiteübergreifenden Anfragen. Diese Eigenschaften erfüllen unterschiedliche Aufgaben.

Quellen