Sicherheit - die Cookies

Einführung in Cookies

cookie

Was sind diese seltsamen Kekse, die ihnen eine Webseite sicherlich schon einmal angeboten hat?

Wenn eine Webseite einen Cookie anbietet, ignorieren die Benutzer diesen Begriff und klicken auf « OK » ohne sich darum zu kümmern was damit passiert. Ein Cookie ist eine Datei die auf der Festplatte des Benutzers gespeichert wird, um dem Webserver zu ermöglichen, ihn von einer Webseite zur nächsten wieder zuerkennen. Cookies werden insbesondere von Webseiten benutzt die elektronischen Handel betreiben, umso die Vorzüge des Benutzers (zum Beispiel die angekreuzten Optionen) festzuhalten, damit er sie nicht erneut eingeben muss.

Cookies und Sicherheit

Das Hauptproblem der Cookies liegt in den Informationen sie enthalten. Wenn sich ein Benutzer mit einer personalisierbaren Webseite verbindet, wird in diese einige Fragen stellen um sein Profil zu erstellen, und dann diese Daten in einem Cookie speichern. Je nach Webseite, kann die Art in der diese Informationen gespeichert sind, für den Benutzer schädlich sein.

Eine Online-Verkaufsseite kann so zum Beispiel Informationen bezüglich der Vorzüge der Benutzer über einen Fragebogen sammeln, um ihnen später Artikel anzubieten, die sie interessieren könnten.

Wenn die Webseite z.B. weiß, ob der Benutzer ein Mann oder eine Frau ist, kann sie ihn direkt in die richtige Abteilung schicken und ihm so einen Zeitverlust ersparen (und vor allem besser verkaufen). Wenn der Benutzer außerdem in seinem Profil angegeben hat, dass er Tennisliebhaber ist, so kann die Webseite eben eine personalisierte Auswahl der neuesten Artikel in diesem Bereich anbieten.

Ein Cookie ist demnach ein Mechanismus, der dafür bestimmt ist eine Verbindung zwischen der Sitzung des Benutzers (Navigation in den Seiten einer Websites während einer bestimmten Zeit) und die ihn betreffenden Daten herzustellen.

Idealerweise sollte der Cookie eine einmalige, zufallsbestimmte Kette (Identifizierungsnummer der Sitzung) enthalten, die schwer zu erraten, und nur eine bestimmte Zeit gültig ist. Nur der Server darf in der Lage sein die Vorzüge des Benutzers mit dieser Nummer zu verbinden. Nach Ablauf des Cookies wird so die Identifizierungsnummer der Sitzung unnütz und der Cookie enthält keine Information bezüglich des Benutzers.

Der Cookie darf auf keinen Fall direkte Informationen bezüglich des Benutzers enthalten und seine Lebensdauer muss so nah wie möglich an der der Benutzersitzung liegen.

Andererseits werden die im Cookie gespeicherten Daten von dem Server gesendet, basierend auf den vom Benutzer angegebenen Daten (unter Ausnahme derIP Adresse und der Identifizierungsnummer des Navigators der automatisch dem Server gesendet wird). So kann der Cookie auf keinen Fall Informationen über den Benutzer enthalten, die dieser nicht gegeben hat, oder Informationen über den Inhalt desComputers , anders ausgedrückt: der Cookie ist nicht in der Lage Informationen über das System des Benutzers zu sammeln.

Lehnen Sie es also ab persönliche Informationen an eine Webseite zu geben, die ihnen kein Vertrauen einflößt, denn sie hat keinen Grund Informationen über sie zu sammeln.

Ein Cookie ist also nicht gefährlich an sich, wenn er richtig konzipiert ist und der Benutzer keine persönlichen Informationen abgibt.

Funktionsweise der Cookies

Cookies gehören zu den Spezifikationen des HTTP Protokolls, das heißt des Protokolls welches es ermöglicht, in Webseiten zu surfen. Das HTTP-Protokoll ermöglicht es Nachrichten zwischen dem Server und dem Client mithilfe von HTTP Anforderungen und HTTP Antworten auszutauschen.

De HTTP Anforderungen und Antworten enthalten Kopfzeilen, mit denen besondere Informationen bilateral versandt werden können. Eine dieser Kopfzeilen ist für das Schreiben von Dateien auf der Festplatte reserviert : die Cookies.

Die HTTP Kopfzeile, die für die Verwendung von Cookies reserviert ist, heißt Set-Cookie , es handelt sich um eine einfache Textzeile der Form :

