
Les codeurs conquièrent la sécurité : série Share & Learn - Faiblesses de la gestion des sessions
Sie navigieren zu einer Website und melden sich an. Wie gewohnt füllen Sie Ihren Warenkorb mit Produkten, die Sie kaufen möchten. Dann, schwupps - rutscht Ihnen die Hand ab und Sie schließen den Browser-Tab. Nach einer kleinen Panik geben Sie die URL der Seite wieder in den Browser ein und drücken die "Enter"-Taste. Sie werden zurück auf die Seite gebracht, sind eingeloggt und alle Artikel befinden sich noch im Warenkorb. Uff.
Woher wusste die Website, wer Sie waren, ohne sich erneut zu authentifizieren? Sie hat Sie identifiziert, weil sie Sitzungen verwendet hat. Sitzungen sind der Schlüssel zu einem guten Benutzererlebnis bei der Nutzung des Internets. Die falsche Verwaltung von Sitzungen kann jedoch zu Sicherheitslücken führen, die Angreifer ausnutzen können.
Lassen Sie uns nun überprüfen, was Sitzungsverwaltung bedeutet, wie eine schwache Sitzungsverwaltung Ihnen schaden kann und was Sie tun können, um Sitzungen richtig zu verwalten.
Schwachstellen im Session Management verstehen
Eine Sitzung bezieht sich auf einen auf dem Server gespeicherten Wert, der für einen einzelnen Benutzer der Anwendung spezifisch ist. Dies ist aus zwei Gründen notwendig: Erstens: HTTP ist ein zustandsloses Protokoll. Jede Anfrage ist separat und hat keine Kenntnis von Anfragen, die vor oder nach ihr gekommen sind. Eine Sitzung hilft dem Server zu verfolgen, wer die Anfrage gesendet hat. Andernfalls müssten Sie sich jedes Mal anmelden, wenn Sie auf eine Schaltfläche oder einen Link klicken.
Der zweite Grund für Sitzungen ist die Autorisierung des Benutzers. Die Sitzungskennung kann verwendet werden, um einen bestimmten Benutzer mit bestimmten Rechten innerhalb des Systems zu erkennen. Die Anwendung weiß dann, wer die Person ist und was sie tun darf.
Eine Sitzung besteht aus zwei Komponenten. Ein Datenspeicher auf der Serverseite speichert einen Sitzungsbezeichner und ordnet ihn Informationen über den Benutzer zu, wie z. B. seine Benutzerkennung oder Warenkorbinformationen. Derselbe Sitzungsbezeichner wird in einem Cookie an den Browser gesendet. Die Cookies werden vom Browser auf dem System des Benutzers gespeichert. Der Client übergibt das Cookie bei jeder Anfrage, so dass der Server weiß, dass diese Anfrage von demselben Benutzer stammt. Die meisten Anwendungen verwenden Sitzungen, um Benutzer sowohl vor als auch nach der Authentifizierung zu verfolgen.
Eine ordnungsgemäße Sitzungsverwaltung ist für die Sicherheit einer Anwendung unerlässlich. Eine gültige Sitzungs-ID hat den gleichen Vertrauensgrad wie ein Benutzername/Passwort oder sogar ein Second-Factor-Authentifizierungstoken.
Warum schlechtes Session Management gefährlich ist
Schlechte Sitzungsverwaltung kann zu einer kompletten Kontoübernahme führen. Das bedeutet, dass Kundendaten gestohlen oder Produkte in betrügerischer Absicht gekauft werden können. Es gibt mehrere Möglichkeiten für Angreifer, eine gültige Sitzungs-ID zu erhalten.
Ein Sitzungsfixierungsangriff tritt auf, wenn Sitzungen zu wichtigen Zeitpunkten nicht geändert werden, z. B. wenn sich ein Benutzer am System anmeldet, und wenn Sitzungskennungen über die URL gesetzt werden können. Das Setzen von Sitzungskennungen auf diese Weise kann verwendet werden, um Benutzer über verschiedene Anwendungen hinweg angemeldet zu halten, die die gleiche Authentifizierungsquelle verwenden. In diesem Fall kann ein Angreifer eine Website aufrufen und eine Sitzungskennung erlangen. Der Angreifer sendet dann eine URL an ein ahnungsloses Opfer per E-Mail mit der Sitzungs-ID in der URL. Das Opfer klickt auf die URL in der E-Mail und meldet sich bei der Website an. Wenn die Sitzungs-ID bei der Anmeldung nicht rotiert wird, verfügt der Angreifer nun über eine gültige, authentifizierte Sitzungs-ID. Dies ermöglicht eine vollständige Kontoübernahme.
Ein weiterer Angriff auf eine schlechte Sitzungsverwaltung ist ein Brute-Force-Rate-Angriff. Wenn Entwickler versuchen, ihre eigenen Sitzungsverwaltungssysteme zu erstellen, verwenden sie oft Sitzungs-IDs, die ziemlich einfach zu erraten sind. Diese könnten eine Sequenz (1, 2, 3) oder eine Art vorhersehbares Muster sein. Der Angreifer rät einfach so lange Sitzungs-IDs, bis er eine gültige entdeckt hat. Dies führt auch zu einer Kontoübernahme.
Sitzungen, die nach Ablauf einer bestimmten Zeit nicht automatisch ungültig gemacht werden, können ausgenutzt werden, um Benutzer anzugreifen. Ein erfolgreicher Cross-Site-Request-Forgery-Angriff hängt von Sitzungen ab, die noch gültig sind, nachdem der Benutzer die Website verlassen hat. Angenommen, ein Angreifer platziert einen Iframe oder ein Bild auf einer vom Benutzer besuchten Website. Das Attribut "src" (Quelle) wird auf die URL der verwundbaren Site gesetzt und führt eine Aktion im Namen des Benutzers aus. Zum Beispiel könnte eine verwundbare Banking-Anwendung dazu gebracht werden, ohne die Erlaubnis des Benutzers Geld auf das Konto eines Angreifers zu überweisen.
Sitzungsmanagement kann knifflig sein, und Schwächen können verheerend sein. Es ist jedoch ein bekanntes Problem und es kann gelöst werden.
Unsicheres Sitzungsmanagement besiegen
Die Sitzungsverwaltung ist ein Kernstück einer jeden Webanwendung. Daher verfügen viele Webentwicklungs-Frameworks über eine eingebaute Session-Management-Funktionalität. Diese Systeme wurden von Experten untersucht, um Probleme zu finden und auszumerzen. Verwenden Sie sie.
Einige allgemeine Eigenschaften einer guten Sitzungsverwaltung sind:
Generierung zufälliger Sitzungs-IDs, die Angreifer nicht erraten können
Sitzungen werden ungültig, wenn sich ein Benutzer abmeldet
Sitzungen werden nach Ablauf einer bestimmten Zeit automatisch ungültig gemacht
Sitzungs-IDs werden nach der Anmeldung des Benutzers geändert
Sitzungs-IDs, die mindestens 128 Bit lang sind, um Brute-Force-Angriffe zu verhindern
Web-Frameworks wie Spring, ASP.NET Core, Rails und Django verfügen über diese Eigenschaften und sollten in diesem Fall aufgrund ihrer höheren Sicherheitsstandards verwendet werden.
Unterm Strich: Erstellen Sie Ihr eigenes Sitzungsmanagementsystem nicht von Grund auf neu.
Sobald die Sitzungs-IDs erstellt sind, müssen sie geschützt werden. Setzen Sie die Flags "Secure" und "HttpOnly" bei Sitzungscookies auf "true". Dadurch wird sichergestellt, dass ihr Wert nicht mit JavaScript abgerufen werden kann und der Browser das Cookie nur über HTTPS sendet, wodurch Angreifer daran gehindert werden, die Sitzung eines Benutzers während der Übertragung zu stehlen.
Sichern Sie Ihre Sitzungen
Sehen Sie sichunsere kostenlosen Lernressourcen an, um mehr über sicheres Sitzungsmanagement zu erfahren. Wenn Sie lernen, wie Sie Ihre Sitzungen sichern, können Sie die Übernahme von Benutzerkonten, Rufschädigung und Umsatzeinbußen aufgrund von Sicherheitsverletzungen verhindern. Sichern Sie Ihre Sitzungen und schützen Sie Ihre Benutzer.


