PHP - CSRF-Token für Formulare erstellen

Cross-Site-Request-Forgery (CSRF) ist eine Angriffstechnik auf eine Website. Sie bringt einen gegenüber der Website authentisierten Benutzer dazu, unbewusst manipulative Aktionen durchzuführen.

Der auf Session basierende Page-Token, zur Authentifizierung des Formulars, wird in einem versteckten Formularfeld auf der Seite eingebunden.


<?php

session_start
();

// CSRF-Token erstellen
$min 1000;
$max getrandmax();
$_SESSION['token'] = rand($min$max);

if (
$_SERVER["REQUEST_METHOD"] == "POST") {
 if (
$_SESSION['token'] != $_POST["token"]) {
  die;
 }
 else {
  ...
 }
}
?>

<!DOCTYPE html>
<html lang="de">
 <head>
  <meta charset="UTF-8">
  <title>Formular</title>
 </head>
<body>

<form action="" method="POST">
    <input type="hidden" name="token" value="<?=$_SESSION['token']?>">
    ...
</form>

<body>
</html>

Bausteine

Eine zufällige Auswahl von „Bausteinen” (Snippets) aus den Bereichen CSS, PHP, JavaScript und MySQL.

CSS - Eingabefelder und Buttons formatieren

PHP - Koordinaten einer Grafik anzeigen

JavaScript - Count-Up Anzeige für Personen, Dinge etc.

MySQL - Datensatz Wert um 10% veringern