Session Hijacking

Was ist Session Hijacking?

Session Hijacking ist ein Cyberangriff, bei der sich Cyberkriminelle unbefugten Zugriff auf die aktive Website oder Anwendungssitzung eines Benutzers verschaffen. Diese Angriffe nutzen Schwachstellen in der Web-Sitzungsverwaltung aus, die es dem Angreifer ermöglichen, sich als legitimer Benutzer auszugeben.

Im Wesentlichen geht es beim Session Hijacking darum, die Session-ID, ein eindeutiges Token, das einem Benutzer bei der Anmeldung zugewiesen wird, abzufangen oder zu erraten. Der Zugriff auf diese Kennung ermöglicht es dem Angreifer, die Identität des Benutzers innerhalb des Systems anzunehmen und möglicherweise auf sensible Informationen zuzugreifen, nicht autorisierte Transaktionen durchzuführen oder andere bösartige Aktionen auszuführen. 

Sitzungsübernahmeangriffe können schwerwiegende Folgen haben, darunter Datenschutzverletzungen, finanzielle Verluste und die Gefährdung der Privatsphäre der Benutzer. Sie stellen sowohl für Unternehmen als auch für Privatpersonen ein erhebliches Risiko dar, insbesondere in Szenarien mit sensiblen Daten wie Onlinebanking oder vertraulichen Unternehmensdateien.

Wichtige Punkte

  • Cyberkriminelle nutzen Session Hijacking, um sich unbefugten Zugriff auf die aktive Website oder Anwendungssitzung eines Benutzers zu verschaffen. 
  • Sie führen es durch, indem sie die Authentifizierung eines Benutzers auf einer Website oder in einer App abpassen. Sie können dann in die normalen Aktivitäten der Benutzer eingreifen und sich unbefugten Zugang zu sensiblen Informationen verschaffen, indem sie sich digital als die rechtmäßigen Benutzer ausgeben. 
  • Privatpersonen und Unternehmen sollten Session-Hijacking-Angriffe ernst nehmen, da sie zu weitreichenden Datenschutzverletzungen, finanziellen Verlusten und Rufschädigung führen können.

Was ist eine Sitzung?

In der IT wird eine Sitzung oder „Session“ als ein temporärer, interaktiver Informationsaustausch zwischen dem Browser eines Benutzers und einem Webserver definiert. Sie beginnt, wenn sich ein Benutzer auf einer Website oder Anwendung anmeldet, und endet, wenn er sich abmeldet oder seine Sitzung nach einer gewissen Zeit der Inaktivität automatisch beendet wird.

Sitzungen sind entscheidend für die Aufrechterhaltung des Zustands im zustandslosen HTTP-Protokoll. Sie ermöglichen es Websites, benutzerspezifische Informationen und Präferenzen über mehrere Seitenaufrufe hinweg zu speichern. Dabei werden individuelle Benutzererfahrungen, wie z. B. die Aufbewahrung von Artikeln in einem Warenkorb oder die Beibehaltung des Login-Status berücksichtigt.

Wenn eine Sitzung gestartet wird, generiert der Server in der Regel eine eindeutige Sitzungs-ID. Diese ID wird häufig auf der Client-Seite als Cookie gespeichert oder an URLs angehängt. Der Server verwendet diese ID, um den Benutzer mit seinen spezifischen serverseitigen Daten zu verknüpfen.

Sitzungen verbessern das Benutzererlebnis und ermöglichen komplexe Funktionen von Webanwendungen. Eine sichere Verwaltung ist jedoch wichtig, um verschiedene Cyberangriffe – wie auch das Session Hijacking – zu verhindern.

Wie Session Hijacking funktioniert