Les sessions sont essentielles à une bonne expérience utilisateur lors de l'utilisation du Web. Cependant, une gestion incorrecte des sessions peut entraîner des failles de sécurité que les attaquants peuvent exploiter.
Jaap Karan Singh est un évangéliste du codage sécurisé, Chief Singh et cofondateur de Secure Code Warrior.

Secure Code Warrior Ihr Unternehmen dabei, den Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie für die Anwendungssicherheit verantwortlich sind, Entwickler, IT-Sicherheitsbeauftragter oder in einer anderen Funktion im Bereich Sicherheit tätig sind – wir können Ihrem Unternehmen dabei helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Demo buchenJaap Karan Singh est un évangéliste du codage sécurisé, Chief Singh et cofondateur de Secure Code Warrior.


Sie navigieren zu einer Website und melden sich an. Wie gewohnt füllen Sie Ihren Warenkorb mit Produkten, die Sie kaufen möchten. Dann, schwupps - rutscht Ihnen die Hand ab und Sie schließen den Browser-Tab. Nach einer kleinen Panik geben Sie die URL der Seite wieder in den Browser ein und drücken die "Enter"-Taste. Sie werden zurück auf die Seite gebracht, sind eingeloggt und alle Artikel befinden sich noch im Warenkorb. Uff.
Woher wusste die Website, wer Sie waren, ohne sich erneut zu authentifizieren? Sie hat Sie identifiziert, weil sie Sitzungen verwendet hat. Sitzungen sind der Schlüssel zu einem guten Benutzererlebnis bei der Nutzung des Internets. Die falsche Verwaltung von Sitzungen kann jedoch zu Sicherheitslücken führen, die Angreifer ausnutzen können.
Lassen Sie uns nun überprüfen, was Sitzungsverwaltung bedeutet, wie eine schwache Sitzungsverwaltung Ihnen schaden kann und was Sie tun können, um Sitzungen richtig zu verwalten.
Schwachstellen im Session Management verstehen
Eine Sitzung bezieht sich auf einen auf dem Server gespeicherten Wert, der für einen einzelnen Benutzer der Anwendung spezifisch ist. Dies ist aus zwei Gründen notwendig: Erstens: HTTP ist ein zustandsloses Protokoll. Jede Anfrage ist separat und hat keine Kenntnis von Anfragen, die vor oder nach ihr gekommen sind. Eine Sitzung hilft dem Server zu verfolgen, wer die Anfrage gesendet hat. Andernfalls müssten Sie sich jedes Mal anmelden, wenn Sie auf eine Schaltfläche oder einen Link klicken.
Der zweite Grund für Sitzungen ist die Autorisierung des Benutzers. Die Sitzungskennung kann verwendet werden, um einen bestimmten Benutzer mit bestimmten Rechten innerhalb des Systems zu erkennen. Die Anwendung weiß dann, wer die Person ist und was sie tun darf.
Eine Sitzung besteht aus zwei Komponenten. Ein Datenspeicher auf der Serverseite speichert einen Sitzungsbezeichner und ordnet ihn Informationen über den Benutzer zu, wie z. B. seine Benutzerkennung oder Warenkorbinformationen. Derselbe Sitzungsbezeichner wird in einem Cookie an den Browser gesendet. Die Cookies werden vom Browser auf dem System des Benutzers gespeichert. Der Client übergibt das Cookie bei jeder Anfrage, so dass der Server weiß, dass diese Anfrage von demselben Benutzer stammt. Die meisten Anwendungen verwenden Sitzungen, um Benutzer sowohl vor als auch nach der Authentifizierung zu verfolgen.
Eine ordnungsgemäße Sitzungsverwaltung ist für die Sicherheit einer Anwendung unerlässlich. Eine gültige Sitzungs-ID hat den gleichen Vertrauensgrad wie ein Benutzername/Passwort oder sogar ein Second-Factor-Authentifizierungstoken.
Warum schlechtes Session Management gefährlich ist
Schlechte Sitzungsverwaltung kann zu einer kompletten Kontoübernahme führen. Das bedeutet, dass Kundendaten gestohlen oder Produkte in betrügerischer Absicht gekauft werden können. Es gibt mehrere Möglichkeiten für Angreifer, eine gültige Sitzungs-ID zu erhalten.
Ein Sitzungsfixierungsangriff tritt auf, wenn Sitzungen zu wichtigen Zeitpunkten nicht geändert werden, z. B. wenn sich ein Benutzer am System anmeldet, und wenn Sitzungskennungen über die URL gesetzt werden können. Das Setzen von Sitzungskennungen auf diese Weise kann verwendet werden, um Benutzer über verschiedene Anwendungen hinweg angemeldet zu halten, die die gleiche Authentifizierungsquelle verwenden. In diesem Fall kann ein Angreifer eine Website aufrufen und eine Sitzungskennung erlangen. Der Angreifer sendet dann eine URL an ein ahnungsloses Opfer per E-Mail mit der Sitzungs-ID in der URL. Das Opfer klickt auf die URL in der E-Mail und meldet sich bei der Website an. Wenn die Sitzungs-ID bei der Anmeldung nicht rotiert wird, verfügt der Angreifer nun über eine gültige, authentifizierte Sitzungs-ID. Dies ermöglicht eine vollständige Kontoübernahme.
Ein weiterer Angriff auf eine schlechte Sitzungsverwaltung ist ein Brute-Force-Rate-Angriff. Wenn Entwickler versuchen, ihre eigenen Sitzungsverwaltungssysteme zu erstellen, verwenden sie oft Sitzungs-IDs, die ziemlich einfach zu erraten sind. Diese könnten eine Sequenz (1, 2, 3) oder eine Art vorhersehbares Muster sein. Der Angreifer rät einfach so lange Sitzungs-IDs, bis er eine gültige entdeckt hat. Dies führt auch zu einer Kontoübernahme.
Sitzungen, die nach Ablauf einer bestimmten Zeit nicht automatisch ungültig gemacht werden, können ausgenutzt werden, um Benutzer anzugreifen. Ein erfolgreicher Cross-Site-Request-Forgery-Angriff hängt von Sitzungen ab, die noch gültig sind, nachdem der Benutzer die Website verlassen hat. Angenommen, ein Angreifer platziert einen Iframe oder ein Bild auf einer vom Benutzer besuchten Website. Das Attribut "src" (Quelle) wird auf die URL der verwundbaren Site gesetzt und führt eine Aktion im Namen des Benutzers aus. Zum Beispiel könnte eine verwundbare Banking-Anwendung dazu gebracht werden, ohne die Erlaubnis des Benutzers Geld auf das Konto eines Angreifers zu überweisen.
Sitzungsmanagement kann knifflig sein, und Schwächen können verheerend sein. Es ist jedoch ein bekanntes Problem und es kann gelöst werden.
Unsicheres Sitzungsmanagement besiegen
Die Sitzungsverwaltung ist ein Kernstück einer jeden Webanwendung. Daher verfügen viele Webentwicklungs-Frameworks über eine eingebaute Session-Management-Funktionalität. Diese Systeme wurden von Experten untersucht, um Probleme zu finden und auszumerzen. Verwenden Sie sie.
Einige allgemeine Eigenschaften einer guten Sitzungsverwaltung sind:
Generierung zufälliger Sitzungs-IDs, die Angreifer nicht erraten können
Sitzungen werden ungültig, wenn sich ein Benutzer abmeldet
Sitzungen werden nach Ablauf einer bestimmten Zeit automatisch ungültig gemacht
Sitzungs-IDs werden nach der Anmeldung des Benutzers geändert
Sitzungs-IDs, die mindestens 128 Bit lang sind, um Brute-Force-Angriffe zu verhindern
Web-Frameworks wie Spring, ASP.NET Core, Rails und Django verfügen über diese Eigenschaften und sollten in diesem Fall aufgrund ihrer höheren Sicherheitsstandards verwendet werden.
Unterm Strich: Erstellen Sie Ihr eigenes Sitzungsmanagementsystem nicht von Grund auf neu.
Sobald die Sitzungs-IDs erstellt sind, müssen sie geschützt werden. Setzen Sie die Flags "Secure" und "HttpOnly" bei Sitzungscookies auf "true". Dadurch wird sichergestellt, dass ihr Wert nicht mit JavaScript abgerufen werden kann und der Browser das Cookie nur über HTTPS sendet, wodurch Angreifer daran gehindert werden, die Sitzung eines Benutzers während der Übertragung zu stehlen.
Sichern Sie Ihre Sitzungen
Sehen Sie sichunsere kostenlosen Lernressourcen an, um mehr über sicheres Sitzungsmanagement zu erfahren. Wenn Sie lernen, wie Sie Ihre Sitzungen sichern, können Sie die Übernahme von Benutzerkonten, Rufschädigung und Umsatzeinbußen aufgrund von Sicherheitsverletzungen verhindern. Sichern Sie Ihre Sitzungen und schützen Sie Ihre Benutzer.

