Bonjour
J'utilise des includes et je cherche une solution afin de sécuriser cette utilisation qui ne semble pas être le cas dans son utilisation la plus banale ;
J'ai trouvé et réussi à utiliser le code ci-dessous à la place de celui ci-dessus. Mais d'après mes recherches il me semble qu'il n'est pas vraiment mieux en terme de sécurité ?!
J'ai tenté d'utiliser la méthode ci-dessous, mais en vain, l'erreur safiche sur mon site .. je dois mal l'utiliser.
J'ai tenté d'utiliser aussi ceci, mais sans résultat
Apparemment tous ces codes fonctionnent, pas de problème avec les deux premiers, mais ce qui semble être le plus sécurisé sont les deux derniers. J'ai lu, et relu, essayé dans tous les sens, mais rien et là, ça fait trois jours et je sature. J'appel donc au secours afin que quelqu'un puisse me guider dans cette jungle !
Merci
Modifié par bulle97 (10 Jun 2009 - 09:13)
J'utilise des includes et je cherche une solution afin de sécuriser cette utilisation qui ne semble pas être le cas dans son utilisation la plus banale ;
<?php include 'xxx.php' ?>
J'ai trouvé et réussi à utiliser le code ci-dessous à la place de celui ci-dessus. Mais d'après mes recherches il me semble qu'il n'est pas vraiment mieux en terme de sécurité ?!
<?php
$valeur = 'xxx.php';
if (file_exists($valeur))
{
include($valeur);}
else {
print "erreur";
}
?>
J'ai tenté d'utiliser la méthode ci-dessous, mais en vain, l'erreur safiche sur mon site .. je dois mal l'utiliser.
<?php
// Filtrer
$myFile = filter_var($_GET['xxx.php'], FILTER_SANITIZE_STRING);
// valider
$valid = array('xxx.php');
if (!in_array($myFile, $valid)) {
die('erreur');
}
include($myFile);
?>
J'ai tenté d'utiliser aussi ceci, mais sans résultat

<?php
if(!empty($_GET['xxx.php']))
{
if(file_exists('includes/' . $_GET['xxx.php'] . '.php') AND !preg_match("/(\.|config|inc)/iU", $_GET['xxx.php']))
{
// On inclue la page, et si le fichier existe le .inc qui va avec
}
else
{
include('index.php'); // On inclue la page par défaut
}
}
else
{
include('index.php');// Inclusion de la page par défaut
}
?>
Apparemment tous ces codes fonctionnent, pas de problème avec les deux premiers, mais ce qui semble être le plus sécurisé sont les deux derniers. J'ai lu, et relu, essayé dans tous les sens, mais rien et là, ça fait trois jours et je sature. J'appel donc au secours afin que quelqu'un puisse me guider dans cette jungle !
Merci

Modifié par bulle97 (10 Jun 2009 - 09:13)