1 | Web Attacks Documentación – Web Attack. 2 | Web Attacks Seguridad en Aplicaciones Web Protocolo HTTP Vulnerabilidad XSS Vulnerabilidad CSRF Path Traversal.

Slides:



Advertisements
Presentaciones similares
Presentación – Web Attack
Advertisements

MOVIMIENTO JOVENES DE LA CALLE CIUDAD DE GUATEMALA chi siamo quienes-somos qui sommes-nous who we are attività actividades activités activities scuola.
SIES – SISTEMA INTEGRADO DE EDUCACIÓN SUPERIOR
1 Datos sobre webloggers Datos extraidos de la encuesta a webloggers disponibles en la web de los autores.
Los números del 0 al cero uno dos tres cuatro cinco 6 7 8
1 | Web Attacks Documentación – Web Attack. 2 | Web Attacks Seguridad en Aplicaciones Web Protocolo HTTP Vulnerabilidad XSS Vulnerabilidad CSRF Path Traversal.
1 LA UTILIZACION DE LAS TIC EN LAS MICROEMPRESAS GALLEGAS. AÑO mayo 2005.
1 LA UTILIZACION DE LAS TIC EN LAS PYMES GALLEGAS AÑO de Junio de 2005.
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN EL COMERCIO GALLEGO (Resumen COMERCIO AL DETALLE) Noviembre de 2004.
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN LAS EMPRESAS GALLEGAS ( Resumen PYMES ) Noviembre de 2004.
1 INFORME RESUMEN SOBRE EL NIVEL DE UTILIZACION DE LAS TIC EN LAS EMPRESAS GALLEGAS (MICROEMPRESAS, resultados provisionales) 29 de julio de 2004.
Interfases Contables en CIO
AYUDA A LA FUNCIÓN DOCENTE Internet
Nau Gran dHivern Intr. a la creación y gestión de páginas web Introducción a la web.
Internet y tecnologías web
TEMA 2 MÚLTIPLOS Y DIVISORES
02- Plan Organización Docente v.2 Noviembre 2009 SIES – SISTEMA INTEGRADO DE EDUCACIÓN SUPERIOR.
02- PLAN DOCENTE Febrero 2009 SIES – SISTEMA INTEGRADO DE EDUCACIÓN SUPERIOR.
01- OFERTA FORMATIVA v.2 Noviembre 2009 SIES – SISTEMA INTEGRADO DE EDUCACIÓN SUPERIOR.
CFGM Redes Locales Documentos: Elementos de configuración de una suite de antivirus. Panda Internet Security 2011.
Respuestas Buscando a Nemo.
ABECEDARIO FIGURAS GEOMÉTRICAS NÚMERO
El mecanismo básico de interacción entre el usuario y un sitio web esta dado por el uso de formularios html. El server envía un formulario que el browser.
SIMATICA V2.0. Automatización de Viviendas con Simatic S7-200
C ONFIGURACIÓN C UENTAS D E C ORREO ZTE N281. C ONFIGURACIÓN C UENTAS D E C ORREO ZTE N281 1-Ingrese a menú 2-Ingrese a Mensajes 3-Ingrese a Correo 4-Seleccione.
Técnicas avanzadas de penetración a sistemas
Campus virtual Autoevaluaciones Teletutorías Salas de estudio Clases en línea Contratos didácticos Proyecto E.D.U.F. Universidad Universidad.
1 Reporte Componente Impacto Por Orden Territorial Por Departamento No Disponible ND *Los indicadores para el año 2008 no fueron calculados.
Funciones Excel. Parte 1. Introducción 2 Una función Excel es una fórmula o un procedimiento que se realiza en el ambiente de Visual Basic, fuera de.
Tutorial Proceso de Compra
Web Attacks Mauren Alies Maria Isabel Serrano Sergio Garcia
ADMINISTRACION DE REDES SECUENCIA DE COMANDOS EN SITIOS CRUZADOS(XSS)
Errores comunes al desarrollar websites
Programa para el Impulso a la Implementación del Protocolo IPv6 en Instituciones Vinculadas a RENATA 2012 Servicio FTP.
Phone2Wave-Server Manual de Operación.
Parte 3. Descripción del código de una función 1.
O3 Drill Through. 2 El O3 Drill Through El O3 Drill Through permite : Ver información detallada de aquella resumida en cubos de O3. Asociar con cubos.
EL OSO APRENDIZ Y SUS AMIGOS
"java del lado del servidor" Servlet y JSP Java Server Pages.
50 principios 1. Los clientes asumen el mando.
1 PROYECTO DE PRESUPUESTO DE EGRESOS DE LA FEDERACION 2002 COORDINACIÓN DE POLITICA ECONOMICA GP-PRD.
Ecuaciones Cuadráticas
C REACIÓN DE B LOGS EN ESPOL Profesora: Eva María Mera Intriago Escuela Superior Politécnica del Litoral Impulsando la sociedad del conocimiento Instituto.
¡Primero mira fijo a la bruja!
Curso de PHP Tema 6: Seguridad.
TUTORIAL DE SUBVERSION
Ing. Lorena Ruhl - Marco Rapallini - Javier FabiánMódulo 4: Seguridad y Aplicaciones Web Ing. A. Lorena Ruhl Universidad Tecnológica.
¿Qué es un conjunto? Un conjunto es una colección de objetos considerada como un todo. Los objetos de un conjunto son llamados elementos o miembros del.
Desarrollo de sitios web con PHP y MySQL Tema 7: Seguridad José Mariano González Romano
Índice Sesión I Bloque I (09:30 a 10:30 Horas) Configuración Inicial
Mecanismo de petición y respuesta Prof. Manuel Blázquez Ochando
MSc. Lucía Osuna Wendehake
Calendario 2009 “Imágenes variadas” Venezuela Elaborado por: MSc. Lucía Osuna Wendehake psicopedagogiaconlucia.com Enero 2009.
Estructuras de control
Manual de Procedimientos Procedimiento de ejecución del programa de
Actualización de SP3D (Aspectos generales)
FUNDAMENTOS DE CALIDAD EN LA GESTIÓN PÚBLICA
ADMINISTRACION DE REDES SECUNECIA DE COMANDOS EN SITIOS CRUZADOS(XSS) DIEGO ALEXANDER MADRID DUQUE GABRIEL ANDRES AGUIRRE JARAMILLO INSTITUTO TECNOLOGICO.
WEB VULNERABLE DVWA Universidad de Almería
The OWASP Foundation OWASP AppSec Aguascalientes 2010 Guía de Desarrollo Seguro Francisco Aldrete Miembro de OWASP capítulo Aguascalientes.
ATAQUES POR INYECCION DE CODIGO SQL
UD 1: “Adopción de pautas de seguridad informática” Análisis de las principales vulnerabilidades de un sistema informático. Luis Alfonso Sánchez Brazales.
      Protocolo de transferencia de Hipertexto, empleado para acceder a documentos de hipermedia  El protocolo nació en el CERN, como base.
