Cross-Site Request Forgery (CSRF) ist eine webbasierte Angriffsmethode, die Schwachstellen in Webanwendungen ausnutzt. Der Begriff CSRF kann sich auch direkt auf die Schwachstelle selbst beziehen.

Wenn eine Webanwendung eine CSRF-Schwachstelle aufweist, können Angreifer legitime Benutzer dazu verleiten, ohne deren ausdrückliche Zustimmung unbeabsichtigte Aktionen auf der anfälligen Website auszuführen. Zu den möglichen Auswirkungen zählen unbefugte Vorgänge wie das Ändern von Benutzerdaten, das versehentliche Löschen oder Verändern von Daten, die Durchführung betrügerischer Transaktionen oder das Auslösen unbefugter Aktionen innerhalb der betroffenen Anwendung.

Ein typischer CSRF-Angriff läuft folgendermaßen ab:

  1. Der Angreifer verleitet Benutzer einer gezielt angegriffenen Anwendung dazu, eine speziell für den Angriff erstellte bösartige Webseite aufzurufen.
  2. Sobald das Opfer diese schädliche Seite aufruft, löst der Angreifer unautorisierte POST-Anfragen an die anfällige Anwendung aus (in bestimmten Fällen kann bereits der bloße Besuch der Webseite die schädliche Anfrage ohne weitere Benutzerinteraktion auslösen).
  3. Die angegriffene Anwendung verarbeitet die nicht autorisierte POST-Anfrage und führt dabei im Namen des authentifizierten Benutzers unbeabsichtigte Aktionen aus.

Um CSRF-Angriffe abzuwehren, müssen Anwendungen die Legitimität eingehender POST-Anfragen überprüfen. Ein weitverbreiteter Ansatz ist die Verwendung sogenannter „Nonce“-Token („number used once“, also „einmalig verwendete Zahl“). Eine Nonce ist eine eindeutige, zufällig generierte Kennung, die als Reaktion auf Benutzeranfragen in legitime HTTP-Formulare eingebettet wird. Beim Empfang nachfolgender POST-Übermittlungen überprüft die Anwendung die Nonce, um die Authentizität und Integrität der Anfrage zu bestätigen.

Wenn der Server Formulare als Antwort auf legitime GET-Anfragen sendet, fügt er einen eindeutigen, nicht vorhersehbaren Nonce-Wert ein. Nach Erhalt der entsprechenden POST-Anfrage vom Client überprüft die Anwendung den Nonce-Wert, um die Authentizität und Legitimität der Anfrage zu bestätigen.

Darüber hinaus sind Sicherheitslösungen wie Web Application Firewalls (WAFs), die vom F5 BIG-IP Application Security Manager bereitgestellt werden, äußerst effektiv darin, bösartige Anfragen zu erkennen und zu blockieren, um die Ausnutzung von CSRF-Schwachstellen zu verhindern.