CSRF in PHP einfach und erfolgreich verhindern

Cross-Site Request Forgery, kurz CSRF, ist ein Webseiten-übergreifender Angriff. Der Angreifer kann Aktionen auf der Webanwendung ausführen, zu denen er nicht berechtigt ist. PHP ist davon genau so betroffen wie andere Programmiersprachen auch.

Ein Beispiel

Als Mitarbeiter einer Firma bin ich im Backend eingeloggt und kann per Formular Gutschriften auf Kundenkonten buchen. Ich öffne die Webseite eines Angreifers. Diese Webseite sendet ein Formular an die Backend-Adresse ab, und erteilt somit eine Gutschrift.

Wer ist betroffen?

Überall wo Aktionen im eigenen Namen durchgeführt werden können, zum Beispiel Profiländerungen, Abstimmungen, etc. solltest du gegen CSRF vorgesorgen. Denn hier könnten zum Beispiel die erweiterten Berechtigungen eines anderen Users ausgenutzt werden. Ebenso könnte sich ein Angreifer als jemand anderes ausgeben.

Weiterlesen