Ratgeber Website-Sicherheit
Versteckte Formularfelder
Angriffe, die über die URL, also per GET, eingeschleust werden, sind recht einfach zu verstehen und zu erkennen. Etwas schwieriger ist es, wenn die Sicherheitslücke in per POST übertragenen Daten steckt. Hier ein Beispiel: Der Programmierer integriert die ID in ein verstecktes Formularfeld, da ihm bewusst ist, dass Parameter in URLs potenziell gefährlich sind. Die ID wird dazu verwendet, den Nutzer auf Knopfdruck auf eine Seite weiterzuleiten, die die ID im Namen trägt. Hier sind natürlich beliebige Varianten vorstellbar: Die versteckten Inhalte könnten im selben Skript integriert sein, der Wert des versteckten Formularfelds könnte dann an die URL gehängt werden und vieles mehr.
Hier das komplette Skript: Sicherheitslücke mit versteckten Formularfeldern:
<?php
if (isset($_POST['id'])) {
header('Location: index' . $_POST['id'] . '.htm');
}
?>
<head>
<title>Versteckte Formularfelder</title>
<body>
<?php
if (isset($_POST['id'])) {
header('Location: index' . $_POST['id'] . '.htm');
}
?>
<head>
<title>Versteckte Formularfelder</title>
<body>