web-dev-qa-db-fra.com

Existe-t-il un moyen d'exécuter XSS dans une balise HTML img avec SVG?

Existe-t-il une technique de travail pour exécuter XSS dans les navigateurs modernes en utilisant un fichier SVG affiché sur une page Web avec un <img src=""> tag?

Je connais un moyen d'exécuter sans <script> tag, mais je ne sais pas comment charger un fichier en utilisant SVG ou quoi que ce soit d'autre, car XML se casse lorsque j'essaie d'utiliser différentes balises pour faire fonctionner mon XSS.

Est-ce réellement possible?

5
Mega

Non ce n'est pas. Bien que les fichiers SVG puissent contenir JS (voir this ), ceux-ci ne seront exécutés que si:

  1. l'utilisateur visite directement le .svg fichier dans leur navigateur
  2. l'image est intégrée dans <embed> Mots clés.

Les navigateurs modernes n'exécuteront jamais de scripts dans les SVG s'ils se trouvent dans <img> Mots clés.

Et même dans les deux cas ci-dessus, le serveur peut fournir des en-têtes CSP qui arrêtent l'exécution de ces scripts.

6
undo