Challenge faille include [Fermé]

Signaler
-
 Gugelhupf -
bonjour,
voila mon probleme.
je bloque sur un challenge.
il s'agit d'une faille include.
voici le lien:

http://atomicftp.free.fr/Challenge/hacking/epreuve1/index.php?page=napoleon.php

il faut, à l'aide d'une commande genre ../../ remonter dans l'url et trouver une page ou serait le pass de l'epreuve.
je ne sais pas si c'est bien clair ce que je dis.
j'ai essayé 1000 trucs differents. des/admin, des /htpasswd...rien à faire.
je ne sais meme pas a quel endroit de l'url il faut remonter.est-ce avant le = ou apres?
en tous cas merci à ceux qui prendront 5min pour me repondre.

22 réponses

Messages postés
489
Date d'inscription
samedi 23 juin 2007
Statut
Membre
Dernière intervention
19 juin 2011
218
Pour la petite histoire générale, que tout le monde sache bien de quoi on parle, il existe un tas de failles de sécurité en PHP. On connait les failles d'injection (à l'aide d'un formulaire on peut injecter une requête SQL, du fait que le script PHP va concaténer ça bêtement plutôt que de s'attendre à recevoir une simple valeur et éliminer tout le reste) mais on en a plein d'autres, dont une fort connue appelée "faille include".

Include est avant tout une instruction qui permet d'inclure (donc d'insérer) un bout de code dans la page actuelle depuis un autre fichier (je parle de code mais ce n'est que du texte, on peut inclure n'importe quoi comme texte en théorie, dont du code PHP).

Le problème c'est que dans un premier temps, on pouvait inclure des ressources venant de n'importe où sur Internet. Ce qui permet en fait d'injecter un code malsain sur sa propre page. En fait il est bon de savoir que si on ne sait pas accéder à une ressource sur un serveur distant (par exemple parce qu'on a protégé un répertoire avec un .htaccess ou que sais-je), le script sur le serveur, lui, peut accéder à tout ce qu'il veut. Le script serveur mais également le code inclus (donc injecté innocentement) par un vilain méchant de façon tout à fait naturelle. A partir de là il prend un grand contôle du serveur... tout ce que le PHP est capable de faire en local, le script externe inclus pourra le faire puisqu'ils ne font plus qu'un.

L'intérêt d'inclure un fichier venant d'Internet était par exemple de pouvoir utiliser un package de fonctions déjà toutes faites, c'est pour ça que ça avait été mis en oeuvre. PHP5 n'autorise plus ceci par défaut. Donc là chacun est obligé (ou plutôt conseillé) de télécharger tout package en local sur son serveur.

Mais comme notre ami Fab va s'en rendre compte, la faille include est à double tranchant, avec moins bien d'efforts qu'il ne l'imagine il va pouvoir remonter d'un répertoire (alors que normalement on ne sait pas y accéder en indiquant directement l'URL) justement au travers de cette faille include.
7
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Un petit peu de pratique maintenant, voici ce qu'il ne faut pas faire pour avoir une faille include :
<?php
include($_GET['page']);


En effet l'utilisateur peut modifier l'URL, y écrire tout ce qu'il désire, par conséquent ne mettez donc pas de variables dans vos include.
Alex ....

tu t'es pas dit que des CENTAINES d'internautes qui seraient tombés sur ce topic, aurait eux aussi envie de trouver la solution ???

et bah non c'est dommage pour eux, t'as posté la solution et t'as détruit le plaisir des futurs internautes qui aimeraient trouver la faille eux même !

tu voulais peut-etre faire le fier,le brave,le "hacker",mais bon pour une faille de ce niveau la,ca n'en valait pas la peine.

Des indices aurait été acceptables, mais la t'as carément donné la solution, c'est plus marrant. Ce topic ne va même plus vivre...

bref, bonne journée à tous, et encore merci Alex pour ton acte héroique. Faudrait jamais te confier un secret toi. Encore heureux que c'est pas toi qui trie les bulletins de vote de l'election présidentielle, et que ca soit pas toi qui présente qui veut gagner des millions aussi, alors la tu passerait pour un boulet devant des millions de telespectateurs apres avoir donné toutes les réponses avant d'avoir laissé le temps au candidats de répondre, tellement t'aime faire l'intelligent lol.

@+++
Messages postés
271
Date d'inscription
dimanche 26 décembre 2010
Statut
Membre
Dernière intervention
5 novembre 2020
4
carrément héroïque
Messages postés
1189
Date d'inscription
dimanche 7 octobre 2007
Statut
Membre
Dernière intervention
12 juin 2020
430
Comment t'agresse ! pour info, le premier résultat de google sur les mots clés "faille include" renvois vers: http://www.ghostsinthestack.org/article-16-la-faille-include.html Qui est 100x plus détaillé que la petite présentation du type de faille faite ce dessus,,,
Messages postés
489
Date d'inscription
samedi 23 juin 2007
Statut
Membre
Dernière intervention
19 juin 2011
218
Hum...

Dans : http://atomicftp.free.fr/Challenge/hacking/epreuve1/index.php?page=napoleon.php

Le "=" et d'ailleurs tout ce qui suit le "?" sont uniquement des options à fournir à la page index.php, donc ton URL revient à :

http://atomicftp.free.fr/Challenge/hacking/epreuve1/index.php


Maintenant ça dépend dans quelle page tu as placé ton include. Si dans index.php (page placée dans le répertoire "epreuve1"), à chaque fois que tu fais "../" tu remontes d'un niveau (là tu arrivaras au dossier "hacking" et ainsi de suite). Si dans "napoleon.php", il faut savoir où est placé ce fichier et te déplacer à l'aide des mêmes méthodes...

Maintenant quand tu remontes d'un niveau il faut savoir ce que tu cherches. C'est certain que tu tombes sur un dossier dans tous les cas, donc à toi de lister les fichiers pour voir si tu ne trouves pas ton fameux fichier "pass").
hum..

bonjour et merci pour les reponses..
au risque de passer pour un n00b, mais c'est pas encore tres clair tout ca....tu m'as aidé je le reconnais mais
je n'arrive pas a finir cette epreuve.
pourtant j'en ai fini de niveau superieur mais je cale completement sur celle la.
et d'apres ce que j'a pu lire un peu partout, je vais m'en vouloir quand je trouverai car c'est vrailent facile!

quant à nomdecode220, en gros faut trouver une page dans laquelle il ya le pass de l'epreuve.
j'y retourne..ca m'enerve de bloquer la dessus
Messages postés
489
Date d'inscription
samedi 23 juin 2007
Statut
Membre
Dernière intervention
19 juin 2011
218
Bonjour :D

Ah ok en fait t'essaies de pirater le site pour tricher dans le jeu ? Pas cool ça ^^
le jeu c'est e pirater le site justement!
mais cette faille m'echappe.
je ne comprends pas ou il faut chercher...
Messages postés
489
Date d'inscription
samedi 23 juin 2007
Statut
Membre
Dernière intervention
19 juin 2011
218
Ah ok man, j'ai compris :D

En effet c'est "très con" (quoique fallait quand même le trouver sur Google pour le savoir :D) à trouver... ^^

Je te donne un indice ? Si tu t'étais enregistré sur le site j'aurais pu te le donner par message privé tiens :D
Messages postés
2
Date d'inscription
samedi 11 août 2007
Statut
Membre
Dernière intervention
11 août 2007

a y'est je suis inscrit.
bon..je suis arrivé à l'index du site.
y'a deux dossiers...challenge et session..
mais j'en sais as plus
je veux bien l'indice stp
Messages postés
2
Date d'inscription
samedi 11 août 2007
Statut
Membre
Dernière intervention
11 août 2007

au fait...
c'est bien moi.
mais fab etait deja pris quand je me suis inscrit XD
bonsoir a tous...

fab tu t'es pris la tête pour rien..

c'est trop simple

moi qui suis nul en PHP, et encore pire en HACKING, j'ai trouvé la faille...

tu veux que je te donne la réponse ? mdr

:p
j'ai meme recu le mot de passe tien !

( indice : " kellogs " )

bonne nuit
Messages postés
489
Date d'inscription
samedi 23 juin 2007
Statut
Membre
Dernière intervention
19 juin 2011
218
Il a trouvé ;-)
Messages postés
407
Date d'inscription
lundi 19 mars 2007
Statut
Membre
Dernière intervention
3 mars 2009
46
Vous m'intriguez, les mecs. Doit-on créer une page sur son propre site internet pour que ça fonctionne?

Serge.
Messages postés
489
Date d'inscription
samedi 23 juin 2007
Statut
Membre
Dernière intervention
19 juin 2011
218
Pour trouver la faille, non ^^
Faut juste un peu reflechir...

partir du principe que le site utilise des includes du type " index.php?page=blablabla" ...

et qui dit include dit... heum heum j'ai mal a la george je reviens + tard

:p :p :p

a bientot
Messages postés
407
Date d'inscription
lundi 19 mars 2007
Statut
Membre
Dernière intervention
3 mars 2009
46
Non, désolé. J'ai essayé plusieurs trucs de hackeurs et la faille include ne paraît pas. Mais je ne suis pas un hackeur non plus. Alors.
Serge, n'abandonne pas, tiens un indice :

Faut que t'utilise les commandes pour se "ballader" dans l'arborescence du site...

ca + l'include...

Si tu trouve pas c'est que t'es pas sur le bon site XD

bonne n...matin !
Messages postés
407
Date d'inscription
lundi 19 mars 2007
Statut
Membre
Dernière intervention
3 mars 2009
46
Je ne trouve pas. Mais je connais peu php. De plus, les tests pour voir si la faille est là, flanchent. Je recois toujours: "Page introuvable !!". Peu importe ce que je mets en blabla.
Je vais devoir étudier php un peu. Zut!
http://atomicftp.free.fr/Challenge/hacking/epreuve1/index.php?page=napoleon.php
c simple pourtant la seul fonction que tu puisse utiliser c "../" ki te permet de voir l'arborescense de l'url donc tu dois taper
http://atomicftp.free.fr/Challenge/hacking/epreuve1/index.php?page=../ et la miracle cela fonctionne
Messages postés
407
Date d'inscription
lundi 19 mars 2007
Statut
Membre
Dernière intervention
3 mars 2009
46
Merci. Oui, on m'a donné la solution par message privé. Ça marche parcequ'ils le permettent. Les autres tests pour montrer la faille include ne fonctionnent pas.
Messages postés
1463
Date d'inscription
mardi 25 octobre 2005
Statut
Contributeur
Dernière intervention
29 octobre 2019
419
salut

Peut tu donner le site décrivant tout le challenge ?

Tchuss
Messages postés
407
Date d'inscription
lundi 19 mars 2007
Statut
Membre
Dernière intervention
3 mars 2009
46
Bonjour,
non mais il est pas marrant ce d4v3ng3r? Un robot lanceur de flames. haha!
L'exercice montre que les hack peuvent être vraiment facile. Les hackeurs, pas si futés.

Serge.