Wie bei vielen Cyberbedrohungen ist der beste Zeitpunkt, dem Session Hijacking Einhalt zu gebieten, bevor es beginnt. Dazu müssen wir verstehen, wie diese Angriffe ablaufen, damit wir ihre Signale so früh wie möglich erkennen können. Normalerweise läuft ein Session-Hijacking-Angriff folgendermaßen ab:

  • Erste Authentifizierung: Der legitime Benutzer gibt seine Zugangsdaten ein, um sich bei einer Website oder Anwendung anzumelden. Der Server überprüft diese Zugangsdaten und stellt eine neue Sitzungsverbindung für den Benutzer her.
  • Erzeugung einer Sitzungs-ID: Nach erfolgreicher Authentifizierung erstellt der Server eine eindeutige Sitzungskennung. Diese ID ist in der Regel eine lange, zufällige Zeichenfolge, die absichtlich so gestaltet ist, dass sie schwer zu erraten ist. Der Server sendet diese ID an den Browser des Nutzers, wo sie in der Regel als Cookie gespeichert wird.
  • Normale Benutzeraktivität: Der authentifizierte Benutzer interagiert mit der Website oder Anwendung. Jede Anfrage, die an den Server gestellt wird, enthält die Sitzungs-ID, damit der Server diese bestimmte Anfrage der authentifizierten Sitzung des Benutzers zuordnen und ihren Status erhalten kann.
  • Eingriff des Angreifers: Der Angreifer verwendet ausgeklügelte Methoden, um die Sitzungs-ID vorherzusagen oder abzufangen. Zu den von üblichen Methoden zählen unter anderem die Ausnutzung von Netzwerkschwachstellen, der Einsatz von Malware oder die Ausnutzung von Schwächen im Websitemanagement.
  • Erlangung der Sitzungs-ID: Der Angreifer erlangt erfolgreich eine gültige Sitzungs-ID über einen oder mehrere Angriffsvektoren. Dies ist durch das Abfangen in Echtzeit oder durch die Ausnutzung vorhersehbarer Muster bei der Erzeugung von Sitzungs-IDs möglich.
  • Identitätsmissbrauch: Der Angreifer erstellt Anfragen an den Server, die die gestohlene Sitzungs-ID enthalten. Aus der Sicht des Servers scheinen diese Anfragen von einem legitimen Benutzer zu stammen, da die Sitzungs-ID gültig ist.
  • Unbefugter Zugriff: Der Server verarbeitet die Anfragen des Angreifers so, als ob sie von einem legitimen Benutzer kämen. Dadurch erhält der Angreifer dieselben Zugriffsrechte und Privilegien wie der ursprüngliche Benutzer, wodurch vertrauliche Daten oder Funktionen gefährdet werden können.
  • Bösartige Aktivitäten: Mit vollem Zugriff auf die Sitzung des Benutzers kann der Angreifer verschiedene nicht autorisierte Aktionen ausführen. Dazu gehören beispielsweise das Anzeigen oder Ändern persönlicher Daten, das Auslösen von Finanztransaktionen oder die Verwendung des kompromittierten Kontos zum Starten weiterer Angriffe.
  • Sitzungsende: Die gekaperte Sitzung endet entweder, wenn sich der legitime Benutzer abmeldet (wodurch der Angreifer möglicherweise gesperrt wird), wenn die Sitzung aufgrund von Inaktivität auf natürliche Weise abläuft oder wenn der Angreifer seine bösartigen Aktivitäten beendet, um nicht entdeckt zu werden.

Arten von Session Hijacking

Nicht alle Session-Hijacking-Angriffe verlaufen gleich. Cyberkriminelle verfügen über ein ganzes Arsenal an Taktiken, um auf Benutzersitzungen zuzugreifen, je nach den Umständen oder ihren Zielen. Hier folgt ein Überblick über jede einzelne.

Cross Site Scripting (XSS)

Angreifer nutzen Schwachstellen in Web-Applikationen aus, um bösartige Skripte in Seiten einzuschleusen, die von Benutzern angezeigt werden. Sie können diese Skripte verwenden, um Sitzungs-IDs direkt aus dem Browser des Benutzers zu stehlen. XSS-Angriffe umgehen die Same-Origin-Policy und ermöglichen Angreifern den Zugriff auf vertrauliche Daten und die unbemerkte Übernahme von Benutzersitzungen, ohne den Server direkt zu kompromittieren.

Session-Fixierung

Angreifer legen eine gültige Sitzungs-ID fest und verleiten Benutzer dazu, sich damit zu authentifizieren. Dies geschieht oft durch das Versenden eines bösartigen Links, der eine vorher festgelegte Sitzungs-ID enthält. Sobald sich der Benutzer anmeldet, erhält der Angreifer Zugriff auf die authentifizierte Sitzung, ohne dass er Zugangsdaten stehlen oder Sitzungs-IDs erraten muss.

Session Sidejacking (Sitzungsschnüffeln)

Cyberkriminelle können den Netzwerkverkehr abfangen, um Sitzungscookies in ungesicherten WLAN-Netzwerken zu erfassen. Sie verwenden Paket-Sniffing-Tools, um Datenübertragungen zu überwachen und Sitzungs-IDs aus unverschlüsseltem Datenverkehr zu extrahieren. Diese Methode ist insbesondere dann wirkungsvoll, wenn lediglich die Login-Seite verschlüsselt ist. Alle Anfragen, die ein Benutzer auf nachfolgenden Seiten stellt, sind anfällig.

Man-in-the-Browser

Bei diesem Angriff infiziert Malware den Browser des Benutzers. Die Malware fängt Web-Transaktionen in Echtzeit ab und verändert sie, sodass Angreifer Sitzungsdaten manipulieren, Transaktionsdetails ändern oder nicht autorisierte Transaktionen erstellen können. Man-in-the-Browser-Angriffe können schwer zu entdecken sein, da die Anfragen vom Computer des Opfers ausgehen und den Webdiensten legitim erscheinen.

Vorhersehbare Sitzungstoken-IDs

Dieser Angriff nutzt schwache Algorithmen aus, die von Webservern zum Generieren von Sitzungs-IDs verwendet werden. Die Angreifer analysieren Muster in vorhandenen IDs, um zukünftige vorherzusagen. Sie können Schwachstellen wie Zeitstempel, fortlaufende Nummern oder schwache Zufallszahlengeneratoren ausnutzen. Sobald Cyberkriminelle das Muster entschlüsselt haben, können sie gültige Sitzungs-IDs erzeugen, um aktive Benutzersitzungen zu kapern, ohne Token abfangen oder stehlen zu müssen.

Die Auswirkungen von Session Hijacking

Session Hijacking kann sowohl für Einzelpersonen als auch für Unternehmen schwerwiegende Folgen haben. Hier sind fünf wichtige Auswirkungen erfolgreicher Session-Hijacking-Angriffe:

  • Datenschutzverletzung: Angreifer können auf sensible persönliche Daten oder Unternehmensdaten zugreifen, was möglicherweise zu Identitätsdiebstahl, finanziellem Betrug oder Unternehmensspionage führen kann.
  • Finanzieller Verlust: Hijacker können mit den Kontoangaben des Opfers nicht autorisierte Finanztransaktionen initiieren, Geld überweisen oder Einkäufe tätigen.
  • Rufschädigung: Unternehmen, die Opfer von Session Hijacking werden, erleiden erhebliche Rufschädigung, was zu einem Verlust des Kundenvertrauens und potenzieller Einnahmen führt.
  • Unberechtigter Systemzugriff: In Fällen, in denen Single Sign-On (SSO) implementiert ist, könnte eine gekaperte Sitzung den Angreifern Zugriff auf mehrere Systeme gewähren, was den potenziellen Schaden exponentiell erhöht.
  • Compliance-Verstöße: Je nach Branche und Art der kompromittierten Daten können Session-Hijacking-Vorfälle zu Verstößen gegen Datenschutzbestimmungen führen, die rechtliche Konsequenzen und erhebliche Geldstrafen oder Sanktionen nach sich ziehen.

Beispiele für Session Hijacking

Nachdem Sie nun wissen, wie Session-Hijacking-Angriffe „auf dem Papier“ aussehen könnten, schauen wir uns Beispiele aus der Praxis an. 

Zoom-Bombing

Während der COVID-19-Pandemie wurden Videokonferenzplattformen wie Zoom zum Ziel von Sitzungshijackern. Angreifer nutzten Sicherheitslücken in den Meeting-Einstellungen aus, um sich unerlaubten Zugriff auf private Videositzungen zu verschaffen. Manche Hijacker störten die Meetings, indem sie Obszönitäten riefen, anstößige Inhalte teilten oder unanständige Bilder zeigten.

Dieses Phänomen, das als „Zoom-Bombing“ bezeichnet wird, verdeutlichte die Bedeutung solider Security für Web-Applikationen in virtuellen Kommunikationstools. Zoom führte daraufhin verbesserte Datenschutzmaßnahmen ein, darunter Passwörter für Meetings und Warteräume, über die die Meeting-Veranstalter den Zugang der Teilnehmer besser kontrollieren können.

Slack

Im Jahr 2019 entdeckte ein Sicherheitsforscher eine kritische Schwachstelle in der Slack-Plattform. Dieser Fehler ermöglichte es Angreifern, Benutzer zu gefälschten Sitzungsumleitungen zu zwingen und so Sitzungscookies zu stehlen. Mit diesen gestohlenen Cookies konnten Angreifer unbefugten Zugriff auf alle Daten erhalten, die im Slack-Konto eines Benutzers geteilt werden, wodurch möglicherweise sensible Unternehmensinformationen kompromittiert werden können.

Das Sicherheitsteam von Slack reagierte rasch und behob die Schwachstelle innerhalb von 24 Stunden nach ihrer Entdeckung. Dies verdeutlichte, wie wichtig eine schnelle Reaktion auf Sicherheitsbedrohungen ist.

GitLab

Im Jahr 2017 identifizierte ein Sicherheitsforscher eine schwerwiegende Schwachstelle im Sitzungsmanagement von GitLab. Die Plattform legte die Sitzungs-Token der Benutzer direkt in URLs offen und verwendete persistente Token, die nie abliefen. Diese Kombination aus offener Exposition und nicht ablaufenden Token stellte ein erhebliches Sicherheitsrisiko dar. Angreifer konnten diese Token auf verschiedene Weise erhalten, einschließlich Brute-Force-Angriffen, und sie unbegrenzt für den Zugriff auf Benutzerkonten verwenden.

