Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Seguridad Web XSS y BeEF

5,334 views

Published on

Presentación de seguridad web, donde se muestra el impacto de los cross-site scripting con la herramienta beEF

Published in: Technology

Seguridad Web XSS y BeEF

  1. 1. www.pentester.es SEGURIDAD WEB: Cross-Site Scripting Autor: José Miguel Holguín
  2. 2. Agenda  Agenda  Introducción  Cross-Site Scripting  Demo  Contramedidas y Conclusiones  Preguntas
  3. 3. Introducción (I) : Tendencia  Todos los días interactuamos con gran cantidad de aplicaciones donde un alto porcentaje son aplicaciones Web (en el trabajo, en casa, etc.).  Ley 11/2007 -> Obliga a la Administración a transformase a partir del 1 de enero de 2010 en una administración electrónica (e- Administración).
  4. 4. Introducción (II) - Complejidad  El aumento de funcionalidad deriva en un aumento de complejidad de las aplicaciones Web.
  5. 5. Introducción (III) - OWASP Top Ten -2010 RC OWASP Top 10 – 2007 (Previous) OWASP Top 10 – 2010 (New) A2 – Injection Flaws A1 – Injection A1 – Cross Site Scripting (XSS) A2 – Cross Site Scripting (XSS) A7 – Broken Authentication and Session Management A3 – Broken Authentication and Session Management A4 – Insecure Direct Object Reference A4 – Insecure Direct Object References A5 – Cross Site Request Forgery (CSRF) A5 – Cross Site Request Forgery (CSRF) <was T10 2004 A10 – Insecure Configuration Management> A6 – Security Misconfiguration (NEW) A10 – Failure to Restrict URL Access A7 – Failure to Restrict URL Access <not in T10 2007> A8 – Unvalidated Redirects and Forwards (NEW) A8 – Insecure Cryptographic Storage A9 – Insecure Cryptographic Storage A9 – Insecure Communications A10 – Insufficient Transport Layer Protection A3 – Malicious File Execution <dropped from T10 2010> A6 – Information Leakage and Improper Error Handling <dropped from T10 2010>
  6. 6. Cross-Site Scripting (I): Descripción  ¿Qué es un cross-site scripting?  Un cross-site scripting ocurre por una falta de validación y tratamiento de los datos de entrada a la aplicación web; lo que es aprovechado por los atacantes para realizar inyecciones de código script (javascript, VBscript, etc.).  Posteriormente estos datos son enviados al navegador del cliente.  Tipos de cross-site scripting  Almacenado: Los datos sin filtrar son almacenados en una base de datos.  Reflejado: Los datos sin filtrar que vienen del atacante son reflejados desde una entrada en la aplicación web (campo de un formulario, campo hidden, etc.).  Ejemplos básicos de cross-site scripting  “><script>alert(“XSS”)</script>  "><img src="x:x" onerror="alert(0)">  "><iframe src="javascript:alert(0)">
  7. 7. Cross-Site Scripting (II): Ejemplo  Formulario de ejemplo • Código fuente de la aplicación web stripslashes: filtra el carácter “” mysql_real_scape_string: filtra los caracteres x00, n, r, , ', " y x1a Inserción de los datos en la base de datos
  8. 8. Cross-Site Scripting (III): Ejemplo
  9. 9. Cross-Site Scripting (IV): XSSV  Características de un Cross-Site Scripting Virus (xssv):  Independiente de la plataforma  No se ve afectado por la configuración habitual de los firewalls  Pueden tener un impacto importante sobre la continuidad de Internet  DDoS  Spam  Propagación de exploits para navegadores  El día 11 de abril de 2009: El gusano Mikkey se propaga por twitter.com, infectando alrededor de 10.000 tweets.  El día 28 de junio de 2008 el portal justin.tv es víctima de un xssv.
  10. 10. Cross-Site Scripting (V): Herramienta BeEF  ¿Qué es BeEF?  BeEF es un framework para realizar ataques al navegador del cliente a partir de un Cross-site Scripting.  ¿Cómo funciona BeEF? Atacante Aplicación Web 3. La aplicación envía al cliente el script que apunta a 2. El cliente accede a la beefmagic.js.php aplicación Web Cliente
  11. 11. Cross-Site Scripting (VI): Módulos de BeEF  Módulos de la herramienta BeEF = ¿Qué puedo hacer con BeEF?
  12. 12. Cross-Site Scripting (VII): Interfaz de BeEF  Interfaz de gestión de BeEF 4 3 1 2
  13. 13. Demo
  14. 14. Contramedidas y conclusiones  Contramedidas  La aplicación debe filtrar de manera adecuada todo lo que no sea de necesario en el contexto HTML.  Construir una “lista blanca” es una solución para mitigar los XSS. Pero no es una solución total dado que existen aplicaciones que requieren de caracteres especiales (webmail, etc.)  Realización de revisiones web para detectar los posibles XSS.  A nivel de administración es posible implantar medidas anti-xss como:  mod_security  PHPIDS  Conclusiones  Los ataques de XSS poseen un impacto importante sobre los usuarios de aplicaciones web.  Es posible crear una red de zombie’s de manera sencilla y rápida, a través de XSS con la consecuencias que esto conlleva.  La responsabilidad recae de la mano de los responsables de la aplicación web.
  15. 15. Documentos y Enlaces de referencia  Enlaces  http://ha.ckers.org/xss.html  http://www.xssed.com/  http://www.owasp.org/index.php/Cross-site_Scripting_%28XSS%29  http://www.owasp.org/index.php/Data_Validation  Documentos  https://www.owasp.org/images/8/89/OWASP_Testing_Guide_V3.pdf
  16. 16. ¿Preguntas?

×