Sie navigieren zu einer Website und melden sich an. Wie gewohnt füllen Sie Ihren Warenkorb mit Produkten, die Sie kaufen möchten. Dann, schwupps - rutscht Ihnen die Hand ab und Sie schließen den Browser-Tab. Nach einer kleinen Panik geben Sie die URL der Seite wieder in den Browser ein und drücken die "Enter"-Taste. Sie werden zurück auf die Seite gebracht, sind eingeloggt und alle Artikel befinden sich noch im Warenkorb. Uff.
Woher wusste die Website, wer Sie waren, ohne sich erneut zu authentifizieren? Sie hat Sie identifiziert, weil sie Sitzungen verwendet hat. Sitzungen sind der Schlüssel zu einem guten Benutzererlebnis bei der Nutzung des Internets. Die falsche Verwaltung von Sitzungen kann jedoch zu Sicherheitslücken führen, die Angreifer ausnutzen können.
Lassen Sie uns nun überprüfen, was Sitzungsverwaltung bedeutet, wie eine schwache Sitzungsverwaltung Ihnen schaden kann und was Sie tun können, um Sitzungen richtig zu verwalten.
Schwachstellen im Session Management verstehen
Eine Sitzung bezieht sich auf einen auf dem Server gespeicherten Wert, der für einen einzelnen Benutzer der Anwendung spezifisch ist. Dies ist aus zwei Gründen notwendig: Erstens: HTTP ist ein zustandsloses Protokoll. Jede Anfrage ist separat und hat keine Kenntnis von Anfragen, die vor oder nach ihr gekommen sind. Eine Sitzung hilft dem Server zu verfolgen, wer die Anfrage gesendet hat. Andernfalls müssten Sie sich jedes Mal anmelden, wenn Sie auf eine Schaltfläche oder einen Link klicken.
Der zweite Grund für Sitzungen ist die Autorisierung des Benutzers. Die Sitzungskennung kann verwendet werden, um einen bestimmten Benutzer mit bestimmten Rechten innerhalb des Systems zu erkennen. Die Anwendung weiß dann, wer die Person ist und was sie tun darf.
Eine Sitzung besteht aus zwei Komponenten. Ein Datenspeicher auf der Serverseite speichert einen Sitzungsbezeichner und ordnet ihn Informationen über den Benutzer zu, wie z. B. seine Benutzerkennung oder Warenkorbinformationen. Derselbe Sitzungsbezeichner wird in einem Cookie an den Browser gesendet. Die Cookies werden vom Browser auf dem System des Benutzers gespeichert. Der Client übergibt das Cookie bei jeder Anfrage, so dass der Server weiß, dass diese Anfrage von demselben Benutzer stammt. Die meisten Anwendungen verwenden Sitzungen, um Benutzer sowohl vor als auch nach der Authentifizierung zu verfolgen.
Eine ordnungsgemäße Sitzungsverwaltung ist für die Sicherheit einer Anwendung unerlässlich. Eine gültige Sitzungs-ID hat den gleichen Vertrauensgrad wie ein Benutzername/Passwort oder sogar ein Second-Factor-Authentifizierungstoken.
Warum schlechtes Session Management gefährlich ist
Schlechte Sitzungsverwaltung kann zu einer kompletten Kontoübernahme führen. Das bedeutet, dass Kundendaten gestohlen oder Produkte in betrügerischer Absicht gekauft werden können. Es gibt mehrere Möglichkeiten für Angreifer, eine gültige Sitzungs-ID zu erhalten.
Ein Sitzungsfixierungsangriff tritt auf, wenn Sitzungen zu wichtigen Zeitpunkten nicht geändert werden, z. B. wenn sich ein Benutzer am System anmeldet, und wenn Sitzungskennungen über die URL gesetzt werden können. Das Setzen von Sitzungskennungen auf diese Weise kann verwendet werden, um Benutzer über verschiedene Anwendungen hinweg angemeldet zu halten, die die gleiche Authentifizierungsquelle verwenden. In diesem Fall kann ein Angreifer eine Website aufrufen und eine Sitzungskennung erlangen. Der Angreifer sendet dann eine URL an ein ahnungsloses Opfer per E-Mail mit der Sitzungs-ID in der URL. Das Opfer klickt auf die URL in der E-Mail und meldet sich bei der Website an. Wenn die Sitzungs-ID bei der Anmeldung nicht rotiert wird, verfügt der Angreifer nun über eine gültige, authentifizierte Sitzungs-ID. Dies ermöglicht eine vollständige Kontoübernahme.
Ein weiterer Angriff auf eine schlechte Sitzungsverwaltung ist ein Brute-Force-Rate-Angriff. Wenn Entwickler versuchen, ihre eigenen Sitzungsverwaltungssysteme zu erstellen, verwenden sie oft Sitzungs-IDs, die ziemlich einfach zu erraten sind. Diese könnten eine Sequenz (1, 2, 3) oder eine Art vorhersehbares Muster sein. Der Angreifer rät einfach so lange Sitzungs-IDs, bis er eine gültige entdeckt hat. Dies führt auch zu einer Kontoübernahme.
Sitzungen, die nach Ablauf einer bestimmten Zeit nicht automatisch ungültig gemacht werden, können ausgenutzt werden, um Benutzer anzugreifen. Ein erfolgreicher Cross-Site-Request-Forgery-Angriff hängt von Sitzungen ab, die noch gültig sind, nachdem der Benutzer die Website verlassen hat. Angenommen, ein Angreifer platziert einen Iframe oder ein Bild auf einer vom Benutzer besuchten Website. Das Attribut "src" (Quelle) wird auf die URL der verwundbaren Site gesetzt und führt eine Aktion im Namen des Benutzers aus. Zum Beispiel könnte eine verwundbare Banking-Anwendung dazu gebracht werden, ohne die Erlaubnis des Benutzers Geld auf das Konto eines Angreifers zu überweisen.
Sitzungsmanagement kann knifflig sein, und Schwächen können verheerend sein. Es ist jedoch ein bekanntes Problem und es kann gelöst werden.
Unsicheres Sitzungsmanagement besiegen
Die Sitzungsverwaltung ist ein Kernstück einer jeden Webanwendung. Daher verfügen viele Webentwicklungs-Frameworks über eine eingebaute Session-Management-Funktionalität. Diese Systeme wurden von Experten untersucht, um Probleme zu finden und auszumerzen. Verwenden Sie sie.
Einige allgemeine Eigenschaften einer guten Sitzungsverwaltung sind:
Generierung zufälliger Sitzungs-IDs, die Angreifer nicht erraten können
Sitzungen werden ungültig, wenn sich ein Benutzer abmeldet
Sitzungen werden nach Ablauf einer bestimmten Zeit automatisch ungültig gemacht
Sitzungs-IDs werden nach der Anmeldung des Benutzers geändert
Sitzungs-IDs, die mindestens 128 Bit lang sind, um Brute-Force-Angriffe zu verhindern
Web-Frameworks wie Spring, ASP.NET Core, Rails und Django verfügen über diese Eigenschaften und sollten in diesem Fall aufgrund ihrer höheren Sicherheitsstandards verwendet werden.
Unterm Strich: Erstellen Sie Ihr eigenes Sitzungsmanagementsystem nicht von Grund auf neu.
Sobald die Sitzungs-IDs erstellt sind, müssen sie geschützt werden. Setzen Sie die Flags "Secure" und "HttpOnly" bei Sitzungscookies auf "true". Dadurch wird sichergestellt, dass ihr Wert nicht mit JavaScript abgerufen werden kann und der Browser das Cookie nur über HTTPS sendet, wodurch Angreifer daran gehindert werden, die Sitzung eines Benutzers während der Übertragung zu stehlen.
Sichern Sie Ihre Sitzungen
Sehen Sie sichunsere kostenlosen Lernressourcen an, um mehr über sicheres Sitzungsmanagement zu erfahren. Wenn Sie lernen, wie Sie Ihre Sitzungen sichern, können Sie die Übernahme von Benutzerkonten, Rufschädigung und Umsatzeinbußen aufgrund von Sicherheitsverletzungen verhindern. Sichern Sie Ihre Sitzungen und schützen Sie Ihre Benutzer.

