Securité piratage
annemarie1
Messages postés
85
Statut
Membre
-
fiddy Messages postés 11653 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11653 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
je voulais savoir si mon code était sécurisé , j'ai un tableau de 2 colonnes
dans la première colonne j'ai fait des liens en php
<?php
echo '<a href="index2.php?page=cours">COURS</a>';
?>
puis dans la deuxième colonnes j'ai mes includes
<?php
if ($_GET['page'] == "accueil")
{
include("accueil1.html");
}else{
include("accueil1.html");
}
Pourriez vous me dire si celà est suffisant pour la sécurisation
Un grand merci pour votre aide
Anne Marie
je voulais savoir si mon code était sécurisé , j'ai un tableau de 2 colonnes
dans la première colonne j'ai fait des liens en php
<?php
echo '<a href="index2.php?page=cours">COURS</a>';
?>
puis dans la deuxième colonnes j'ai mes includes
<?php
if ($_GET['page'] == "accueil")
{
include("accueil1.html");
}else{
include("accueil1.html");
}
Pourriez vous me dire si celà est suffisant pour la sécurisation
Un grand merci pour votre aide
Anne Marie
A voir également:
- Securité piratage
- Question de sécurité - Guide
- Votre appareil ne dispose pas des correctifs de qualité et de sécurité importants - Guide
- Mode securite - Guide
- Undisclosed-recipients piratage - Guide
- Piratage compte facebook - Guide
7 réponses
Bonjour, je mettrais plutôt ca à ta place :
<?php
if(isset($_GET['page']) AND file_exists($_GET['page'].'.php'))
{
include $_GET['page'].'.php';
}
else
{
include 'accueil1.html';
}
?>
non,
if(isset($_GET['page']) AND file_exists($_GET['page'].'.php'))
$_GET['page'] sera remplacé par la page que tu veux, auquel on ajoute l'extansion .php
if(isset($_GET['page']) AND file_exists($_GET['page'].'.php'))
$_GET['page'] sera remplacé par la page que tu veux, auquel on ajoute l'extansion .php
NON !
laisse comme je te l'ai donné, et tu auras une url du type ?page=forums
page sera interprétée par forums, auquel on ajoutera .php
laisse comme je te l'ai donné, et tu auras une url du type ?page=forums
page sera interprétée par forums, auquel on ajoutera .php
Pas top ta solution HACKER 712.
Si une personne met dans l'url page=http://hacker/toto ça risque de faire du dégât ^^.
Si une personne met dans l'url page=http://hacker/toto ça risque de faire du dégât ^^.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut,
Voici un petit lien qui te permet de faire des include sécurisés : https://openclassrooms.com/fr/courses
Cdlt
Voici un petit lien qui te permet de faire des include sécurisés : https://openclassrooms.com/fr/courses
Cdlt
Bonjour
j'etais juste dessus, mais comme je suis un peu null en php ca va etre un peu difficile ...par contre pour le code que j'ai trouvé
$page=preg_replace("/[^a-z0-9_ ]/i", "", $page);
if(!@include("includes/$page.php"))die("Cette page n'existe pas sur le serveur, merci d'informer le webmaster du site si ce problème venait à se reproduire.");
ce code est t'il valable ? comment puis je l'inserer dans l' exemple du site du zero :
<?php
$page = (!empty($_GET['page'])) ? htmlentities($_GET['page']) : 'index';
$array_pages = array(
'index' => 'index.php',
'page1' => 'page1.php',
'page2' => 'page2.html'
);
if(!array_key_exists($page, $array_pages)) include('index.php');
elseif(!is_file($array_pages[$page])) include('erreur.php');
else include($array_pages[$page]);
?>
un grand merci pour l'aide que vous m'apporter
j'etais juste dessus, mais comme je suis un peu null en php ca va etre un peu difficile ...par contre pour le code que j'ai trouvé
$page=preg_replace("/[^a-z0-9_ ]/i", "", $page);
if(!@include("includes/$page.php"))die("Cette page n'existe pas sur le serveur, merci d'informer le webmaster du site si ce problème venait à se reproduire.");
ce code est t'il valable ? comment puis je l'inserer dans l' exemple du site du zero :
<?php
$page = (!empty($_GET['page'])) ? htmlentities($_GET['page']) : 'index';
$array_pages = array(
'index' => 'index.php',
'page1' => 'page1.php',
'page2' => 'page2.html'
);
if(!array_key_exists($page, $array_pages)) include('index.php');
elseif(!is_file($array_pages[$page])) include('erreur.php');
else include($array_pages[$page]);
?>
un grand merci pour l'aide que vous m'apporter
$page=preg_replace("/[^a-z0-9_ ]/i", "", $page);
Cela permet de vérifier qu'il n'y a que des caractères alphanumériques. Donc grâce à ça, une page ne pourra pas venir d'un site extérieur. Mais cela n'est pas top pour autant car si une personne arrive à uploader une page sur ton serveur (faille upload par exemple) il pourra l'exécuter.
Le mieux est vraiment de recenser dans un tableau le nom des pages et de vérifier que le GET['page'] appartient à ce tableau comme sur le site susmentionné.
Cdlt
Cela permet de vérifier qu'il n'y a que des caractères alphanumériques. Donc grâce à ça, une page ne pourra pas venir d'un site extérieur. Mais cela n'est pas top pour autant car si une personne arrive à uploader une page sur ton serveur (faille upload par exemple) il pourra l'exécuter.
Le mieux est vraiment de recenser dans un tableau le nom des pages et de vérifier que le GET['page'] appartient à ce tableau comme sur le site susmentionné.
Cdlt
Si elle n'existe pas, il y a l'acceuil !
cf file_exists
cf file_exists
merci pour ta réponse
puis je faire ca donc ?
<?php
$page = (!empty($_GET['page'])) ? htmlentities($_GET['page']) : 'index';
$array_pages = array(
'cours' => 'cours.html',
'ateliers' => 'ateliers.html',
'festivite' => 'festivite.html'
'stages' => 'stages.html',
'concerts' => 'concerts.html',
);
if(!array_key_exists($page, $array_pages)) include('index.php');
elseif(!is_file($array_pages[$page])) include('erreur.php');
else include($array_pages[$page]);
?>
Merci encore
puis je faire ca donc ?
<?php
$page = (!empty($_GET['page'])) ? htmlentities($_GET['page']) : 'index';
$array_pages = array(
'cours' => 'cours.html',
'ateliers' => 'ateliers.html',
'festivite' => 'festivite.html'
'stages' => 'stages.html',
'concerts' => 'concerts.html',
);
if(!array_key_exists($page, $array_pages)) include('index.php');
elseif(!is_file($array_pages[$page])) include('erreur.php');
else include($array_pages[$page]);
?>
Merci encore
bon et bien j'ai fait comme ca ? est suffisant contre le piratage pour les includes
<?php
$page = (!empty($_GET['page'])) ? htmlentities($_GET['page']) : 'accueil';
$array_pages = array(
'accueil' => 'accueil.html',
'ateliers' => 'ateliers.html',
'cours' => 'cours.html',
'festivite' => 'festivite.html'
);
if(!array_key_exists($page, $array_pages)) include('accueil.php');
elseif(!is_file($array_pages[$page])) include('erreur.php');
else include($array_pages[$page]);
?>
merci pour ton aide précieuse
<?php
$page = (!empty($_GET['page'])) ? htmlentities($_GET['page']) : 'accueil';
$array_pages = array(
'accueil' => 'accueil.html',
'ateliers' => 'ateliers.html',
'cours' => 'cours.html',
'festivite' => 'festivite.html'
);
if(!array_key_exists($page, $array_pages)) include('accueil.php');
elseif(!is_file($array_pages[$page])) include('erreur.php');
else include($array_pages[$page]);
?>
merci pour ton aide précieuse
Bonjour,
J'aurais rajouté à la place de !empty($_GET['page']) : isset($_GET['page']) qui est plus prévu pour tester si la variable est définie ou pas. Si la variable est définie est vide, elle sera prise en compte dans la condition sur le tableau.
Cependant, à part ce petit point discutable, le reste me paraît acceptable d'un point de vue sécurité.
Cdlt,
J'aurais rajouté à la place de !empty($_GET['page']) : isset($_GET['page']) qui est plus prévu pour tester si la variable est définie ou pas. Si la variable est définie est vide, elle sera prise en compte dans la condition sur le tableau.
Cependant, à part ce petit point discutable, le reste me paraît acceptable d'un point de vue sécurité.
Cdlt,
<?php
if(isset($_GET['page']) AND file_exists($_GET['page'].'accueil.php'))
{
include $_GET['page'].'accueil.php';
}
else
{
include 'accueil1.html';
}
?>
par contre j'ai aussi trouvé ce code très securisé parat il !
$page=preg_replace("/[^a-z0-9_ ]/i", "", $page);
if(!@include("includes/$page.php"))die("Cette page n'existe pas sur le serveur, merci d'informer le webmaster du site si ce problème venait à se reproduire.");
mais le probleme c'est que je n'y comprends rien , pourrez tu me dire s'il te plait où mettre ce code dans mes includes
merci encore pour ton aide , je fais un site gratos pour un ami .