Web Security Academy

Cross-site scripting - Lab : Stored XSS into anchor href attribute with double quotes HTML-encoded

Objectif :

  • Créer un hyperlien qui lorsqu'il est cliqué, invoque la fonction alert() ( en Javascript ) dans le site web.

Solution :

En lançant le lab, on se retrouve dans un blog avec des posts publiés.

Lorsqu'on accède à un post, une section commentaire est présente au bas de la page avec la possibilité d'en laisser un.

On va tenter une XSS stockée.

Pour commencer, on va poster un commentaire en remplissant tous les champs et inspecter le code source :

On s'aperçoit qu'une ancre est créée avec l'attribut href égal à la valeur inscrite dans le champ Website et la valeur de la balise égal au champ Name.

On va donc tenter d'écrire "javascript:alert(document.domain)" dans l'attribut href :

On poste le commentaire. Ce qui donne :

D'un point de vue du code source :

On clique sur l'hyperlien Jean et une fenêtre pop-up apparaît :

Le script s'est exécuté et le lab est désormais validé !