GitLab hat sich dieses Problems angenommen, indem es seine Methoden zur Verwendung und Speicherung von Token überarbeitet hat und die Wichtigkeit einer ordnungsgemäßen Token-Verwaltung in Web-Applikationen betont hat.

So erkennen und verhindern Sie Session Hijacking

Zwar entwickeln Cyberkriminelle immer raffiniertere Methoden, um diese Angriffe auszuführen, aber Unternehmen können diese Schritte befolgen, um Session Hijacking zu erkennen und zu verhindern:

1. Verwenden Sie HTTPS und HSTS

Durch die Implementierung von HTTPS auf einer gesamten Website wird der gesamte Datenverkehr zwischen dem Benutzer und dem Server verschlüsselt, was es für Angreifer extrem schwierig macht, Sitzungs-IDs abzufangen. HTTP Strict Transport Security (HSTS) zwingt Browser, immer HTTPS-Verbindungen zu verwenden und verhindert so Downgrade-Angriffe. Diese Verschlüsselung schützt vor Paket-Sniffing und Man-in-the-Browser-Angriffen und reduziert das Risiko eines Session Hijacking erheblich.

2. Sicheres Sitzungsmanagement verwenden

Generieren Sie lange, zufällige und komplexe Sitzungs-ID-Token mit kryptografisch sicheren Methoden. Koppeln Sie diese IDs mit entsprechenden Sitzungsablaufzeiten und generieren Sie Sitzungs-IDs nach wichtigen Ereignissen wie einer erfolgreichen Authentifizierung neu.

Die Überprüfung der IP-Adresse eingehender Anfragen anhand der mit der Sitzung verknüpften IP-Adresse, die Beendigung der Sitzung oder die Forderung nach zusätzlicher Authentifizierung bei plötzlichen Änderungen bieten eine weitere Schutzschicht. Diese Vorgehensweisen machen es Angreifern wesentlich schwerer, durch Erraten oder Erzwingen von Sitzungs-IDs in Systeme einzudringen.

3. HTTP-only- und Secure-Flags für Cookies aktivieren

Die Einstellung „HTTP-only“ verhindert, dass clientseitige Skripte auf Session-Cookies zugreifen können und schützt vor Cross-Site-Scripting-Angriffen. Die „Secure-Flag“ stellt sicher, dass Cookies nur über HTTPS-Verbindungen übertragen werden. Diese Maßnahmen verringern das Risiko des Diebstahls von Sitzungscookies durch gängige Angriffsvektoren erheblich.

4. Implementieren Sie die Multi-Faktor-Authentifizierung (MFA)

MFA fügt eine zusätzliche Sicherheitsebene hinzu, indem zusätzliche Authentifizierungsmethoden als nur Passwörter verlangt werden. Selbst wenn es einem Angreifer gelingt, sich Zugriff auf eine Sitzung zu verschaffen, bräuchte er immer noch den zweiten Authentifizierungsfaktor, um vollen Zugriff zu erhalten. Dies erhöht die Sicherheit erheblich, insbesondere für sensible Vorgänge oder kritische Daten.

5. Benutzer schulen und clientseitigen Schutz implementieren

Informieren Sie die Benutzer über die Gefahren öffentlicher WLAN-Netze, die Bedeutung des Abmeldens nach Sitzungen und wie man Angriffsversuche erkennt. Fordern Sie Ihre Mitarbeiter zur Verwendung von VPNs auf, wenn sie über öffentliche Netzwerke auf das Unternehmenssystem zugreifen.

Implementieren Sie auf der Clientseite Funktionen wie automatische Timeouts von Sitzungen und die Option zum Anzeigen und Beenden aktiver Sitzungen. Diese Maßnahmen ermöglichen es den Benutzern, sich selbst zu schützen, und bieten zusätzliche Sicherheiten gegen Session-Hijacking-Versuche.

Achten Sie außerdem darauf, dass Ihre Systeme und Software immer auf dem neuesten Stand sind, da Updates viele Schwachstellen für Session Hijacking schließen.

 

Wie Barracuda Sie unterstützen kann

Session-Hijacking-Angriffe können erheblichen Schaden anrichten, aber man kann ihnen Einhalt gebieten. Mit der richtigen Schulung und den richtigen Tools können Unternehmen und Privatpersonen ihre wertvollsten Daten vor den neugierigen Blicken Cyberkrimineller schützen.

Natürlich kann die Zusammenarbeit mit Cybersecurity-Experten hilfreich sein. Barracuda bietet Web Application Protection, das die Sicherheit der Benutzer über Benutzernamen und Passwörter hinaus gewährleisten kann. Kontaktieren Sie noch heute unser Team und testen Sie unseren Anwendungsschutz kostenlos, um zu erfahren, was er für Sie und Ihre Kunden tun kann.

Support-Anfrage an Barracuda