HTTP ist ein Protokoll, das den Clients keinen Status zuweist. Wenn ein Client eine Anfrage an den Server sendet, weiß der Server nicht, ob es die erste oder die 42. Anfrage des Client ist. Dies stellt für Active Server Pages (ASP) ein Problem dar, denn dort ist es häufig notwendig, Variablen auf der Server-Seite einem bestimmten Client zuzuordnen. Diese Zuordnung ist eines der Verfahren, die es einer Web Site ermöglichen, mir die neue Jethro Tull-CD zu schicken, die ich bestellt habe und nicht die Barry Manilow-CD, die jemand anders zur selben Zeit bestellt hat. ASP weist dem Client für diese Zuordnung einen einzigartigen Identifikationscode zu, die sogenannte Session-ID, die jeder Client zu Beginn einer Browser-Session erhält.
Was ist eine Session-ID?
Die Session-ID ist ein READ_ONLY-Wert, der die Nutzer gegenüber dem Web-Server jeweils eindeutig identifiziert. In einer klassischen ASP Session werden die IDs der Reihe nach vergeben – der Session-ID706616433 folgt die Session-ID 706616434 und so weiter. Die klassische ASP-Session-ID wird in Form eines verschlüsselten, temporären Cookies auf dem Rechner des Nutzers abgelegt. So würde zum Beispiel die Session-ID 706616434 als der Cookie ASPSESSIONIDGQQGQGCS=
JHMBOBKCBINEHLPKJHOPABBE auf dem Rechner des Users abgelegt.
Mit ASP.NET wurden ein paar Veränderungen an der Session-ID vorgenommen. Wenn man ASP.NET verwendet, besteht die Session-ID aus einem 120-Bit String aus ASCII-Zeichen, wie sie auch für URLs verwendet werden dürfen. Der Dokumentation von Microsoft zufolge werden die Session-IDs mittels eines Algorithmus erzeugt, der ihre Einzigartigkeit garantiert, was wiederum eine Kollision der Sessions verhindert, die stattfände, wenn zwei Anwender versuchten, dieselbe ID zu verwenden. Außerdem macht es der Zufallsfaktor erheblich schwieriger, die ID einer bestehenden Session zu bestimmen, was die Sicherheit erhöht. Wie beim klassischen ASP wird die Session-ID in ASP.NET gewöhnlich in Form eines temporären Cookies auf dem Client-Rechner abgelegt. Das Format dieses Cookies unterscheidet sich nur geringfügig von seinem klassischen Gegenstück, ein Beispiel: asp.net_sessionid=jhmbobkcbinehlpkjhopabbe.
Zusätzlich zu der traditionellen Methode des Statuserhalts durch temporäre Cookies unterstützt ASP.NET einen „cookiefreien“ Modus. Wenn der cookiefreie Modus aktiviert ist, bettet ASP.NET die Session-ID in die URL ein, die zurück an den Client geschickt wird. So arbeiten auch Browser stabil, die keine Cookies unterstützen, oder bei denen die Cookies deaktiviert sind. Es lohnt sich, den cookiefreien Modus im Hinterkopf zu behalten, wenn man die gegenwärtige Gefühlslage bezüglich Cookies und der durch sie möglichen Rückverfolgung von Kunden bedenkt.
Die Hintermänner haben es auf Zugangsdaten zu Microsoft Azure abgesehen. Die Kampagne ist bis mindestens…
Cloud-Plattform für elektronische Beschaffungsprozesse mit automatisierter Abwicklung elektronischer Rechnungen.
Mindestens eine Schwachstelle erlaubt eine Remotecodeausführung. Dem Entdecker zahlt Google eine besonders hohe Belohnung von…
Nur rund die Hälfte schaltet während der Feiertage komplett vom Job ab. Die anderen sind…
Security-Experten von Check Point sind einer neuen Angriffsart auf die Spur gekommen, die E-Mail-Schutzmaßnahmen umgehen…
Hinter 84 Prozent der Zwischenfälle bei Herstellern stecken Schwachstellen in der Lieferkette. Auf dem Vormarsch…