Klicken Sie auf den untenstehenden Link und laden Sie das PDF dieser Ressource herunter.
Secure Code Warrior Ihr Unternehmen dabei, den Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie für die Anwendungssicherheit verantwortlich sind, Entwickler, IT-Sicherheitsbeauftragter oder in einer anderen Funktion im Bereich Sicherheit tätig sind – wir können Ihrem Unternehmen dabei helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Bericht anzeigenDemo buchenJaap Karan Singh est un évangéliste du codage sécurisé, Chief Singh et cofondateur de Secure Code Warrior.
Sie navigieren zu einer Website und melden sich an. Wie gewohnt füllen Sie Ihren Warenkorb mit Produkten, die Sie kaufen möchten. Dann, schwupps - rutscht Ihnen die Hand ab und Sie schließen den Browser-Tab. Nach einer kleinen Panik geben Sie die URL der Seite wieder in den Browser ein und drücken die "Enter"-Taste. Sie werden zurück auf die Seite gebracht, sind eingeloggt und alle Artikel befinden sich noch im Warenkorb. Uff.
Woher wusste die Website, wer Sie waren, ohne sich erneut zu authentifizieren? Sie hat Sie identifiziert, weil sie Sitzungen verwendet hat. Sitzungen sind der Schlüssel zu einem guten Benutzererlebnis bei der Nutzung des Internets. Die falsche Verwaltung von Sitzungen kann jedoch zu Sicherheitslücken führen, die Angreifer ausnutzen können.
Lassen Sie uns nun überprüfen, was Sitzungsverwaltung bedeutet, wie eine schwache Sitzungsverwaltung Ihnen schaden kann und was Sie tun können, um Sitzungen richtig zu verwalten.
Schwachstellen im Session Management verstehen
Eine Sitzung bezieht sich auf einen auf dem Server gespeicherten Wert, der für einen einzelnen Benutzer der Anwendung spezifisch ist. Dies ist aus zwei Gründen notwendig: Erstens: HTTP ist ein zustandsloses Protokoll. Jede Anfrage ist separat und hat keine Kenntnis von Anfragen, die vor oder nach ihr gekommen sind. Eine Sitzung hilft dem Server zu verfolgen, wer die Anfrage gesendet hat. Andernfalls müssten Sie sich jedes Mal anmelden, wenn Sie auf eine Schaltfläche oder einen Link klicken.
Der zweite Grund für Sitzungen ist die Autorisierung des Benutzers. Die Sitzungskennung kann verwendet werden, um einen bestimmten Benutzer mit bestimmten Rechten innerhalb des Systems zu erkennen. Die Anwendung weiß dann, wer die Person ist und was sie tun darf.
Eine Sitzung besteht aus zwei Komponenten. Ein Datenspeicher auf der Serverseite speichert einen Sitzungsbezeichner und ordnet ihn Informationen über den Benutzer zu, wie z. B. seine Benutzerkennung oder Warenkorbinformationen. Derselbe Sitzungsbezeichner wird in einem Cookie an den Browser gesendet. Die Cookies werden vom Browser auf dem System des Benutzers gespeichert. Der Client übergibt das Cookie bei jeder Anfrage, so dass der Server weiß, dass diese Anfrage von demselben Benutzer stammt. Die meisten Anwendungen verwenden Sitzungen, um Benutzer sowohl vor als auch nach der Authentifizierung zu verfolgen.
Eine ordnungsgemäße Sitzungsverwaltung ist für die Sicherheit einer Anwendung unerlässlich. Eine gültige Sitzungs-ID hat den gleichen Vertrauensgrad wie ein Benutzername/Passwort oder sogar ein Second-Factor-Authentifizierungstoken.
Warum schlechtes Session Management gefährlich ist
Schlechte Sitzungsverwaltung kann zu einer kompletten Kontoübernahme führen. Das bedeutet, dass Kundendaten gestohlen oder Produkte in betrügerischer Absicht gekauft werden können. Es gibt mehrere Möglichkeiten für Angreifer, eine gültige Sitzungs-ID zu erhalten.
Ein Sitzungsfixierungsangriff tritt auf, wenn Sitzungen zu wichtigen Zeitpunkten nicht geändert werden, z. B. wenn sich ein Benutzer am System anmeldet, und wenn Sitzungskennungen über die URL gesetzt werden können. Das Setzen von Sitzungskennungen auf diese Weise kann verwendet werden, um Benutzer über verschiedene Anwendungen hinweg angemeldet zu halten, die die gleiche Authentifizierungsquelle verwenden. In diesem Fall kann ein Angreifer eine Website aufrufen und eine Sitzungskennung erlangen. Der Angreifer sendet dann eine URL an ein ahnungsloses Opfer per E-Mail mit der Sitzungs-ID in der URL. Das Opfer klickt auf die URL in der E-Mail und meldet sich bei der Website an. Wenn die Sitzungs-ID bei der Anmeldung nicht rotiert wird, verfügt der Angreifer nun über eine gültige, authentifizierte Sitzungs-ID. Dies ermöglicht eine vollständige Kontoübernahme.
Ein weiterer Angriff auf eine schlechte Sitzungsverwaltung ist ein Brute-Force-Rate-Angriff. Wenn Entwickler versuchen, ihre eigenen Sitzungsverwaltungssysteme zu erstellen, verwenden sie oft Sitzungs-IDs, die ziemlich einfach zu erraten sind. Diese könnten eine Sequenz (1, 2, 3) oder eine Art vorhersehbares Muster sein. Der Angreifer rät einfach so lange Sitzungs-IDs, bis er eine gültige entdeckt hat. Dies führt auch zu einer Kontoübernahme.
Sitzungen, die nach Ablauf einer bestimmten Zeit nicht automatisch ungültig gemacht werden, können ausgenutzt werden, um Benutzer anzugreifen. Ein erfolgreicher Cross-Site-Request-Forgery-Angriff hängt von Sitzungen ab, die noch gültig sind, nachdem der Benutzer die Website verlassen hat. Angenommen, ein Angreifer platziert einen Iframe oder ein Bild auf einer vom Benutzer besuchten Website. Das Attribut "src" (Quelle) wird auf die URL der verwundbaren Site gesetzt und führt eine Aktion im Namen des Benutzers aus. Zum Beispiel könnte eine verwundbare Banking-Anwendung dazu gebracht werden, ohne die Erlaubnis des Benutzers Geld auf das Konto eines Angreifers zu überweisen.
Sitzungsmanagement kann knifflig sein, und Schwächen können verheerend sein. Es ist jedoch ein bekanntes Problem und es kann gelöst werden.
Unsicheres Sitzungsmanagement besiegen
Die Sitzungsverwaltung ist ein Kernstück einer jeden Webanwendung. Daher verfügen viele Webentwicklungs-Frameworks über eine eingebaute Session-Management-Funktionalität. Diese Systeme wurden von Experten untersucht, um Probleme zu finden und auszumerzen. Verwenden Sie sie.
Einige allgemeine Eigenschaften einer guten Sitzungsverwaltung sind:
Generierung zufälliger Sitzungs-IDs, die Angreifer nicht erraten können
Sitzungen werden ungültig, wenn sich ein Benutzer abmeldet
Sitzungen werden nach Ablauf einer bestimmten Zeit automatisch ungültig gemacht
Sitzungs-IDs werden nach der Anmeldung des Benutzers geändert
Sitzungs-IDs, die mindestens 128 Bit lang sind, um Brute-Force-Angriffe zu verhindern
Web-Frameworks wie Spring, ASP.NET Core, Rails und Django verfügen über diese Eigenschaften und sollten in diesem Fall aufgrund ihrer höheren Sicherheitsstandards verwendet werden.
Unterm Strich: Erstellen Sie Ihr eigenes Sitzungsmanagementsystem nicht von Grund auf neu.
Sobald die Sitzungs-IDs erstellt sind, müssen sie geschützt werden. Setzen Sie die Flags "Secure" und "HttpOnly" bei Sitzungscookies auf "true". Dadurch wird sichergestellt, dass ihr Wert nicht mit JavaScript abgerufen werden kann und der Browser das Cookie nur über HTTPS sendet, wodurch Angreifer daran gehindert werden, die Sitzung eines Benutzers während der Übertragung zu stehlen.
Sichern Sie Ihre Sitzungen
Sehen Sie sichunsere kostenlosen Lernressourcen an, um mehr über sicheres Sitzungsmanagement zu erfahren. Wenn Sie lernen, wie Sie Ihre Sitzungen sichern, können Sie die Übernahme von Benutzerkonten, Rufschädigung und Umsatzeinbußen aufgrund von Sicherheitsverletzungen verhindern. Sichern Sie Ihre Sitzungen und schützen Sie Ihre Benutzer.
Inhaltsverzeichnis
Jaap Karan Singh est un évangéliste du codage sécurisé, Chief Singh et cofondateur de Secure Code Warrior.

