55879Fermer55881
MeowcateLe 12/09/2018 à 13:36
Folco (./55877) :
Comment peut-on exploiter une faille XSS ? Si je comprends bien, ça conssite à faire exécuter par un site un script hébergé sur un autre. Mais ça demande dans un premier temps un accès au site cible pour faire une première modification du code, permettant ensuite l'appel d'un script externe, non ?
Je te donne un exemple simple. Imagine que yN ne soit pas protégé contre les failles XSS.
À ce moment, je vais écrire dans mon message par exemple <script>alert("Hello World")</script>. Ce qui fait que chaque fois que quelqu'un chargera une page où se trouve mon message, il aura une alerte JS.
Maintenant, si je la mets plutôt dans ma signature, c'est sur toutes les pages où j'aurais déjà posté par le passé. Le but de la faille XSS est de faire entrer des données non-filtrées.
Partant de là, oublions le alert et insérons plutôt du code distant. Cela me permet de contrôler l'insertion via le code distant (le vider pour rester discret, l'updater sans avoir à exploiter de nouveau la faille...).

C'est pour cela qu'on parle de faille XSS : la majeure partie du temps, c'est fait pour appeler un code distant. Mais la racine de la faille, c'est l'insertion du code qui permet d'appeler le code distant.
Ceci étant, ça reste du coup cantonné ici à Javascript, à HTML (si au lieu d'un <script> on insère un <iframe>), à du CSS, du média, etc, mais pas au serveur. À moins que les devs soient vraiment très cons pour avoir demandé à leur code serveur d'evaluer ce que retourne leur JS. Autrement dit, il faut qu'il y ait un espace où les victimes puissent voir la section où les données pirates apparaissent.
Ceci étant au final, si tu arrives à insérer du code via XSS, tu peux virtuellement tout te permettre envers le client tant qu'il est sur ce site, jusqu'à le faire naviguer dans une iframe totale sur une fausse copie du site pour enregistrer la moindre action, la moindre info tapée.

J'ai souvenir, il y a longtemps (sur un forum FR dédié à l'éditeur de cartes de Warcraft 3, pour donner une idée), un des membres s'est amusé à tester une faille XSS en modifiant sa signature pour... déclencher des commandes ActiveX. Grâce à la magie de IE 6, pour les fous qui l'utilisaient, afficher la signature de ce membre appelait ActiveX, qui enclenchait alors une action Windows... qui rebootait la machine cliente. C'est en parti pour ce genre de conneries que ActiveX était très décrié.
Ce n'était pas un connard, il a rapidement modifié sa sign, c'était plus une POC, et ça a poussé du monde à passer à Firefox.