PAGE D'INDEX

codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 - 11 févr. 2003 à 22:58
cs_nossoctoruss Messages postés 126 Date d'inscription samedi 28 novembre 2009 Statut Membre Dernière intervention 9 juin 2013 - 11 avril 2010 à 18:24
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/13129-page-d-index

cs_nossoctoruss Messages postés 126 Date d'inscription samedi 28 novembre 2009 Statut Membre Dernière intervention 9 juin 2013
11 avril 2010 à 18:24
mais mdr,les failles,on s'en fou,on a pas forcément un hacker qui va go sur notre site et ce dire tien,j'ai bien envie de le hacker,de plus,la source php est non visible,ce qui fait donc qu'on ne peut pas savoir si il ya un include
dites moi si je me trompe,mais je suis assez sure de ceci...
cs_Tortuegeniale Messages postés 1123 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 26 juin 2008
19 avril 2005 à 12:03
Suffit de vérifier le répertoire ou se trouve le script index et le répertoire de la page incluse. Si c pas le meme tu inclus pas.

Cette source et un exemple, ensuite libre au gens de l'adapter a la configuration de leur serveur.
h0s Messages postés 1 Date d'inscription vendredi 12 mars 2004 Statut Membre Dernière intervention 18 avril 2005
18 avril 2005 à 17:50
hmm dites si jme trompe mais si vous créer un hebergement sur le meme serveur alors

page=../../../../home/monlogin/monscript

sera executer puisque file exist fonctionnera ... et monscript est en php

donc le contenu de monscript.php sera executer sur ton site et non le mien ...

listing, upload, execution arbitraire de cmd php & co ..

le mieux pour le systeme d'include est comme dit plus haut switch case ou des if then else

rien n'empeche de rajouter toutes ces protections cités auparavant pour les paranos ^^

if ($page=='mehome') { include ('home.php'); }
elseif (^page=='actus') { include('actualites.php'); }
else { include('home.php'); }

voila vous pouvez addslashes la variable $page au prealable biensur ..

bon coding.
h0s.
gun313 Messages postés 9 Date d'inscription mercredi 5 novembre 2003 Statut Membre Dernière intervention 5 novembre 2003
5 nov. 2003 à 19:53
bon oublier tout mes message précédent c'étais un bug d'affiache sur mon ordi ce qui fait que la fleche mappraissai avec des signe bizzare............ dsl
gun313 Messages postés 9 Date d'inscription mercredi 5 novembre 2003 Statut Membre Dernière intervention 5 novembre 2003
5 nov. 2003 à 19:37
mince les caractère marche pas j'ai l'impression :
"Pour l'appeler mettez sur le lien ==> http://site/index.php?page=tuto" je n'ai aps très bien compris cette phrase merci de me répondre.... par pitiéééééééééééé lol
gun313 Messages postés 9 Date d'inscription mercredi 5 novembre 2003 Statut Membre Dernière intervention 5 novembre 2003
5 nov. 2003 à 19:32
j'ai pas très bien compris ou il fallait mettre "==>"
gun313 Messages postés 9 Date d'inscription mercredi 5 novembre 2003 Statut Membre Dernière intervention 5 novembre 2003
5 nov. 2003 à 15:41
salut, je suis débutant et j'aimerai savoir sur ton script ce qu'on est censé mettre a la place de "htmlspecialchars" ou alors si faut aps toucher ca lol et aussi ce qu'est le cross scripting ?
merci......
cs_Tortuegeniale Messages postés 1123 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 26 juin 2008
5 juil. 2003 à 17:00
popo> nan aucun pb

Aspect> % ne peux pas passer a cause de l'expression reguliere
thepopolinux Messages postés 245 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 21 juin 2004
5 juil. 2003 à 03:10
ça marche alors ou pas avec le caract nul ... ?
falé y pensé !

@++
cs_Aspect Messages postés 47 Date d'inscription mercredi 9 octobre 2002 Statut Membre Dernière intervention 23 mars 2004 1
5 juil. 2003 à 02:38
aie je m'excuse de mon message, la prochaine fois je vérifiré à 2 fois, j'me suis un tit peu embrouiller :s
cs_Aspect Messages postés 47 Date d'inscription mercredi 9 octobre 2002 Statut Membre Dernière intervention 23 mars 2004 1
5 juil. 2003 à 02:25
hmm
pas très top tout sa :)
Regardes, je viens de tester, et sa marche, fé ?page=index.html%00 (avec %00 qui est le caractère null, si ta page index.html existe bah sa linclus, prtant c'est pas *.php hein ;)

Voila doit i'avoir d'autre tit truc mais le mieux je pense est
- soit le switch
- soit de définir chak page par un identifiant

Pis au lieu de marquer "Erreur machin" à l'ouverture du site (index.php) une tite page d'accueil nan ? ;)

Vouala dsl si j'arrive 1 mois trop tard :))

++
asp
thepopolinux Messages postés 245 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 21 juin 2004
7 juin 2003 à 13:12
la fonction php pour effacer un fichier existe, j'en suis persuadé et je la connais, mais c'est QUE DU PHP, rien ne peux s'inclure en PHP dans les pages, ni du javascript d'ailleurs donc je voi pa le blem .... (en javascript c'est impossible de suppr un fichier ou alors jé vrémen loupé des étapes).
Enfin en conclusion sur un site sans faille aparante, sans autorisation pour accéder à la racine du serv ... et aux fichier de config, AUCUN RISQUE !

Donc même si c'est simple je met 10/10 :)
RockmanX Messages postés 109 Date d'inscription dimanche 23 décembre 2001 Statut Membre Dernière intervention 26 octobre 2007
7 juin 2003 à 10:01
Euh, j'avoue que le truc file_exists() protège de l'attaque... Mais pour effacer tu peux faire un fonction que je retrouve plus la sur le moment, qui supprime les fichiers... j'avais vu sa je crois sur php.net...
conclusion le code est sur.... désolé pour l'erreur
cs_Tortuegeniale Messages postés 1123 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 26 juin 2008
6 juin 2003 à 22:54
popo> laisse tomber y en a qui lisent un tuto sur la sécu php et qui se dise "pro" mouarf

Depuis j'ai meme mis des expressions régulieres pour filtrer le nom du fichier.

Donc soyons clair : Ce script est sur, y a peut etre une faille mais moi je la connais pas, mais une chose est sur :
- Ce n'est pas que cette page qui doit etre sécurisé, c le site tout entier alors les gens qui se croyent super malin hackerz chais pas koi et tout le tralala, si vous etes si fort, je veux un exemple, y a rien de plus simple pour de grands programmeurs comme vous ...
thepopolinux Messages postés 245 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 21 juin 2004
6 juin 2003 à 20:03
Moi je me demande si c'est vraiment de l'insécurité :
- dans les nouveaux script php la faille include (inclure un fichier distant dans une page locale) est résolu
- le fait de faire file_exists() vérifie si une page est présente, si la page est disante elle sera considérée comme non existante
- on n'affiche pas sur la page le contenu de $page donc on évite l'inclusion de script

donc les seules failles probables sont :
- inclure un fichier local, normalement si c'est que des .php ils sont interprétés donc il n'y auras pas de résultat (justa la page : pas de source)
- le buffer overflow dans la variable sur les anciennes versions de php

@++
Ps : dites moi ce que vs en pensez, et pour RockManX je demande un démo pour : "si t des fichier en chmod 777, je peux te les effacer" ça me feré bien chier kan mem :)
cs_ErAzEr Messages postés 42 Date d'inscription lundi 9 octobre 2000 Statut Membre Dernière intervention 12 novembre 2003
16 mai 2003 à 13:07
file_exists("$page.php") ne résoud pas grand chose, en effet il suffit d'avoir une page php sur son site web pour pouvoir l'inclure.

vous me direz non, hé bien si..

