
Der Begriff Cross-Site Request Forgery (CSRF) bezeichnet eine Art von Angriff auf Webanwendungen, bei dem ein Angreifer unbefugte Aktionen im Namen eines authentifizierten Benutzers ausführt.
Ein CSRF-Angriff nutzt die Tatsache, dass ein Webbrowser automatisch Authentifizierungsinformationen wie Cookies oder JWTs (JSON Web Tokens) mitsendet, wenn Anfragen an eine Website gestellt werden, bei der der Benutzer derzeit angemeldet ist.
Ein typisches Szenario für einen CSRF-Angriff könnte folgendermaßen aussehen:
Ein Benutzer ist auf einer Bankwebsite angemeldet und besucht gleichzeitig eine andere, bösartige Website. Diese bösartige Website könnte ein unsichtbares Formular enthalten, das automatisch eine Überweisung auf das Konto des Angreifers ausführt, sobald die Seite geladen wird.
Da der Benutzer bei der Bank angemeldet ist, wird die Anfrage als legitim behandelt.

Um sich gegen CSRF-Angriffe zu schützen, können Entwickler und Website-Betreiber folgende Maßnahmen ergreifen:

Für weiterführende Informationen und detaillierte technische Erklärungen zu CSRF und dessen Abwehrmaßnahmen können folgende Quellen konsultiert werden:
Diese Ressourcen bieten umfassende Informationen und Leitlinien, die sowohl für Entwickler als auch für Sicherheitsexperten von Nutzen sind, um Webanwendungen sicherer zu gestalten und zu schützen.
Cross-Site Request Forgery (CSRF) ist eine Art von Sicherheitsangriff auf Webanwendungen, bei dem ein Angreifer unbefugte Befehle im Namen eines authentifizierten Benutzers ausführt. Dies geschieht, indem der Benutzer dazu gebracht wird, eine Aktion auf einer anderen Webseite auszuführen, während er gleichzeitig auf einer anderen, vertrauenswürdigen Seite angemeldet ist.
Ein CSRF-Angriff nutzt die Authentifizierungs-Cookies des Benutzers, die automatisch bei jeder Anfrage an eine Webseite gesendet werden. Der Angreifer erstellt eine bösartige Webseite oder E-Mail, die eine Anfrage an die Zielwebseite sendet. Wenn der Benutzer bereits auf der Zielwebseite angemeldet ist, wird die Anfrage als legitime Aktion des Benutzers behandelt.
Zum Schutz vor CSRF können Entwickler Maßnahmen wie die Verwendung von Anti-CSRF-Token implementieren, die sicherstellen, dass jede Anfrage vom Server generiert wurde. Zudem ist es wichtig, die 'SameSite'-Cookie-Attribut in Webanwendungen zu nutzen, um zu verhindern, dass Cookies bei Anfragen von Drittanbieterseiten gesendet werden.
Nicht alle, aber viele Webanwendungen sind potenziell anfällig für CSRF, besonders wenn sie keine spezifischen Schutzmaßnahmen wie Anti-CSRF-Token oder angemessene Cookie-Attribute implementieren. Anwendungen, die GET-Anfragen für die Ausführung von Aktionen verwenden, können besonders anfällig sein.
CSRF und XSS sind beides Sicherheitslücken, aber sie funktionieren unterschiedlich. CSRF manipuliert den Benutzer dazu, ungewollte Aktionen auf einer Webseite auszuführen, bei der er bereits angemeldet ist. XSS hingegen involviert das Einschleusen von schädlichem Code in Webseiten, um Daten zu stehlen oder das Verhalten der Webseite zu verändern. Beide erfordern unterschiedliche Schutzmaßnahmen.