it-swarm.com.de

Wie funktioniert das Cookie "Secure" -Flag?

Ich weiß, dass ein Cookie mit dem Flag secure nicht über eine unverschlüsselte Verbindung gesendet wird. Ich frage mich, wie das im Detail funktioniert.

Wer bestimmt, ob der Cookie gesendet wird oder nicht?

89
ted

Der Client legt dies nur für verschlüsselte Verbindungen fest und dies wird in RFC 6265 definiert:

Das Secure-Attribut begrenzt den Bereich des Cookies auf "sichere" Kanäle (wobei "sicher" vom Benutzerprogramm definiert wird). Wenn ein Cookie das Secure-Attribut hat, wird das Cookie vom Benutzeragenten nur dann in eine HTTP-Anforderung aufgenommen, wenn die Anforderung über einen sicheren Kanal übertragen wird (normalerweise HTTP über TLS (Transport Layer Security) [RFC2818]).

Obwohl es für den Schutz von Cookies vor aktiven Netzwerkangreifern nützlich erscheint, schützt das Secure-Attribut nur die Vertraulichkeit des Cookies. Ein aktiver Netzwerkangreifer kann sichere Cookies von einem unsicheren Kanal überschreiben, wodurch deren Integrität beeinträchtigt wird (weitere Informationen finden Sie in Abschnitt 8.6).

83
Cratylus

Nur ein weiteres Wort zum Thema:

Das Weglassen von secure, da Ihre Website example.com Vollständig https ist, reicht nicht aus.

Wenn Ihr Benutzer explizit http://example.com Erreicht, wird er zu https://example.com Umgeleitet, aber das ist bereits zu spät. Die erste Anfrage enthielt den Cookie.

42
Alain Tiemblo