Kurzdefinition von "Session"
Der Begriff Session bezeichnet eine Sitzung. Dies bedeutet normalerweise die Dauer vom Start bis zum Beenden des Programms. In der Web-Programmierung wird der Begriff auch für eine Variable verwendet, welche so lange besteht, bis der Benutzer den Browser wieder schließt oder nicht mehr aktiv auf der Seite war.
Erklärung von "Session"
Allgemeines
Sessions werden verwendet, um Daten für die Dauer einer Sitzung zu speichern. Also so lange, bis der Benutzer den Browser schließt. Sofern der Benutzer für eine bestimmte Zeit nicht mehr aktiv auf der Seite ist, kann es sein, dass die Session-Datei vom
gelöscht wird.
Sessions werden mit dem Benutzer meist über ein
mit einer eindeutigen Session-ID zugeschrieben. Sofern der Benutzer keine Cookies akzeptiert, wird je nach Einstellung von
session.trans_id (PHP) die Session-ID auch an die Adresse angehängt.
Da die Daten einer Session nicht an den Nutzer gesendet werden, können hierin auch geheime Daten gespeichert werden, die der Nutzer nicht manipulieren sollte. Je nach Sicherheitsstufe, sollte man allerdings darauf achten, dass auch Session vor Diebstahl nicht sicher sind.
Session-Diebstahl
Die Methode über die URL stellt allerdings bei sicherheitsrelevanten Daten eine große Gefahr dar, da die meisten Benutzer nicht wissen, dass andere Internetnutzer ihre Session verwenden, wenn sie den Link ohne vorheriges Löschen der Session-ID versenden. Daher setzen einige PHP-Entwickler
session.trans_id in ihrer
php.ini (bei Zugriff darauf) oder in der
.htaccess auf
off.
Die Zuordnung über Cookies ist zwar sicherer, allerdings kann es hierbei auch zu Diebstählen kommen. Gelingt es einem Angreifer, auf einer Seite schadhaften JavaScript-Code einzuschleusen und den Benutzer auf die Seite zu verweisen, so kann er das Session-Cookie über JavaScript auslesen und an die Session-ID gelangen. Er kann somit die Session des Opfers verwenden und eventuell schädliche Transaktionen einleiten. Wo sehr große Sicherheit wichtig ist, wird daher vor Beginn wichtiger Transaktionen erneut nach einem Passwort gefragt. Man sieht dies zum Beispiel bei amazon vor
jeder Bestellung, auch wenn man 5 Minuten zuvor bereits sein Passwort eingegeben hat.
Online-Banking geht sogar einen Schritt weiter, indem für jede Überweisung eine neue (nur der Bank und dem Benutzer bekannten) TAN nötig ist.
Letzte Änderung: 11.08.2008 10:11 Uhr