las ich in mehr als eine Website über dieses Verfahren zum Schutz von Formen:md5 Token in verstecktem Formularfeld
Ich füge einen Hidden:
<input type="hidden" name="token" value="<?php echo $token; ?>" />
das Token erzeugt durch:
$token = md5(uniqid(rand(), TRUE));
$_SESSION['token'] = $token;
Ich verstehe, dass dieser Code aufgrund seiner Zufälligkeit praktisch unzerbrechlich ist.
Was ich nicht verstehe, ist: warum sie das Token in einem versteckten Formularfeld enthalten, die in der HTML-Quelle angesehen werden kann?
kann dann ein Benutzer das Formular speichern und die gültigen md5 Token auf eine gefälschte Version des Formulars kopieren und einreichen?
ok Ich mag es und ich werde es als die Antwort markieren. Aber wie kann man verhindern, dass ein Benutzer ein Formular offline verwendet und die Daten ändert? –
Sie stellen sicher, dass jede Änderung, die sie versuchen, eine ist, zu der sie berechtigt sind. – Quentin
Ich habe dies getan, indem ich überprüft habe, dass die Antwort nur Zahlen enthält (ich beschäftige mich mit Produkt-IDs). Aber ich wollte zusätzliche Sicherheit, indem ich gefälschte Daten komplett blockiere. Ich denke, das ist dann unmöglich! –