Session Fixation

Was ist Session Fixation?

Wenn ein Benutzer authentifiziert oder anderweitig eine neue Benutzersitzung eingerichtet wird, ohne dass eine vorhandene Sitzungskennung ungĂŒltig wird, haben Angreifer die Möglichkeit, authentifizierte Sitzungen zu stehlen.

Beschreibung

Session Fixation kann möglich sein, wenn dieses Problem bei einer Anmelde-URL auftritt (bei der sich der Benutzer gegenĂŒber der Anwendung authentifiziert), kann der Angreifer die Adresse zusammen mit einer festen Sitzungs-ID dem Opfer ĂŒbergeben, um spĂ€ter die IdentitĂ€t des Opfers mit der angegeben Sitzungs-ID anzunehmen. Wenn das Problem bei einer Nicht-Anmeldeseite auftritt, können die URL und die feste Sitzungs-ID von einem Angreifer nur verwendet werden, um die Aktionen eines nicht authentifizierten Benutzers zu verfolgen. Wenn die SicherheitslĂŒcke in einem Cookie-Feld oder einem Formularfeld (POST-Parameter) und nicht in einem URL-Parameter (GET) auftritt, ist eventuell eine weitere Schwachstelle notwendig, um das Cookie-Feld im Browser des Opfers festzulegen, damit diese ausgenutzt werden kann.

Ein solches Szenario wird hÀufig beobachtet, wenn:

Eine Webanwendung authentifiziert einen Benutzer, ohne zuvor die vorhandene Sitzung ungĂŒltig zu machen, wodurch die Sitzung, die dem Benutzer bereits zugeordnet ist, weiterhin verwendet wird.
Ein Angreifer kann einen bekannten Sitzungsbezeichner fĂŒr einen Benutzer erzwingen, sodass der Angreifer nach Authentifizierung des Benutzers Zugriff auf die authentifizierte Sitzung hat.
Die Anwendung oder der Container verwendet vorhersagbare Sitzungskennungen. Bei der generischen Ausnutzung von SicherheitsanfĂ€lligkeiten bei der Sitzungsfixierung erstellt ein Angreifer eine neue Sitzung in einer Webanwendung und zeichnet die zugehörige Sitzungskennung auf. Der Angreifer veranlasst dann das Opfer, sich unter Verwendung dieser Sitzungskennung dem Server zuzuordnen und möglicherweise zu authentifizieren, wodurch der Angreifer ĂŒber die aktive Sitzung Zugriff auf das Benutzerkonto erhĂ€lt.

Tipp

ÜberprĂŒfen Sie die Sicherheit Ihrer Website mit unserem kostenlosen Security Crawler oder mit der OSG Performance Suite Free Version.

Lösung

Vorhandene Sitzungskennungen vor der Autorisierung einer neuen Benutzersitzung ungĂŒltig machen.
Verwenden Sie fĂŒr Plattformen wie ASP, die keine neuen Werte fĂŒr Session-ID-Cookies generieren, ein sekundĂ€res Cookie. Setzen Sie in diesem Ansatz ein sekundĂ€res Cookie im Browser des Benutzers auf einen zufĂ€lligen Wert und legen Sie eine Sitzungsvariable auf denselben Wert fest. Wenn die Sitzungsvariable und der Cookie-Wert ĂŒberhaupt nicht ĂŒbereinstimmen, machen Sie die Sitzung ungĂŒltig und zwingen Sie den Benutzer, sich erneut anzumelden.

Andere Informationen

Andere Angriffsvektoren umfassen DNS-Poisoning und verwandte Angriffe auf ein Netzwerk, bei denen ein Angreifer den Benutzer dazu auffordert, eine bösartige Website zu besuchen, indem eine Anfrage nach einer gĂŒltigen Website umgeleitet wird. Netzwerkbasierte Angriffe umfassen normalerweise eine physische PrĂ€senz im Netzwerk des Opfers oder die Kontrolle einer angegriffenen Maschine im Netzwerk. Dies macht es schwieriger, sie aus der Ferne auszunutzen, aber ihre Bedeutung sollte nicht ĂŒbersehen werden. Weniger sichere Sitzungsverwaltungsmechanismen, wie die Standardimplementierung in Apache Tomcat, ermöglichen die Angabe von Sitzungskennungen, die normalerweise in einem Cookie erwartet werden, auch in der URL. Dadurch kann ein Angreifer veranlassen, dass ein Opfer eine feste Sitzungskennung verwendet, indem er einfach eine E-Mail mit einer schĂ€dlichen URL sendet.

Allgemeiner Schwachstellen-Datenbanklink

https://cwe.mitre.org/data/definitions/384.html


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte