Die PHP.ini – PHP gegen Angriffe absichern
Die wichtigsten Sicherheitseinstellungen in der php.ini
- allow_url_fopen – Diese Einstellung legt fest, dass PHP-Skripte nur lokale Dateien des Servers einbinden können. Verbietet man dies, wird es einem Angreifer erschwert seinen Schadcode aus dem Internet nachzuladen. Manchmal benötigt man dies allerdings, etwa um NewsFeeds von externen Servern zu laden. Empfohlene Einstellung: OFF
- allow_url_include – Ähnlich wie allow_url_fopen, allerdings betrifft diese Einstellung nicht das öffnen von Dateien, sondern das inkludieren (include(), require()) von Dateien.
Empfohlene Einstellung: OFF (erst ab PHP 5.2.0 verfügbar!) - disable_functions – Hier kann man eine, durch Komma separierte, Liste mit PHP-Funktionen eintragen deren Benutzung gesperrt sein soll. Wenn man sie nicht unbedingt benötigt, sollten hier alle Funktionen eingetragen werden, die einen serverweiten Zugriff gestatten. Manche Funktionen, wie etwa exec(), sind vergleichbar mit einem Generalschlüssel für den Server.
Empfohlene Einstellung: escapeshellcmd, exec, ini_restore, passthru, popen, proc_nice, proc_open, shell_exec, system - display_errors – Im produktiven Einsatz sollten PHP-Fehlermeldungen nicht angezeigt werden. Fehlermeldungen sind nicht nur lästig und hinterlassen einen unprofessionellen Eindruck beim Kunden sondern, und das ist viel wichtiger, geben Fehlermeldungen jedem Angreifer wichtige Informationen über die Struktur und den Aufbau unserer Scripts.
Empfohlene Einstellung: OFF - open_basedir – Legt ein Verzeichnis fest, in dem wir mit PHP arbeiten können. Auf diese Art kann man verhindern, dass ein manipuliertes Script Zugriff auf gewisse Ordner oder ganze Bereiche auf unserem Server erhält.
Empfohlene Einstellung: Root Verzeichnis der Internetpräsenz -
register_globals – Ist diese Einstellung aktiv, werden Variablen aus GET und POST global verfügbar gemacht und überschreiben damit ggfs. andere Variablen mit dem selben Name. Ist diese Einstellung deaktiviert, muss auf Eingaben von aussen explizit mit $_GET, $_POST, $_SESSION zugegriffen werden. Empfohlene Einstellung: OFF
-
safe_mode – Ist der Safe_Mode aktiviert, werden u.a. Berechtigungs-Prüfungen durchgeführt, ob die gewünschte Aktion von einem User durchführbar ist. Empfohlene Einstellung: ON
![[ php-resource ]](http://www.myoos.de/images/php_mitglied.gif)