Secure Code Warrior Ihr Unternehmen dabei, den Code während des gesamten Softwareentwicklungszyklus zu sichern und eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie für die Anwendungssicherheit verantwortlich sind, Entwickler, IT-Sicherheitsbeauftragter oder in einer anderen Funktion im Bereich Sicherheit tätig sind – wir können Ihrem Unternehmen dabei helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Demo buchenHerunterladenRessourcen, die Ihnen den Einstieg erleichtern
Themen und Inhalte der Schulung zum sicheren Code
Unsere hochmodernen Inhalte werden ständig weiterentwickelt, um mit den ständigen Veränderungen in der Softwareentwicklungslandschaft Schritt zu halten und gleichzeitig Ihre Rolle zu berücksichtigen. Die Themen reichen von KI bis hin zu XQuery-Injection und sind für eine Vielzahl von Positionen konzipiert, von Architekten über Ingenieure bis hin zu Produktmanagern und Qualitätssicherungsmitarbeitern. Verschaffen Sie sich einen Überblick über die Inhalte unseres Katalogs, sortiert nach Themen und Rollen.
Die Kamer van Koophandel setzt Maßstäbe für entwicklergesteuerte Sicherheit in großem Maßstab
Die Kamer van Koophandel berichtet, wie sie sicheres Codieren durch rollenbasierte Zertifizierungen, Trust Score-Benchmarking und eine Kultur der gemeinsamen Verantwortung für Sicherheit in die tägliche Entwicklungsarbeit integriert hat.
Bedrohungsmodellierung mit KI: So wird jeder Entwickler zum Bedrohungsmodellierer
Sie werden besser gerüstet sein, um Entwicklern dabei zu helfen, Ideen und Techniken zur Bedrohungsmodellierung mit den KI-Tools zu kombinieren, die sie bereits verwenden, um die Sicherheit zu erhöhen, die Zusammenarbeit zu verbessern und von Anfang an widerstandsfähigere Software zu entwickeln.
Ressourcen, die Ihnen den Einstieg erleichtern
Cybermon ist zurück: Die missions „Beat the Boss“ sind jetzt auf Abruf verfügbar.
Cybermon 2025 Beat the Boss ist jetzt das ganze Jahr über in SCW verfügbar. Setzen Sie fortschrittliche Sicherheitsherausforderungen im Zusammenhang mit KI und LLM ein, um die sichere Entwicklung von KI in großem Maßstab zu stärken.
Erläuterung des Gesetzes zur Cyberresilienz: Was bedeutet das für die Entwicklung sicherer Software bereits ab der Konzeption?
Entdecken Sie, was das europäische Gesetz zur Cyberresilienz (CRA) verlangt, für wen es gilt und wie sich Ingenieurteams durch Sicherheitsmaßnahmen bereits in der Entwurfsphase, durch die Vermeidung von Schwachstellen und durch die Stärkung der Fähigkeiten der Entwickler darauf vorbereiten können.
Moderator 1: Definierte und messbare Erfolgskriterien
Enabler 1 gibt den Startschuss für unsere 10-teilige Serie mit dem Titel „Enablers of Success“ und zeigt, wie sichere Codierung mit geschäftlichen Ergebnissen wie Risikominderung und Schnelligkeit kombiniert werden kann, um die langfristige Reife von Programmen sicherzustellen.




%20(1).avif)
.avif)
