Session Hijacking - Im Namen der ehrlichen Nutzer

0 | 10271 Aufrufe
Sie können diese Wikiseite nach der Anmeldung auf Webmasterpro bearbeiten. Helfen Sie mit und verbessern Sie "Session Hijacking - Im Namen der ehrlichen Nutzer" mit Ihrem Wissen!

Anzeige Hier werben

Verwandre Angriffe:

Kurze Beschreibung:

Entwendung der Session-ID eines Nutzers und Ausnutzung deren für den unberechtigten Zugang in bestimmte Bereiche der Applikation. Wiederum wie bei Session Fixation gelten die geklaute Session-ID, die der Täter benutzt und die von Opfer als dieselbe für den Server.

Folgen:

Wie bei Session Fixation bekommt der Angreifer den Zugang in den personalen Nutzerbereich der Applikation und kann somit diverse Aktionen wie Datenänderungen und weitere anstellen.

Funktionsweise:

Die Entwendung von der Session-ID kann u.a. durch passives "Abhören" erfolgen. Der Angreifer muss aber entweder Zugang zum Netzwerkkabel bzw. zum WLAN des Opfers haben oder z.B. die Kommunikation Nutzer-Server über sich als Zwischenstelle umleiten können. Die Session-IDs werden bei vielen Anwendungen im GET- oder POST-Feld oder auch über Cookies bei der HTTP-Anfrage an den Server gesendet. Ist es möglich, diese auszulesen, kann die Session-ID ohne weiteres verwendet werden. Auch XSS-Atacken können als Mittel verwendet werden, um an Session-ID ran zu kommen.

 
JavaScript
1
<script>alert(document.cookie)</script>

Gegenmaßnahmen:

Um gegen Session Hijacking vorgehen zu können sind folgende Maßnahmen möglich:

  • Verschlüsselte Übertragung der Daten zum Server über HTTPS-Protokol. Bevor der Angreifer die Session-ID verwenden kann, muss er die Verschlüsselung brechen, was unter Umständen sehr aufwendig bis unmöglich sein kann.
  • Es sollten Schutzmaßnahmen gegen Cross-Site Scripting umgesetzt werden. Das mindert die Gefahr, dass der JavaScript Code in die Seite eingeschleust und z.B. Cookies ausgelesen werden, die die Session-ID enthalten.
 
PHP
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
<?php
if (isset($_POST['comment']))
{
    $cleanedComment = htmlspecialchars($_POST['comment']);
    $this->writeComment($cleanedComment);
}
else
{
    /* ... */
}
?>
  • Es sollen keine Session-IDs in der URL stehen, denn diese können dann aus den Logfiles des Servers ausgelesen werden, falls der Angreifer Zugriff auf diese hat.

Fazit:

Session Hijacking ist ein Angriff, der dieselben Folgen und sehr ähnliche Prinzipien wie Session Fixation hat, aber teilweise einen anderen Weg geht, um an nötige Daten zu gelangen.

zurück zur Übersicht Web-Sicherheit


Wikiseite bearbeiten

Diese Seite kann von jedem registrierten Benutzer bearbeitet werden. Bisher haben 3 Personen an der Seite "Session Hijacking - Im Namen der ehrlichen Nutzer" mitgewirkt.

Sie haben einen Fehler entdeckt oder möchten etwas ergänzen? Dann können Sie nach der Anmeldung "Session Hijacking - Im Namen der ehrlichen Nutzer" hier bearbeiten.

Mitarbeiter