Introducción a ataques de tipo inyección: Inyección SQL
S EGURIDAD Y A LTA D ISPONIBILIDAD Nombre: Adrián de la Torre López 24/09/ Adrián de la Torre López.
Análisis de las principales vulnerabilidades de un sistema informático. Gabriel Montañés León.
Secuencia de Comandos en Sitios Cruzados XSS
Colegio de Bachilleres Plantel 13 Xochimilco - Tepepan
A NÁLISIS DE LAS PRINCIPALES VULNERABILIDADES DE UN SISTEMA INFORMÁTICO Luis Villalta Márquez.
OWASP APPSEC RIO DE LA PLATA dcotelo13
Transcripción de la presentación:

1 | Web Attacks Documentación – Web Attack

2 | Web Attacks Seguridad en Aplicaciones Web Protocolo HTTP Vulnerabilidad XSS Vulnerabilidad CSRF Path Traversal Null Byte OS Commanding Local File Inclusion Remote File Inclusion Information Disclosure SQL Injection File Upload - Agenda -

3 | Web Attacks HTTP/1.0 definido en RFC 1945 Posee 2 métodos de mensajes: HTTP request [browser -> server] HTTP response [server -> cliente] Métodos: GET, HEAD, POST. No se mantiene el estado en HTTP. Una conexión TCP para cada HTTP request. HTTP/1.1 definido en RFC 2616 Métodos: GET, HEAD, POST, OPTIONS, PUT, DELETE, TRACE, CONNECT. Encabezado Host: indica el nombre del servidor al cual se le realiza el pedido, permite que se utilicen hosts virtuales. No se mantiene el estado en HTTP. Conexiones TCP persistentes por defecto. Características del Protocolo HTTP

4 | Web Attacks GETSolicita la entidad identificada por el URI incluido en el pedido. HEADDe funcionalidad similar al GET, pero el servidor debe devolver solo los headers y no el contenido. POSTPara que el servidor destino reciba la entidad incluida en el request, subordinada al URI indicado. PUTPara que el servidor almacene en el URI indicado, la entidad incluida en la solicitud. OPTIONSSolicita información acerca de los mecanismos de comunicación disponibles, métodos habilitados, etc. DELETEBorra del servidor la URL indicada. TRACESe utiliza para debugging. Definición de Métodos

5 | Web Attacks Planteamos una arquitectura web con los siguientes elementos: Clientes Firewall Cache / Load Balancer Servidor Web Servidor de base de datos Arquitectura Web

6 | Web Attacks En el cuadro que exponemos veremos los principales ataques sobre Aplicaciones Web. Seguridad en Aplicaciones Web

7 | Web Attacks XSS Cross Site Scripting XSS Cross Site Scripting

8 | Web Attacks Es un agujero de seguridad basado en la explotación de vulnerabilidades del sistema de validación HTML. Debemos saber que existe 2 tipos de métodos de un ataque XSS: No persistente Persistente Mediante este agujero de seguridad, podemos obtener del usuario: Predicción de ID de sesión. Robo de Cookies. Ejecución de código malicioso Como contramedida podemos utilizar htmlspecialchars ya que esta función convierte los caracteres especiales que pueden afectar a las etiquetas HTML, como mayor y menor qué, comillas simples y dobles y el carácter &. XSS Cross Site Scripting

9 | Web Attacks XSS Cross Site Scripting Demo - No Persistente XSS Cross Site Scripting

10 | Web Attacks alert(xss) XSS Cross Site Scripting

11 | Web Attacks XSS Cross Site Scripting Demo - Persistente XSS Cross Site Scripting

12 | Web Attacks XSS Cross Site Scripting

13 | Web Attacks XSRF / CSRF XSRF / CSRF Cross Site Scripting

14 | Web Attacks Fuerza al navegador web autenticado de una víctima a enviar una petición a una aplicación web vulnerable, que ejecuta la acción enviada. Al contrario que los ataques XSS, los cuales explotan la confianza que un usuario tiene en un sitio en particular, el CSRF explota la confianza que un sitio tiene en un usuario en particular. Como contramedida podemos utilizar la generación y codificación de un número aleatorio (token) tras el ingreso del usuario en la aplicación, que se almacena en la sesión del usuario. En cada formulario que se le presente al usuario se incluye un campo oculto en el que se escribe este token. A la recepción del formulario en el servidor se comprueba que el token se haya recibido y coincida con el almacenado para el usuario. XSRF / CSRF Cross Site Scripting

15 | Web Attacks XSRF / CSRF Cross Site Scripting Demo XSRF / CSRF

16 | Web Attacks XSRF / CSRF Cross Site Scripting Sitio Falso!!!

17 | Web Attacks Path Traversal

18 | Web Attacks La finalidad de este ataque es ordenar a la aplicación web acceder a un archivo al que no debería poder hacerlo o no debería ser accesible. Path traversal también es conocido como el../ ataque punto barra, escalado de directorios y backtracking. Como contramedidas podemos realizar lo siguiente: Cuando se realiza una petición URI por un fichero/directorio, se debe construir el path completo del fichero/directorio y normalizar todos los caracteres (ej, 20% convertido a espacios). Asegurarse de que los primeros caracteres de un directorio correcto es exactamente el mismo que el del documento raíz. Path Traversal

19 | Web Attacks Path Traversal Demo

20 | Web Attacks Path Traversal../../../path.txt

21 | Web Attacks Null Byte

22 | Web Attacks Es una técnica de explotación que se utiliza para eludir filtros de control de sanidad sobre una infraestructura web, mediante la adición de una URL codificada por caracteres nulos como: %00. Un byte null representa el punto de terminación de cadena, lo que significa detener el procesamiento de su cadena posterior. Como contramedida podemos utilizar magic_qoutes_gpc para que los caracteres:,, \, y los NULL sean automáticamente marcados con una barra invertida. Null Byte

23 | Web Attacks Null Byte Demo

24 | Web Attacks /etc/hosts%00 Null Byte

25 | Web Attacks OS Commanding

26 | Web Attacks Este tipo de ataque se utiliza para la ejecución no autorizada de comandos del sistema operativo. Muchas veces podemos realizar este ataque ingresando ; o | dependiendo del sistema operativo en que éste alojado el servidor web. Como contramedida podemos realizar una combinación de validación de listas blancas (whitelists) de toda la información entrante y una apropiada codificación de la información saliente. La validación permite la detección de ataques, y la codificación previene cualquier inyección de secuencia de comandos de ejecutarse exitosamente en el navegador.. OS Commanding

27 | Web Attacks OS Commanding Demo

28 | Web Attacks ;w OS Commanding

29 | Web Attacks Local File Inclusion

30 | Web Attacks Es utilizada en sitios que permiten el enlace de archivos locales, debido a una mala verificación en la programación de página, que contiene las funciones propias de PHP: include(), include_once(), requiere(), requiere_once(). Solo existe en páginas dinámicas desarrolladas en PHP. Como contramedida podemos recomendar los siguientes items: Filtrar todos los parámetros que un usuario de la página pueda manejar. Asegurarse de que no se pueda acceder a archivos más allá del "Document Root" de la página. Procesamiento correcto del parámetro y de la función que se dedique a recuperar el contenido del fichero que necesitemos.. Local File Inclusion

31 | Web Attacks Local File Inclusion Demo

32 | Web Attacks Local File Inclusion /etc/passwd

33 | Web Attacks Remote File Inclusion

34 | Web Attacks Es utilizada en sitios que permiten el enlace de archivos remotos, debido a una mala verificación en la programación de página, que contiene las funciones propias de PHP: include(), include_once(), requiere(), requiere_once(). Solo existe en páginas dinámicas desarrolladas en PHP. Como contramedida podemos recomendar los siguientes items: Filtrar todos los parámetros que un usuario de la página pueda manejar. Procesamiento correcto del parámetro y de la función que se dedique a recuperar el contenido del fichero que necesitemos. Si es posible setear la variable de PHP allow_url_fopen en off. Remote File Inclusion

35 | Web Attacks Remote File Inclusion Demo

36 | Web Attacks Remote File Inclusion

37 | Web Attacks Information Disclosure

38 | Web Attacks Se presenta básicamente ante un error de configuración del administrador o del usuario, que permite ver mas contenido de lo que se debería ver. Esta información puede ser: Comentarios de los desarrolladores, acceso a la configuración del servidor. Como contramedida podemos utilizar mensajes de error genéricos, en los cuales no se divulgue información interna. Analizar la factibilidad de remover todas las páginas y/o componentes por defecto creados al momento de la instalación del servidor Web.. Information Disclosure

39 | Web Attacks Information Disclosure Demo

40 | Web Attacks Information Disclosure phpinfo.php

41 | Web Attacks SQL Injection

42 | Web Attacks Es una técnica usada para la inyección de datos en una consulta SQL desde un cliente de la aplicación. El éxito en una inyección SQL puede leer datos sensibles de la base de datos, modificar los datos (insertar/actualizar/borrar), realizar operaciones de administración sobre la base de datos. Cuando la respuesta no esta directamente impresa en el HTML denominamos el ataque como BLIND SQL Injection. Como contramedidas podemos recomendar los siguientes items: Verifique el formato de los datos de entrada y, en particular, si hay caracteres especiales. Ocultar mensajes de error explícitos que muestren la consulta o parte de la consulta de SQL. Mantenga al mínimo los privilegios de las cuentas que se usan; Es recomendable utilizar prepared statements para todos los comandos SQL.. SQL Injection

43 | Web Attacks Demo SQL Injection

44 | Web Attacks SQL Injection ' union all select user,password from mysql.user #

45 | Web Attacks Blind SQL Injection Demo

46 | Web Attacks Blind SQL Injection ' and '1'='1' union select version(),null #

47 | Web Attacks File Upload

48 | Web Attacks Mayormente hoy en día las aplicaciones contiene un file upload, el cual sino cuenta con una validación puede ser utilizado para que una persona mal intencionada suba archivos con secuencias de comandos y con esto tomar control de nuestro servidor. Como principales contramedidas podes tener en cuenta: - Verificación del tamaño del archivo. - Denegar permiso de ejecución en el directorio donde se suben los archivos. - Verificar MIME-TYPE. - Verificar la extension del archivo.. File Upload

49 | Web Attacks Demo File Upload

50 | Web Attacks Shell.php File Upload

51 | Web Attacks File Upload

52 | Web Attacks Referencias -

53 | Web Attacks Preguntas? - Final