Formular-Sicherheitsfrage

Tobbes

Mitglied
Nabend zusammen!

1)Echt super Forum hier ;)

2) So ich habe ein Formular erstellt, und nun ist die Frage aufgegangen beim Überprüfen des Formulars, wie es mit der sicherhei aussieht.

Also wmoit kan man anbesten verhindern das irgendwelche codes eingefügt werden, womit man schaen anrichten könnt?



MfG
Tobbes
 
Willkommen im Forum.

Um zu verhindern, dass Codes eingefügt werden können, kannst du die Eingabe z.B. mit htmlentities() behandeln.
Daten die du aus einem Formular in eine MYSQL DB speicherst solltest du vorher nochmal mit mysql_real_escape_string() bearbeiten.
Desweiteren kannst du ja dann noch hingehen und bestimmte Dinge mit einer Funktion wie str_replace() herausfiltern.

Viele Themen zur Sicherheit findest du auch in der Suche (formular sicherheit) oder bei Google.

Zum Abschluss noch: Könntest du die wenigen Fehlerchen in deinem Text noch beheben? Lässt sich dann einfach besser lesen.
 
Ob Benutgzereingaben etwas anrichten können, hängt ganz davon ab, wie sie verarbeitet werden, was also mit den Daten serverseitig geschieht. Werden sie etwa lediglich ausgegeben, wird sich der Benutzer meist nur selbst schaden können.
 
Gumbo hat gesagt.:
Ob Benutgzereingaben etwas anrichten können, hängt ganz davon ab, wie sie verarbeitet werden, was also mit den Daten serverseitig geschieht. Werden sie etwa lediglich ausgegeben, wird sich der Benutzer meist nur selbst schaden können.

Hast du da mal ein Beispiel für mich? Also, zum Verständnis ;)
 
Der Begriff Benutzereingabe steht hier für alle vom Benutzer direkt oder indirekt manipulierbaren Werte, die serverseitig verarbeitet werden. Dies können einerseits Werte eines Formulars sein, die in eine Datenbank eingetragen werden sollen, aber auch URL-Argumente, die etwa zur Navigation dienen. Beide können – je nach Einstellung und Aufbau des Skriptes – gravierende Sicherheitslücken darstellen. Über die für die Datenbank bestimmten Argumente können beispielsweise SQL-Injektionen eingeschleust werden. Und falls die URL-Argumente entscheidend für den Ablauf beziehungsweise den Teilinhalt eines Skriptes sind, können diese Angriffsziel für so genanntes Cross-Site Scripting sein. Die Bandbreite der möglichen Auswirkungen ist dabei oft unterschätzt.
 
hmm ok das hat sich nun erledigt, thx!


Aber nun andere frage:

Bestimmt könnt ihr es nicht mehr hören aber Frage bezüglich "selected".
Ich habe ein Formular mit Geburtstagsangaben von 1900 bis 2004.

Da ich jetz nicht über 100 If anweisungen schrieben wollte, wollt ich fragen, wie des mit nem array geht. Hab das Forum schon durchsucht aber nicht wirklich was gefunden. Es waren immer nur 2-3 select felder und keine 100;)
 
Tobbes hat gesagt.:
hmm ok das hat sich nun erledigt, thx!


Aber nun andere frage:

Bestimmt könnt ihr es nicht mehr hören aber Frage bezüglich "selected".
Ich habe ein Formular mit Geburtstagsangaben von 1900 bis 2004.

Da ich jetz nicht über 100 If anweisungen schrieben wollte, wollt ich fragen, wie des mit nem array geht. Hab das Forum schon durchsucht aber nicht wirklich was gefunden. Es waren immer nur 2-3 select felder und keine 100;)

'SELECT * FROM tabelle ORDER BY spalte'
 
@Hektik:
Ich glaube er meint eher Dropdownmenüs, als DBs :)

@Tobbes:
Ich gehe mal davon aus, dass du dieses Select dynamisch erzeugst.
PHP:
echo '<select name="geb">';
for($i=1900;$i<=2004;$i++)
{
  if(isset($_POST['geb']) && $_POST['geb'] == $i)
  {
     $sel = "selected";
  }
  else
  {
     $sel = '';
  }
   echo '<option value="'.$i.'" '.$sel.'>'.$i.'</option>';
}
echo '</select>';
Ich hoffe das klärt deine Frage. Weitere Beispiele findet man über die Forensuche
 
Zurück