187
8 Upload-Formulare
Ungesicherte Datei-Upload-Formulare lassen häufig das Hoch-
laden von schadhaftem PHP-Code zu. In diesem Kapitel wird
aufgezeigt, welche Möglichkeiten ein Angreifer benutzen kann,
um PHP-Code auf den Server zu bringen, und wie man diese
Möglichkeiten verhindern kann.
8.1 Grundlagen
Upload-Formulare sind Formulare, die es Benutzern erlauben, Dateien
auf einen Server hochzuladen. Das kann natürlich zu schlimmen
Sicherheitslücken führen, wenn ein Entwickler den Benutzern seiner
Applikation zu sehr vertraut. Egal, ob nun in einem Intranet oder im
Internet, Formulardaten müssen überprüft werden. Dies gilt besonders
für hochgeladene Dateien.
Führt hier ein Benutzer Böses im Schilde, kann dieser auf den Ser-
ver jegliche Datei hochladen, vorausgesetzt, es werden die Parameter
nicht richtig überprüft. Diese Dateien können Commandshells, Root-
kits oder auch irc-bots sein, die den Server nach draußen öffnen oder
ihn für Angriffe auf andere Server missbrauchen können.
8.2 Aufbau eines Upload-Formulars
Ein Upload-Formular sieht in den meisten Fällen folgendermaßen aus:
<form action="/index.php" method="post" enctype="multipart/form-
data">
<input type="file" name="filename" />
<input type="hidden" name="MAX_FILE_SIZE" value="51200" />
<input type="submit" name="button" value="submitbutton" />
</form>

Get PHP-Sicherheit: PHP/MySQL-Webanwendungen sicher programmieren now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.