Wofür wird der form_key verwendet?

7

Ich verstehe die form_keyFunktion wirklich nicht . Ich habe mehrere Websites gefunden, auf denen Fragen zu und gestellt wurden, form_keyaber keine hat den Grund für ihre Existenz erklärt.

Alle haben gerade an dieser "Sicherheitsfunktion" gearbeitet, z. B. an dieser

Kann jemand erklären, wofür das form_keyverwendet wird?


EDIT: ok, ich bekomme den CSRF-Vektor zum Ändern von Benutzerdaten oder irgendetwas außerhalb des Warenkorbs und sogar der Kasse.
Aber was könnte der mögliche Angriff auf den Wagen sein?!

Sommerhimmel
quelle
1
Für Ihre Folgefrage siehe: magento.stackexchange.com/questions/70949/…
Fabian Schmengler
es heißt einfach, dass es keinen tragfähigen Angriff auf diese bestimmte Aktion gibt, und es ist eher ideologisch als gut gedacht. Aber diese Information hilft mir trotzdem.
Summer-Sky

Antworten:

10

Es verhindert Cross Site Request Forgery

Cross-Site Request Forgery (CSRF) ist ein Angriff, der einen Endbenutzer dazu zwingt, unerwünschte Aktionen in einer Webanwendung auszuführen, in der er derzeit authentifiziert ist. CSRF-Angriffe zielen speziell auf Statusänderungsanforderungen ab, nicht auf Datendiebstahl, da der Angreifer die Antwort auf die gefälschte Anforderung nicht sehen kann. Mit ein wenig Hilfe von Social Engineering (wie dem Senden eines Links per E-Mail / Chat) kann ein Angreifer die Benutzer einer Webanwendung dazu verleiten, Aktionen nach Wahl des Angreifers auszuführen . Wenn das Opfer ein normaler Benutzer ist, kann ein erfolgreicher CSRF-Angriff den Benutzer dazu zwingen, Statusänderungsanforderungen wie das Überweisen von Geldern, das Ändern seiner E-Mail-Adresse usw. auszuführen. Wenn das Opfer ein Administratorkonto ist, kann CSRF die gesamte Webanwendung gefährden.

(Hervorhebung hinzugefügt)

Fabian Schmengler
quelle