Set-Cookie : NAME=WERT; domain=DOMAINENAME; expires=DATUM 
Es handelt sich also um eine Zeichenkette die mit « Set-Cookie :  » beginnt, gefolgt von Paaren Schlüssel-Wert, in der Form SCHLÜSSEL=WERT, durch Kommas getrennt.

Hier eine Tabelle der wichtigsten Schlüsse (genannt Attribute) die für einen Cookie möglich sind :

zurückgreifen.
Attribut Wert Syntax Beschreibung
NAME_DES_COOKIES WERT Der Name und der Wert können nicht die Zeichen Strichpunkt (;), Komma (,) und Leerzeichen ( ) enthalten. Um solche Werte einzugeben, muss man auf dieURL-CodierungDieses Attribut ist obligatorisch (es ist übrigens das einzige)
expires DATE Tag, DD-Monat-YYYY HH:MM:SS GMT Das Attribut expires ermöglicht es das Datum zu definieren, an dem der Cookie nicht mehr auf der Platte gespeichert werden soll, und nicht mehr von dem Server beachtet wird
domain domainename xxx.xxx.xxx Der Domainenname wird meist leer gelassen, da der Name des Servers standardmäßig zugewiesen wird (wie man es meist wünscht). Wenn er angegeben wird, so muss der Domainename mindestens zwei Punkte beinhalten (z.B. de.kioskea. net). Eine Maschine die von einem spezifischen Domaine abstammt, kann nur einen Teil-Domainenamen oder seinen eigenen Domainenamen angeben
path /Verzeichnis /Pfad/ Das Attribut path (zu übersetzen mit Pfad) ermöglicht es ein Unterverzeichnis zu definieren oder eine Datei des Servers auf der der Cookie gültig ist, um so seinen Aktionsradius zu reduzieren
secure keine   Das Attribut secure ist optionnal. Es ermöglicht anzugeben dass der Cookie nur gesendet wird wenn die Verbindung gesichert ist (durch SSL oder S-HTTP

  • Ein Cookie kann nicht 4 Ko überschreiten
  • Ein Client kann nicht mehr als 300 Cookies auf seiner Platte haben
  • Ein Server kann nur maximal 20 Cookies bei dem Client erstellen

Versand der Cookies zum Server

Wenn ein Client sich an eine Website (und damit an den Server) anschließt, so werden die Cookies für die Domaine und den angegebenen Pfad automatisch in den Kopfzeilen der HTTP Anforderungen geschickt. Die Kopfzeile nimmt dann folgende Form an :

Cookie : NAME1=WERT1; NAME2=WERT2; ...  

Ein CGI6-Script (oder andere wie ASP oder PHP ) kann die Präsenz des Cookies überprüfen :

  • indem die Kopfzeile, im Falle des CGI, analysiert werden
  • indem das Objekt Request in dem Falle des ASP-Script verwendet wird
  • indem die Variablen $NAME1, $NAME2, ... verwendet werden, die automatisch von dem Skriptmotor erstellt werden. PHP

Grenzen der Cookies

Cookies unterliegen einer gewissen Anzahl von Beschränkungen :

  • Ihre Gesamtzahl ist begrenzt auf 300 ;
  • Die maximale Größe eines Cookies ist 4 Ko ;
  • Es kann maximal 20 Cookies pro Domaine geben.

Einige zusätzliche Anmerkungen über Cookies

  • Ein Cookie ist nicht sichtbar, bevor die nächste Seite geladen wird.
  • Man sollte wissen, dass manche Browser die Cookies nicht gut bearbeiten
    • Microsoft Internet Explorer 4 mit dem Service Pack 1 bearbeitet die Cookies, deren Pfadparameter definiert sind, nicht korrekt.
    • Umgekehrt bearbeiten Netscape Communicator 4.05 und Microsoft Internet Explorer 3.x die Cookies nicht richtig, deren Pfad- und Gültigkeitsparameter nicht definiert sind.
Letzte Änderung am Mittwoch April 1, 2009 02:16:20 von Jeff
Das Dokument mit dem Titel « Sicherheit - die Cookies » aus Kioskea.net (de.kioskea.net) wird zur Verfügung gestellt unter den Bedingungen der Creative Commons Lizenz. Sie dürfen das Dokument verwenden, verändern sowie Vervielfältigungen dieser Seite erstellen, unter den Bedingungen, die in der vorgenannten Lizenz erwähnt sind und unter der gleichzeitigen Bedingung, dass Sie im Rahmen Ihrer Verwendung, Veränderung oder Vervielfältigung nach außen hin klar und deutlich auf den Urheber (= de.kioskea.net) des Dokuments hinweisen.
Anregungen
Spam
Anonymität