Services webmasters
Partenaires
Jeux concours gratuits
 
Binaires CGI
<<<
Module Apache Sécurité des fichiers
>>>

5.1 Sécurité
5 Sécurité
 Manuel PHP

Considérations générales
Binaires CGI
->Module Apache
Sécurité des fichiers
Sécurité des bases de données
Rapport d'erreurs
Utilisation des variables super-globales
Données transmises par les internautes
Masquer PHP
Etre à jour

5.1.3 Module Apache

Lorsque le PHP est compilé en tant que module Apache, ce module hérite des permissions accordées à l'utilisateur faisant tourner Apache ( par défaut, l'utilisateur "nobody"). Par exemple, si vous utilisez PHP pour accéder à une base de données, à moins que la base n'ait un système de droits d'accès interne, vous devrez rendre la base accessible à l'utilisateur "nobody". Cela signifie qu'un script mal intentionné peut accéder à la base, la modifier sans authentification. Il est aussi possible qu'un robot accède à la page d'administration, et détruise toutes les pages. Vous devez aussi protéger vos bases de données avec les autorisations Apache, ou définir votre propre modèle d'accès avec LDAP, .htaccess, etc... et inclure ce code dans tous vos scripts PHP.

Souvent, lorsqu'on a établi les droits de l'utilisateur PHP (ici, l'utilisateur Apache) pour minimiser les risques, on s'aperçoit que PHP ne peut plus écrire de virus dans les fichiers des utilisateurs. Ou encore, modifier une base de données privée. Il est aussi incapable de modifier des fichiers qu'il devrait pouvoir modifier, ou effectuer certaines transactions.

Une erreur fréquente de sécurité est de donner à l'utilisateur Apache les droits de superadministrateur.

Donner de telles permissions à l'utilisateur Apache est extrêmement dangereux, et peut compromettre tout le système, telle que l'utilisation des sudo ou du chroot . Pour les professionnels de la sécurité, une telle utilisation est à exclure d'office.

Il existe des solutions plus simples. En utilisant open_basedir vous pouvez contrôler et restreindre l'accès à certains dossiers qui pourront être utilisés par PHP. Vous pouvez aussi créer des aires de restriction Apache, pour restreindre les activités anonymes liées aux internautes.

<< Module Apache >>
Binaires CGI Sécurité Sécurité des fichiers
Services webmasters
Les manuels
 
CoursPHP.com - Reproduction interdite -