edit
Cross Site Request Forgery
Ursprung
- Die meisten Router-Admin-Interfaces laufen auf den gleichen IPs
- Router haben oft Default Passwords
- Infizierter PC sendet Request an Router, loggt sich ein und ändert den DNS-Server (zu dem des Hackers)
Attack
- Opfer authentisiert sich bei E-Banking
- Nutzt dabei ein Session-Cookie aus
- Geht nicht mit URL-Based Session handling, weil dann die URL nicht voraussehbar ist (angenommen die Session ID ist zufällig)
- Opfer geht auf Hacker-Seite
- Im Browser wird einen Request (nicht ajax) an die Bank geschickt mit einer bestimmtem Transaktion
- z.B. über ein Bild
- schickt dabei Session-Cookie mit
- E-Banking verlangen SMS-Bestätigung
- Grundsätzlich: Aktion darf nicht mit einem voraussehbaren Request ausführbar sein
- In Formular zufälliges XSRF-Token als hidden field einbinden
- Client muss im Request dieses Token wieder mitschicken
- Darf keine XSS-Lücken haben! Sonst nützt CSRF-Token auch nichts mehr