Ich baue eine kleine Website, wo ich der einzige Benutzer sein werde (sagen wir, meine Zugangsdaten sind "myuser" mit dem Passwort "mypassword"). Auf der Login-Seite habe ich dieses einfache Formular:PHP - Muss ich dieses einfache Formular für die Sicherheit validieren?
<form method="post">
<p>Username: <input type="text" name="usr"></p>
<p>Password: <input type="text" name="passwd"></p>
<p><input type="submit" value="Login"></p>
</form>
Ist es sicher, nur das Formular so zu validieren?
// After checking if the request is POST...
if($_POST["usr"]=="myuser"&&$_POST["passwd"]=="mypassword") {
// Set the cookie and go to admin page...
} else {
// Show login error...
}
Oder muss ich eine gewisse Sicherheitsmaßnahme für die beiden $ _POST Variablen anzuwenden (zum Beispiel, indem sie mit htmlspecialchars oder so ähnlich Filterung)? Wie Sie sehen, werden die Berechtigungsnachweise nicht in einer Datenbank gespeichert, und auch diese Variablen werden nirgendwo sonst im Code aufgerufen. Daher sehe ich keine Gefahr, selbst wenn ein böswilliger Benutzer versucht, das Formular mit SQL Injection oder XSS zu hacken .
Also, habe ich etwas verpasst? Besteht eine potentielle Gefahr, den Code so zu belassen?
Es wird sicherlich einige Kriegstreiber geben, die sagen, das ist verrückt, aber es ist in Ordnung. –
Sie sollten jedoch darauf achten, SSL-Verschlüsselung (https) zu verwenden. – arkascha
* wo ich der einzige Benutzer sein werde * damit die Webseite nicht online ist? –