"?page=..."

Fermé
Karim - Modifié par Karim le 18/02/2012 à 00:37
MastercroW Messages postés 1095 Date d'inscription dimanche 3 octobre 2010 Statut Membre Dernière intervention 31 mai 2019 - 18 févr. 2012 à 14:06
Bonjour,

Il y a des années que j'ai arrêté le PHP. Je n'étais pas très doué, juste les bases de chez bases (et j'utilisais majoritairement les outils proposés par les logiciels tels que Namo et Dreamweaver, je ne créais pas mes propres codes ou quoi que ce soit du genre...). Simplement, pour aider une amie qui veut créer son propre site, je recherche un code qu'il y avait sur le site sur lequel je bossais en tant que rédacteur (j'étais rédacteur, c'est la raison pour laquelle j'ai pu entrevoir un peu le PHP, mais je n'ai jamais programmé de site).

Sur ce site, il y avait un code placé dans l'index (index contenant le design et la mise en page du site). On plaçait le code là où on voulait que les pages s'affichent. Ensuite, pour les liens vers ces pages, il suffisait de mettre un truc du genre "?page=NOMDELAPAGE.php" et lorsqu'on cliquait sur ce lien, la page en question s'affichait à l'endroit de l'index où le code était placé...

Je sais que c'est un peu compliqué, et je ne m'y connais pas du tout, mais j'aimerais simplement retrouvé ce code pour aider mon amie. Si quelqu'un peut m'aider, je lui en serait super reconaissant, car voilà un moment que je cherche en vain...

Merci à tous !

Karim

A voir également:

4 réponses

MastercroW Messages postés 1095 Date d'inscription dimanche 3 octobre 2010 Statut Membre Dernière intervention 31 mai 2019 163
18 févr. 2012 à 14:06
Bonjour,

C'est sur qu'en utilisant ce que vous utiliser vous pouvez avoir des attaques qui peuvent endommagés votre base de donnée.
En utilisant ceci, il y a moins de risques qu'il y ai des failles.

Changer :
if (isset($_GET['page'])){ 

//on utilises notre variable: 
// par exemple pour simplement l'afficher 
echo $_GET['page']; 

} 

Par
if (empty($_GET['page'])) $_GET['page'] = 'index';
if(!file_exists("page/".$_GET["page"].".php")) $_GET["page"]="404";
$urlInclusion = 'page/'.$_GET['page'].'.php';
include($urlInclusion);		
2
SlyK Messages postés 854 Date d'inscription vendredi 11 mars 2011 Statut Contributeur sécurité Dernière intervention 6 octobre 2014 147
18 févr. 2012 à 00:34
Bonsoir,

Si vous faites ceci il faut faire attention, car plusieurs attaque peuvent être possible.


Cordialement,
SlyK
1
Merci pour votre réponse si rapide ! De quel genre d'attaques parlez-vous ?
0
SlyK Messages postés 854 Date d'inscription vendredi 11 mars 2011 Statut Contributeur sécurité Dernière intervention 6 octobre 2014 147
Modifié par SlyK le 18/02/2012 à 00:46
Inscrivez-vous, je vous enverrais un MP avec le lien d'un site.

Bien sûr, tout dépend de la méthode de codage.
Une white list sera nécessaire.
0
AssassinTourist Messages postés 5709 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 1 310
18 févr. 2012 à 10:23
Bonjour,
Pourquoi ne pas poster vos explications ici ?
0
SlyK Messages postés 854 Date d'inscription vendredi 11 mars 2011 Statut Contributeur sécurité Dernière intervention 6 octobre 2014 147
Modifié par SlyK le 18/02/2012 à 12:23
Tout simplement parce que le lien que je vais donner pourrait inciter certaines personnes à hacker des sites.
0
mapage.php?page=mavaleur

Ce sont les variables GET en php.

Elles peuvent venir d'un formulaire ou être écrite directement dans le lien.

Allez voir du côté de google : php GET.

Pour less récupérer il faut que la page ciblée comportes le code :
<?php

if (isset($_GET['page'])){

//on utilises notre variable:
// par exemple pour simplement l'afficher
echo $_GET['page'];

}

Pour indiquer cette variable il faut soit un formulaire soit indiquer dans un lien cette variable, soit utiliser la fonction header() en php

Voici un exemple pour le lien:

<a href="mapage.php?page=couscous">couscous</a>
Avec la fonction echo précédente affichera dans ma page.php

couscous

Si vous faites ceci il faut faire attention, car plusieurs attaque peuvent être possible.
N'importe qui peut changer la variable dans la barre d'adresse en tapant ce qu'il veut. Les attaques c'est surtout si la valeur est utilisé pour une requête dans une base de données, en tapant une requête un internaute peut simplement faire ce qu'il veut de la base(récupérer, supprimer, fausser...) donc attention.
1
SlyK Messages postés 854 Date d'inscription vendredi 11 mars 2011 Statut Contributeur sécurité Dernière intervention 6 octobre 2014 147
18 févr. 2012 à 12:24
C'est surtout que d'après ce qu'il dit il compte faire un include de la variable GET.
Donc obliger de faire passé la variable par un test dans une withe list.

Sinon, bonjour les attaques par Inclusions dynamiques.
0
graffx Messages postés 6506 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 24 mars 2019 1 973
18 févr. 2012 à 10:45
tout a fait.
0