Viele Administratoren kämpfen mit Ausläufern von unsicheren PHP Scripten die es einem Angreifer ermöglichen in das System einzudringen, Spam zu versenden oder die Funktion des Servers anderweitig nach den Wünschen des Angreifers zu gestalten.
Dies ist nicht nur ärgerlich sondern zieht meist auch Konsequenzen nach sich, welchen hier keine weitere Erläuterung geschenkt werden soll.
Den Server dahingehend zu schützen oder absichern zu können ist ein schmaler Grad zwischen “geht” und “geht nicht” - gemeint sind hier diese diversen PHP Scripte.
Die wohl wichtigsten PHP Direktiven für Administratoren, die erreichen können eine relativ sichere Umgebung zu ermöglichen sind die Folgenden:
allow_url_fopen = off
register_globals = off
open_basedir = "/pfad/zum/user/homedir:/pfad/zu/pear:/pfad/zum/tmpdir:/pfad/zum/uploadir"
disable_functions = dl, exec, shell_exec, system, passthru, popen, pclose, proc_open, proc_nice, proc_terminate, proc_get_status, proc_close, pfsockopen, leak, apache_child_terminate, posix_kill, posix_mkfifo, posix_setpgid, posix_setsid, posix_setuid, escapeshellcmd, escapeshellarg, set_time_limit, show_source
Erst wenn diese Einstellungen so oder so ähnlich aussehen, würde meiner einer von wenigstens in Grundzügen sicheren Hosting Umgebung sprechen.
Wem das nicht genug ist, dem ist zu raten mittels mod_security die mit POST (oder anderweitig) zum Apache gesendeten Daten zu durchleuchten.
Die User danken es einem?
Wir viele User zu bedienen hat und damit viel PHP Software, wird schnell merken dass einige PHP Scripte mit den o.g. Einschränkungen nur teilweise oder im schlimmsten Fall gar nicht laufen, daher sollte man sein System einige Zeit nach einer solchen Änderung im Auge behalten => denn Schuld ist immer der Administrator auch wenn er seine User nur happy machen möchte.