OWASP Top Ten: A8 – Cross-Site-Request-Forgery

von Michael Cyl

In diesem Beitrag aus unserer OWASP Top Ten Reihe, welche die 10 größten Sicherheitsrisiken für Webapplikationen sowie entsprechende Gegenmaßnahmen näher erläutert, geht es um sogenannte Cross-Site-Request-Forgery-Angriffe (kurz CSRF).

Ein Cross-Site-Request-Forgery (zu deutsch seitenübergreifende Aufrufmanipulation) führt eine – meist sicherheitskritische – Funktion einer Webanwendung im Kontext eines gerade angemeldeten Nutzers aus. Sofern wir CSRF-Schwachstellen im Rahmen eines Penetrationstests feststellen, wird häufig argumentiert, dass es sich um einen normalen Funktionsaufruf handelt und die Webapplikation korrekt funktioniert. Der Knackpunkt ist dabei allerdings, dass die aufgerufene Funktion auch dann verarbeitet wird, wenn der Nutzer dies eigentlich nicht beabsichtigt, beispielsweise durch den Aufruf eines präparierten Links innerhalb einer Phishing-Mail oder durch im Vorfeld eingeschleusten Schadcode (z.B. mittels Cross-Site-Scripting-Angriffen). Anfällig sind dabei sowohl GET- als auch POST-Funktionen.

Beispielszenarien:
  • Ein Benutzer meldet sich auf meinebank.com an, um seinen Kontostand abzufragen. Kurze Zeit später klickt der Nutzer auf einen manipulierten Link in einer Mail, die 5.000€ Sofortgewinn verspricht. Der Link führt jedoch nicht zum versprochenen Gewinn, sondern öffnet die folgende URL:
    https:// www.meinebank.com/sende_geld.php?menge=100€&account=8562342
    Da die zuvor gestartete Online-Banking-Sitzung bzw. der dazugehörige Session-Cookie noch gültig ist, hat der Benutzer kein Geld gewonnen, sondern sendet 100€ an die Kontonummer (8562342) des Angreifers.
  • Der Administrator von verysercure.com surft auf www.notsosecure.com und wird dort zum Opfer einer XSS-Attacke ...
Zum vollständigen Artikel


Cookies helfen bei der Bereitstellung unserer Dienste. Durch die Nutzung erklären Sie sich mit der Cookie-Setzung einverstanden. Mehr OK