il suffit de faire passer le code php pour du texte (pour notre site) afin qu'il ne soit pas exécuter et arriver au serveur cible il sera pris pour du php et donc exécuter sur le serveur site

je ne rentre pas dans les détails mais c'est la le principe, qu'on me corrige si je me trompe biensur :)
cs_Tortuegeniale Messages postés 1123 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 26 juin 2008
13 avril 2003 à 12:09
la fonction "file_exists" ne test pas les fichiers distant donc si t'inclus un fichier distant => message d'erreur
RockmanX Messages postés 109 Date d'inscription dimanche 23 décembre 2001 Statut Membre Dernière intervention 26 octobre 2007
12 avril 2003 à 12:25
Mais arrête t'ABUSES...
Imagin le type il include une page de son server ou ya un code qui met juste
<?
echo "<SCRIPT LANGUAGE='JavaScript'>alert('Oulala la faille');</SCRIPT>";
?>
Ca va afficher... la c pas trop grave, mais si t des fichier en chmod 777, je peux te les effacer, je peux aussi voir le nom de tes fichiers et si a ce trouve même les explorer... après ya la secu du server qui entre en jeu...
Donc ton code... DANGEREUX
fait un switch($page) {
case "tuto":
include('tuto.php4');
break;
}
cs_Tortuegeniale Messages postés 1123 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 26 juin 2008
17 févr. 2003 à 10:16
a utiliser, il est protégé contre les failles les plus connues et ce que dit matrey c faux :)
cs_bastar Messages postés 19 Date d'inscription jeudi 29 août 2002 Statut Membre Dernière intervention 22 décembre 2002
17 févr. 2003 à 01:24
a utuliser ou non ?
cs_Tortuegeniale Messages postés 1123 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 26 juin 2008
12 févr. 2003 à 20:58
bah montre moi précisément la faille dans le script ;-)

ok il est pas parfait, loin de la meme mais il est pas aussi dangeureux ke tu le dis, facile de critiquer sans preuve ...
matrey Messages postés 399 Date d'inscription jeudi 31 janvier 2002 Statut Membre Dernière intervention 6 septembre 2004
12 févr. 2003 à 19:59
le plus sur est de prédéfinir les valeurs admises, pour éviter les dérives, car include est très dangereux vu qu'il accède aussi au contenu normalement bloqué par un .htaccess avec deny from all...
On a beau adapter... c'est tout le script qu'il faut changer...
Donc note pour les NEWBIES : ATTENTION !!!!!!!!!!!!!!!! DANGEREUX !!!!!!!!!!
cs_Tortuegeniale Messages postés 1123 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 26 juin 2008
12 févr. 2003 à 10:14
t'entend koi par valeur de page ?
cs_koko Messages postés 654 Date d'inscription lundi 14 janvier 2002 Statut Membre Dernière intervention 20 février 2005
12 févr. 2003 à 07:18
le .php rajoute de la sécurité mais pas tout... il faut vérifié la valeur de page...
cs_Tortuegeniale Messages postés 1123 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 26 juin 2008
12 févr. 2003 à 00:06
c écrit en bas de la source en plus lol et surtout en haut de la source c écrit "C'est tout simple comme page, ensuite c a vous de l'adapter a votre site" donc voila :-)
cs_Tortuegeniale Messages postés 1123 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 26 juin 2008
12 févr. 2003 à 00:02
nan le include("$page.php"); résout le probleme ;-)
codefalse Messages postés 1123 Date d'inscription mardi 8 janvier 2002 Statut Modérateur Dernière intervention 21 avril 2009 1
11 févr. 2003 à 22:58
Oulaa l'ami.
Tu nous présente la une magnifique faille web !!!
La Faille include !!
Cherche des informations dessus. Un simple if( file_exists()) ne suffit absolument pas !!!! Avec, je peux récuperer le HtPasswd, bah ui, c un fichier qui existe sur le serveur, et qui en plus, contient les pass qui suffira avec un simple programme pour décrypter le pass ....
A ne pas utiliser sur les sites !
Rejoignez-nous