Descripción

This lab contains a stored cross-site scripting vulnerability in the comment functionality.

To solve this lab, submit a comment that calls the alert function when the comment author name is clicked.

Stored XSS into onclick event with angle brackets and double quotes HTML-encoded and single quotes and backslash escaped writeup

Al entrar en el laboratorio veremos un Blog. Iremos a una entrada cualquiera con ‘View post’. Allí tendremos el formulario vulnerable a XSS. Al intentar inyectar el código JavaScript en el nombre y rellenar el formulario con otros datos, vemos cómo se forma el comentario en la página:

Nota: El principal motivo por el que esto no funciona es porque el laboratorio codifica como HTML ‘<‘ y ‘>’.

Con lo cual, se puede hacer la inyección directamente en la URL. El problema es que no podremos hacerlo directamente con ‘ ‘ ‘, dado que la aplicación web pondrá ‘\’ delante para evitar su funcionalidad especial. Sí que podemos codificar como HTML las comillas simples, de la siguiente manera:

http://test&apos;-alert(1)-&apos;

Al hacerlo así, pasamos el filtro del formulario (http://test) y el filtro del servidor (&apos;). Luego cuando el servidor nos devuelva la página, el navegador transformará automáticamente &apos; a ‘. Completando así el laboratorio:

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *