Bonsoir
Aujourd'hui je vous ais concocté un petit tutoriel sur la faille XSS "cross-site scripting"
Comment l'exploiter ?
Comment s'en protéger ?
Tout est ici !
Bonne lecture
La Faille XSS "cross-site scripting" c'est quoi ?
La faille XSS, a l’origine CSS (Cross Site Scripting) changé pour ne pas confondre avec le CSS des feuilles de style (Cascading Style Sheet), est un type de faille de sécurité des sites Web, que l’on trouve dans les applications Web mal sécurisé.
Le principe de cette faille est d’injecter un code malveillant en langage de script dans un site web vulnérable, par exemple en déposant un message dans un forum qui redirige l’internaute vers un faux site (phishing) ou qui vole des informations (cookies).
La faille XSS permet d’exécuter des scripts du coté client. Ceci signifie que vous ne pouvez exécuter que du JAVASCRIPT, HTML et d’autres languages qui ne vont s’exécuter que chez celui qui lance le script et pas sur le serveur directement, je laisse votre imagination vous donner des idées.
Comment détecter la faille XSS ?
Les XSS sont très répandue sur le net, plus précisément dans les forums, livres d’or et les moteurs de recherches,
La détection de la présence d’une faille XSS peut se faire par exemple en entrant un script Javascript dans un champ de formulaire ou dans une URL :
1
<script > alert (Hack) </script >
Si une boîte de dialogue apparaît, on peut en conclure que l’application Web est sensible aux attaques de type XSS.
Pour bien comprendre le principe, rien ne vaut un exemple.
Supposons le code suivant :
1 <center>
2 <?php if (isset($_GET['mot_recherche']))
3 {
4 echo "Vous recherchez le mot suivant: ".$_GET['mot_recherche'];
5 }?>
6
7 Recherche:
8 <form method="get" action="XSS.php">
9 <input type="text" name="mot_recherche"/>
10 <input type="submit" name="Submit" value="Envoyer" />
11 </form> </center>
Sur un navigateur web cela donnerait :
Aucune variable n’a été transmit en GET donc la page n’affiche que « Recherche ». Si maintenant je tape « Justin Bieber » et je valide cela me donne « Vous recherchez le mot suivant: Justin Bieber »
Jusqu’à maintenant tout marche bien, mais que se passe-t-il si je tape <script>alert(‘Hack’)</script> dans recheche, le code JavaScript tapé dans recherche est ainsi exécuté. Comme ça on peut conclure que cette application contient une faille XSS.
Echapper les filtres
Dans la réalité, ça ne marche pas toujours comme ça, les développeurs web ont conscience de cette attaque, alors ils ont développé des méthodes pour sécuriser leurs applications web contre cette faille, je peux par exemple citer magic_quote_gpc.
Dans cette parti, je vais vous montrer comment bypasser quelques filtres :
magic_quote_gpc : Lorsque les magic_quotes sont activées, tous les caractères ‘ (apostrophes), » (guillemets), \ (antislash) et NULL sont donc échappés par un antislash.
Par exemple si je tape
1 <script> alert("Hack")</script>
Il devient:
1 <script>alert(\'hack\')</script>
Donc comment passer ceci ? Et bien après une bonne réflexion sur le problème, il nous vient que si le site échappe les apostrophes par un antislash alors grâce à elles on va pouvoir exécuter notre code mais comment ?
Tout simplement nous allons utiliser la méthode String.fromCharCode(). Cette méthode crée une chaîne de caractères à partir d’une série de code ASCII. Pour cela je vais utiliser Hackbar, un plugin Firefox.
Apres ca nous donne
1 <script>alert(String.fromCharCode(104, 97, 99, 107))</script>
et miracle ça marche ! icon biggrin Faille XSS, comment l'exploiter et sen protéger
Technique d’Obfuscation : Ce filtre, par exemple bloque les mots suivants:
script
alert
Ici si nous mettons <script>alert(‘Hack’)</script> le site vas nous donner comme message alert() car il va enlever tout les <script> et </script>.
Alors pour bypasser ce filtre nous allons juste changer <script> par <scrscriptipt> et alert par alealertrt
comme ceci :
1<scr < script >ipt > alealertrt () </scr </ script >ipt >
Une fois les bannières enlevées ça nous donne :
1<script> alert("Hack")</script>
et ça marche encore ! icon smile Faille XSS, comment l'exploiter et sen protéger
Source :
Aujourd'hui je vous ais concocté un petit tutoriel sur la faille XSS "cross-site scripting"
Comment l'exploiter ?
Comment s'en protéger ?
Tout est ici !
Bonne lecture
La Faille XSS "cross-site scripting" c'est quoi ?
La faille XSS, a l’origine CSS (Cross Site Scripting) changé pour ne pas confondre avec le CSS des feuilles de style (Cascading Style Sheet), est un type de faille de sécurité des sites Web, que l’on trouve dans les applications Web mal sécurisé.
Le principe de cette faille est d’injecter un code malveillant en langage de script dans un site web vulnérable, par exemple en déposant un message dans un forum qui redirige l’internaute vers un faux site (phishing) ou qui vole des informations (cookies).
La faille XSS permet d’exécuter des scripts du coté client. Ceci signifie que vous ne pouvez exécuter que du JAVASCRIPT, HTML et d’autres languages qui ne vont s’exécuter que chez celui qui lance le script et pas sur le serveur directement, je laisse votre imagination vous donner des idées.
Comment détecter la faille XSS ?
Les XSS sont très répandue sur le net, plus précisément dans les forums, livres d’or et les moteurs de recherches,
La détection de la présence d’une faille XSS peut se faire par exemple en entrant un script Javascript dans un champ de formulaire ou dans une URL :
1
<script > alert (Hack) </script >
Si une boîte de dialogue apparaît, on peut en conclure que l’application Web est sensible aux attaques de type XSS.
Pour bien comprendre le principe, rien ne vaut un exemple.
Supposons le code suivant :
1 <center>
2 <?php if (isset($_GET['mot_recherche']))
3 {
4 echo "Vous recherchez le mot suivant: ".$_GET['mot_recherche'];
5 }?>
6
7 Recherche:
8 <form method="get" action="XSS.php">
9 <input type="text" name="mot_recherche"/>
10 <input type="submit" name="Submit" value="Envoyer" />
11 </form> </center>
Sur un navigateur web cela donnerait :

Aucune variable n’a été transmit en GET donc la page n’affiche que « Recherche ». Si maintenant je tape « Justin Bieber » et je valide cela me donne « Vous recherchez le mot suivant: Justin Bieber »
Jusqu’à maintenant tout marche bien, mais que se passe-t-il si je tape <script>alert(‘Hack’)</script> dans recheche, le code JavaScript tapé dans recherche est ainsi exécuté. Comme ça on peut conclure que cette application contient une faille XSS.

Echapper les filtres
Dans la réalité, ça ne marche pas toujours comme ça, les développeurs web ont conscience de cette attaque, alors ils ont développé des méthodes pour sécuriser leurs applications web contre cette faille, je peux par exemple citer magic_quote_gpc.
Dans cette parti, je vais vous montrer comment bypasser quelques filtres :
magic_quote_gpc : Lorsque les magic_quotes sont activées, tous les caractères ‘ (apostrophes), » (guillemets), \ (antislash) et NULL sont donc échappés par un antislash.
Par exemple si je tape
1 <script> alert("Hack")</script>
Il devient:
1 <script>alert(\'hack\')</script>
Donc comment passer ceci ? Et bien après une bonne réflexion sur le problème, il nous vient que si le site échappe les apostrophes par un antislash alors grâce à elles on va pouvoir exécuter notre code mais comment ?
Tout simplement nous allons utiliser la méthode String.fromCharCode(). Cette méthode crée une chaîne de caractères à partir d’une série de code ASCII. Pour cela je vais utiliser Hackbar, un plugin Firefox.

Apres ca nous donne
1 <script>alert(String.fromCharCode(104, 97, 99, 107))</script>
et miracle ça marche ! icon biggrin Faille XSS, comment l'exploiter et sen protéger
Technique d’Obfuscation : Ce filtre, par exemple bloque les mots suivants:
script
alert
Ici si nous mettons <script>alert(‘Hack’)</script> le site vas nous donner comme message alert() car il va enlever tout les <script> et </script>.
Alors pour bypasser ce filtre nous allons juste changer <script> par <scrscriptipt> et alert par alealertrt
comme ceci :
1<scr < script >ipt > alealertrt () </scr </ script >ipt >
Une fois les bannières enlevées ça nous donne :
1<script> alert("Hack")</script>
et ça marche encore ! icon smile Faille XSS, comment l'exploiter et sen protéger
Source :
Vous devez être inscrit pour voir les liens ! Inscrivez-vous ou connectez-vous ici.
Dernière édition par un modérateur: