Attack Afternoon – CSRF
CSRF steht für „Cross-Site Request Forgery“ und ist ein Klassiker unter den Angriffen auf Webanwendungen. Mit diesem Angriff ist es möglich, Nutzer bestimmte Aktionen ausführen zu lassen, ohne dass sie diese beabsichtigen. Aber wie funktioniert dieser Angriff genau?
Zunächst einmal von vorn: Die meisten Anwendungen identifizieren einen Nutzer über Session-Cookies. Cookies sind dafür geeignet, da diese nach dem Setzen bei jedem folgenden HTTP-Request vom Browser automatisch mitgesendet werden. Der Browser sendet immer alle Cookies mit, die er zu der aufgerufenen Seite gespeichert hat. Ob der HTTP-Request jedoch von der eigentlichen Anwendung oder von einer Drittseite gesendet wird, spielt für den Browser bei der Übermittlung von Cookies keine Rolle.
Das bedeutet ein HTTP-Request, der von dem Browser eines Nutzers kommt, ist längst kein HTTP-Request, der bewusst vom Nutzer ausgeführt wird. Jede Seite, auf die ein Nutzer surft, kann über dessen Browser im Hintergrund einen HTTP-Request zu einem beliebigen Ziel versenden. So könnte die Website, auf der Sie gerade Urlaubsbilder ansehen, heimlich einen HTTP-Request versenden, der eine Überweisung auf Ihrer Online-Banking-Anwendung auslöst, wenn diese Anwendung anfällig für CSRF ist. Hierzu muss ein Angreifer, der Drahtzieher hinter der vermeintlichen Urlaubsbilder-Website, den HTTP-Request für diese Überweisung fälschen und „cross-site“ an die Online-Banking-Anwendung schicken. – Auf Englisch: „Cross-Site Request Forgery“ – Sind Sie auf der Online-Banking-Anwendung gerade angemeldet, werden Ihre Cookies vom Browser automatisch mitgeschickt und Sie werden als Kunde identifiziert. Damit geht die Überweisung durch – unter Ihrem Namen.
Erfahren Sie in einem unserer nächsten Attack Afternoons wie sie sich wirksam vor CSRF schützen können.
Haben sie schon einen CSRF-Schutz und möchten diesen überprüfen lassen? Kontaktieren Sie uns gerne!
Recent posts
Neuer Can I Trust Test Case: Browser returns secret out of pre-cached response in a CORS-Request
#1 – Neuer Can I Trust Test Case – Browser returns secret out of pre-cached response in a CORS-Request
Update – WordPress Author Security
Update: Unser WordPress Author Security Plugin ist jetzt auch im WordPress Plugin Store verfügbar.
WordPress Author Security
Wie können Sie aktiv das Enummerieren von Nutzernamen über die Autorenseiten von WordPress verhindern?
Pentest FAQ – #18 und #19 – Wie werden gefundene Schwachstellen bewertet? Und was ist der CVSS?
In unserer großen Application Security Penetration Test FAQ für Auftraggeber beantworten wir alles, was man vor, während und nach Beauftragung eines Application Security Penetrationstests wissen sollte.
Heute im Fokus: Fragen #18 und #19 – Wie werden gefundene Schwachstellen bewertet? Und was ist der CVSS?
Attack Afternoon – CSRF Gegenmaßnahmen #2
CSRF Gegenmaßnahmen #2: Ein anderer, zustandslosen Weg zum Schutz vor CSRF, ist die Methode des Double Submit Cookie.