Probleme de sécurité avec INCLUDE

christ007

Membre actif
14 Octobre 2002
151
4
42
Québec, Canada
j'ai lu il y a peu de temps sur phpdebutant que l'utilisation des pseudo-frames, include en fait, posait certain problemes de sécurité. Mais lesquels ? et comment les régler ?

et.. j'ai du javascript dans 2 de mes include, devrais-je mettre les script dans un .js et le linker dans mon fichier .php principale ?
je m'éclate le cerveau depuis quelques jours.
j'explique un peu, le site: www.rocgyms.com
je veux me faire un template de base pour ne pas à refaire la page chaque fois. mais.. comme chaque section du site est dans un dossiers, je ne sais pas comment appeller chaque lien. Faire un index.php dans chaque dossiers ? mais je crois que je me compliquerais la vie.. bref passer de frameset vers php avec le site que je m'occupe. je suis tout brouiller et j'ai besoin d'aide et d'avis de pro quand à la facon de mis prendre pour migrer vers php avec www.rocgyms.com

merci à l'avance de votre aide! j'en ai vraiment besoin, j'ai le cerveau qui chauffe en ce moment! mais je suis optimiste
zen.gif
 
christ007 a dit:
j'ai lu il y a peu de temps sur phpdebutant que l'utilisation des pseudo-frames, include en fait, posait certain problemes de sécurité. Mais lesquels ? et comment les régler ?

Par exemple si tu nommes un fichier include avec l'extension .inc et que quelqu'un lance une requete lesite.com/includes/config.inc le serveur va simplement renvoyer le code source non interprèté (contenant ton password MySQL par exemple) au navigateur. Il vaut mieux utiliser l'extension .php ou .inc.php pour protéger le code, qui dans ce cas sera toujours executé avant que le serveur renvoie la page correspondant à la requete.

Ou alors il faut protéger le répertoire contenant les fichiers à inclure avec un fichier .htaccess interdisant d'appeler directement les fichiers ayant une extension .inc.

<Files *.inc>
order deny,allow
deny from all
</Files>


Si tu as fais une faute de frappe quelque part dans un script php ou qu'un fichier a été déplacé et que ton include rate, le serveur affiche sur la page renvoyée un message d'erreur utile pour l'auteur du site (il indique que dans tel script il ne trouve pas le fichier à inclure qui devrait se trouver à tel endroit) mais qui pourrait être exploité, parce qu'il dévoile une partie de l'arborescence du site.

Warning: Failed opening '../truc.inc' for inclusion (include_path='.:/home/machin/lesite/includes/') in /home/machin/lesite/www/index.php on line 3

En ajoutant l'arobase en préfixe dans les includes l'inclusion ne marchera pas mais les messages d'erreurs ne s'afficheront plus sur la page.

<?php @include "truc.inc.php"; ?>

Pour une inclusion simple comme celle-ci tu peux aussi utiliser l'instruction require à la place d'include.

-----------

Ah ouais, j'oubliais le plus important: ph34r my 133+ ACDsee skillz !!!
tongue.gif
 
Merci Minime !

si je pouvais avoir un minime à coté de moi tlt
tongue.gif
haha non mais!

les .inc autre que pour les config de connection vers un base SQL, ca sert à quoi ?
Je reviens avec mon exemple de www.rocgyms.com
j'ai un include en haut pour le menu, un autre pour le contenu et un pied de page. jusque la ca va. j'ai du javascript dans le menu.. je le met dans le fichier .php dans lequel sont les includes, ou mieu je fais un .js et j'insere le fichier au .php ?

Bref j'aimerais quelque avis quant à la méthode qui serait le plus approprié.
et je me pose des question aussi pcque j'ai des page qui on des sous menu. Je dois utiliser quelque chose du genre index.php?page=proescalade?cours=glace mais est-ce que je peux faire affichier le résultat dans la partie du contenu et si oui.. comment je fais pour définir tout ca.. ?

ca en fait des questions je sais mais c'est pour ca que je poste ici!
tongue.gif