Interdire l'ouverture de fichiers php !

Résolu
nethacker Messages postés 288 Date d'inscription mardi 2 mai 2006 Statut Membre Dernière intervention 12 octobre 2011 - 4 août 2008 à 15:04
nethacker Messages postés 288 Date d'inscription mardi 2 mai 2006 Statut Membre Dernière intervention 12 octobre 2011 - 4 août 2008 à 17:55
Bonjour,
ma question est une question très simple d'un débutant, la réponse est peut être dans le forum ou dans une source mais j'ai beau cherché mais pas trouvé vu qu'il y'a beaucoup de données ! ^^

alors voila mon code déja !
<?php
$mainArticle = $_GET['Filename'];

$filetext = './News/Ressources/'.$mainArticle;

if(isset($filetext)){

$file = fopen($filetext,'r');

$contents = fread($file, filesize($filetext));

fclose($file);

echo nl2br($contents);

?>

y'a t-il une fonction qui permet de déterminer si le mot php existe dans la variable $mainarticle, avant de lire, parceque je peux facilement me balader sur tout le serveur en ajoutant des ./ et ../ dans le chemin !

merci d'avance !

6 réponses

Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
4 août 2008 à 16:06
Salut,

la fonction existe oui, c'est strpos( ), mais ça ne va pas être suffisant. Comme le dit Bling tu peux enlever certains caratères mais c'est un peu sale et pas encore très sûr, alors regarde plutôt du côté de realpath( ).
à+
3
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
4 août 2008 à 17:51
oups

if(substr($chaine, strlen($chaine)-3) == 'php'){ ok }
3
Bling 182 Messages postés 510 Date d'inscription lundi 27 novembre 2006 Statut Membre Dernière intervention 5 juillet 2009 3
4 août 2008 à 15:46
protege ta variable filename... Du genre, tu vires tout ce que tu ne veux pas (/, ., .., etc)
0
nethacker Messages postés 288 Date d'inscription mardi 2 mai 2006 Statut Membre Dernière intervention 12 octobre 2011
4 août 2008 à 17:17
c'est pas le chemin qui pose problème, mais le genre de fichiers à ouvrir, il est possible d'ouvrir tous genres de fichiers avec mon code, comment définir l'extension de fichiers à ouvrir,
merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
4 août 2008 à 17:49
"parceque je peux
facilement me balader sur tout le serveur en ajoutant des ./ et ../
dans le chemin !"



Pourquoi tu parles de chemin alors ?? ...

un if(substr($chaine, strlen($chaine), -3) = 'php') suffira à faire ce que tu veux. Mais tu ferais bien de suivre mon conseil sur realpath ou celui de Bling, sinon tant pis pour ton site...
0
nethacker Messages postés 288 Date d'inscription mardi 2 mai 2006 Statut Membre Dernière intervention 12 octobre 2011
4 août 2008 à 17:55
t'inquiete pour la condition, le chemin je vais le régler aussi, mais mon problème principal est la lecture des fichiers php, ce qui dérange beaucoup, merci tous les deux !
0
Rejoignez-nous