SommaireTelecharger la documentationChapitre suivantChapitre precedent  

 
Raccourci :  
Binaires CGI

Faiblesses connues
Cas 1: Tous les fichiers sont publics
Cas 2: utilisation de la directive de compilation --enable-force-cgi-redirect
Cas 3: Utilisation du "doc_root" ou du "user_dir"
Cas 4: L'exécutable PHP à l'extérieur de l'arborescence du serveur

4.1.5 Cas 4: L'exécutable PHP à l'extérieur de l'arborescence du serveur
[Notes en ligne] 

Une solution extrêmement sécurisée consiste à mettre l'exécutable PHP à l'extérieur de l'arborescence du serveur web. Dans le répertoire `/usr/local/bin', par exemple. Le problème de cette méthode est que vous aurez à rajouter la ligne suivante :


#!/usr/local/bin/php
      

dans tous les fichiers contenant des tags PHP. Vous devrez aussi rendre le binaire PHP exécutable. Dans ce cas-là, traitez le fichier exactement comme si vous aviez un autre script écrit en Perl ou en sh ou en un autre langage de script qui utilise #! comme mécanisme pour lancer l'interpréteur lui-même.
Pour que l'exécutable PHP prenne en compte les variables d'environnement PATH_INFO et PATH_TRANSLATED correctement avec cette configuration, vous devez utiliser l'option de compilation --enable-discard-path.


Chapitre précédentChapitre suivantAccueil nexen.net