Session-Übernahme

Wie schon in dem Abschnitt Sessions geschrieben, kann es sein, dass eine Session-ID entwendet wird. Wenn ein Angreifer eine Session übernimmt, so kann er damit sämtliche Aktionen auf der Seite durchführen, die der Nutzer auch hätte ausführen können.

Eine Session-ID kann beispielsweise versehentlich weitergegeben werden, wenn eine URL, die diese beinhaltet, auf einer fremden Seite veröffentlicht wird. Wenn dies geschieht, kann es sogar sein, dass die Session fixiert wird. Die Session wird nie geschlossen, weil in regelmäßigen Abständen neue Benutzer die Webseite mit der alten Session-ID aufrufen, bevor deren Ablaufzeit erreicht ist. Mit diesem neuen Aufruf wird die Gültigkeit der Session-ID verlängert, so dass die Session letztendlich ewig läuft.

Eine Session-ID kann mit session_regenerate_id(true) geändert werden. Dabei wird eine neue ID generiert. Der Parameter true sorgt dafür, dass die alte Session-ID zerstört wird.

Zusätzlich macht es Sinn, vor wichtigen Aktionen, die ein Nutzer ausführen kann, den Benutzer neu zu authentifizieren. In Online-Bankingsystemen – welche übrigens auch mit Sessions arbeiten – geschieht diese Authentifizierung beispielsweise, indem eine TAN eingegeben werden muss. Der Benutzer kann allerdings auch reauthentifiziert werden, indem sein Passwort neu angefordert wird.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert