[Php] Wie sicher sind PDO-vorbereitete Aussagen?


Answers

Es ist sicher vor SQL-Injection.

Ein paar Dinge, vor denen es NICHT sicher ist:

  • Denial of Service (verursacht übermäßige Mengen an zu erstellenden Zeilen)
  • Cross-Site-Scripting-Angriffe (wenn der Titel jemals an einen anderen Benutzer zurückgegeben wird)

Sicherheit ist mehr als nur die SQL-Injektion zu verhindern.

Question

Ich habe vor nicht allzu langer Zeit begonnen, PDO-vorbereitete Anweisungen zu verwenden, und, soweit ich weiß, erledigt es die ganze Flucht / Sicherheit für Sie.

Angenommen, $ _POST ['title'] ist ein Formularfeld.

$title = $_POST['title'];
$query = "insert into blog(userID, title) values (?, ?)"
$st = $sql->prepare($query);
$st->bindParam(1, $_SESSION['user']['userID'], PDO::PARAM_INT);
$st->bindParam(2, $title);
$st->execute();

Ist das wirklich sicher? Muss ich noch etwas tun? Was muss ich noch beachten?

Vielen Dank.







Links