Seguridad en Aplicaciones Web

Documentos relacionados
Seguridad en Aplicaciones Web

Principios Básicos de Seguridad en Bases de Datos

.com [IN]SEGURIDAD WEB ING. SAUL MAMANI M.

Área: Microsoft SQL. Nombre del curso. Administración de Microsoft SQL Server 2014 Bases de datos

Vulnerabilidades en Aplicaciones Web Webinar Gratuito

Ingeniero Técnico en Informática - UCA Máster en Ingeniería del Software - US Máster en Seguridad de las TIC - US

Tecnologías Aplicadas al Dominio "Desarrollo, Adquisición y Mantenimiento de los Sistemas de Información"

Seguridad en Aplicaciones Web

Facultad de Ingeniería Mecánica y Eléctrica SEGURIDAD EN REDES EVOLUCION DE LA SEGURIDAD EN REDES TCP/IP

Seguridad Perimetral. Mg. Ing. M. Angélica Castillo Ríos Jefa de la Oficina de Sistemas PCM

ANÁLISIS DE LAS PRINCIPALES VULNERABILIDADES DE UN SISTEMA INFORMÁTICO

ADMINISTRACIÓN DE LA SEGURIDAD PERIMETRAL EN REDES LAN. Ing. Mg. Miguel Ángel Valles Coral.

Seguridad en el ciclo de vida del desarrollo de software

VÍDEO intypedia007es LECCIÓN 7: SEGURIDAD EN APLICACIONES WEB. INTRODUCCIÓN A LAS TÉCNICAS DE INYECCIÓN SQL. AUTOR: Chema Alonso

Curso Implementing and Managing Microsoft Desktop Virtualization (10324)

Estudio de los riesgos relacionado con las redes Wi-Fi. A. Alejandro González Martínez

Administering Microsoft SQL Server Databases (20462)

MCTS Exchange Server 2010 Administración. Fabricante: Microsoft Grupo: Servidores Subgrupo: Microsoft Exchange Server 2010

Seguridad en Aplicaciones Web

INTRODUCCIÓN A LA SEGURIDAD EN SISTEMAS Y WEBS

GENEXUS & OWASP TOP 10

Programa Administración Linux

La seguridad informática en la PYME Situación actual y mejores prácticas

Curso Administering Windows Server 2012 (20411)

Curso Online. Desarrollo Seguro en Java

UNIVERSIDAD CATÓLICA DE SANTIAGO DE GUAYAQUIL DIPLOMADO INTERNACIONAL EN SEGURIDAD INFORMÁTICA CON CERTIFICACIÓN ISO 27001

Curso Microsoft SharePoint Server 2010 Designing and Developing Applications (10232)

Curso Implementing and Managing Microsoft Server Virtualization (10215)

BANCO DE REACTIVOS DE OPCIÓN MÚLTIPLE CON MATRIZ DE RESPUESTAS

SISTESEG Seguridad y Continuidad para su Negocio

Día 23, Hacking ético: Auditoria web y perspectiva desde la Administración Publica

POLICÍA FEDERAL DIVISIÓN CIENTÍFICA ROBO DE IDENTIDAD EN INTERNET: USO INDEBIDO DE DATOS PERSONALES


Offensive State Auditoría de Aplicaciones Web

IFCD0210 Desarrollo de Aplicaciones con Tecnologías Web

Pruebas de Intrusión de Aplicación

CYBERGYM #CG002 SPA SERVICIOS INTEGRALES DE DEFENSA CIBERNÉTICA

EXCH000e Configuración, Administración y Solución de Problemas de Microsoft Exchange Server 2010

1.4.1 Inicio de la computadora por primera vez Hay problemas Causas, síntomas y soluciones a posibles averías...

Curso Querying Microsoft SQL Server 2014 (20461)

Informe ransomware

Oracle Enterprise Manager 10g Grid Control NUEVO

Afinación y Rendimiento de Bases de Datos

IFCT0209 Sistemas Microinformáticos

Sistema Operativo, Búsqueda de la Información: Internet/Intranet y Correo Electrónico (UF0319)

OWASP: Un punto de vista. aplicaciones web seguras

Hacking Ético Web. I Jornadas Tecnológicas CEEPS Carlos García García i52gagac@uco.es

Developing ASP.NET MVC 4 Web Applications

UNIÓN INTERNACIONAL DE TELECOMUNICACIONES. SERIE X: REDES DE DATOS Y COMUNICACIÓN ENTRE SISTEMAS ABIERTOS Seguridad

Problemas de Seguridad Comunes en la UNAM. M.A. Manuel Quintero Ing. Demian García

Ingeniería de Software II. SETEPROS Plan de pruebas. Versión 1.0

BOLETÍN OFICIAL DEL ESTADO

MS_ Enabling and Managing Office 365.

Especificaciones Técnicas para Ethical Hacking

Curso Designing and Implementing a Server Infrastructure (20413)

Servicios de Seguridad de la Información

CAPÍTULO 2: SISTEMAS DE DETECCIÓN DE INTRUSOS

AUDITORÍAS TÉCNICAS PARA LA CERTIFICACIÓN DE LOS SISTEMAS DE RECOGIDA DE INICIATIVAS CIUDADANAS EUROPEAS

Seguridad en SAP. Carlos O. DíazD 16 de Septiembre de 2008 Buenos Aires - Argentina

CD INTERACTIVO DE PLANES DE CONTINGENCIA Y SEGURIDAD INFORMÁTICA PARA LA MEDIANA Y GRAN EMPRESA DE EL SALVADOR.

DIPLOMADO EN MICROSOFT SQL SERVER 2008

Seguridad Informática Mitos y Realidades

Curso Implementing and Maintaining Microsoft SQL Server 2008 Reporting Services (6236)

Elementos vulnerables en el sistema informático: hardware, software y datos. Luis Villalta Márquez

Gestión de Seguridad en canales electrónicos. Ing. Jorge O Higgins, CISSP

MOC 10983A Actualización de Conocimientos a Windows Server 2016

In-seguridad y malware en dispositivos móviles

Cómo desarrollar una Arquitectura de Red segura?

Nota Técnica Configuración SQL Server

ADMINISTRACIÓN DE RECURSOS INFORMÁTICOS SEMANA 9 ESTE DOCUMENTO CONTIENE LA SEMANA 9

Linux Avanzado: Redes y Servidores (Versión Ubuntu)

Oracle Database 11g: Taller de Administración II Versión 2 (Español)

Medidas de seguridad. Tema 1 SAD. Vicente Sánchez Patón. I.E.S Gregorio Prieto

Requisitos de Instalación

Auditoría de Seguridad

Seguridad Informática en Bibliotecas

PROGRAMA FORMATIVO. MCSA Windows Server 2012

CA ControlMinder for Virtual Environments

Universidad Autónoma del Estado de México ADMINISTRACIÓN Y SEGURIDAD EN SISTEMAS OPERATIVOS SEGURIDAD SOBRE WINDOWS POR: J. JAIR VÁZQUEZ PALMA

ESET Secure Authentication

Tema II: Metodología para la construcción de programas. Profesora: Nelly García Mora

Lenguajes de marcado para presentación de Páginas web.

Riesgo tecnológico y su impacto para las organizaciones parte I

Curso: 10983A Upgrading Your Skills To Windows Server 2016

Oracle 10g: Creación de Aplicaciones J2EE

Pruebas de Seguridad en aplicaciones web segun OWASP Donde estamos... Hacia donde vamos?

Programación de código seguro

100% Laboratorios en Vivo

Administración de Usuario respalda dos modos: Basada en Reglas y Basada en Usuario.

APLICACIONES DE INTERNET: SOAP

Vulnerabilidades de los sistemas informáticos

Sumario Prólogo Unidad didáctica 1. Software libre y open source Objetivos de la Unidad... 10

Transcripción:

Seguridad en Aplicaciones Web Juan Isaias Calderón CISSP, GCFA, ECSA, CEH, MCP isaias.calderon@gmail.com

Objetivos Exponer las principales problemáticas en las aplicaciones web Crear conciencia en la área de desarrollo sobre la mentalidad de los atacantes Entender la importancia de los Top 10 identificados en los componentes más comunes dentro de varios entornos - academicos, gubernamentales y comerciales - con la finalidad de crear consciencia de seguridad. Responder la pregunta más común: Los atacantes / ataques son cada vez mejores o nosotros nos estamos volviendo débiles?

Porque atacar las aplicaciones web? Muchas están disponibles desde Internet No están protegidas por el Firewall Generalmente no están desarrolladas con un esquema adecuado de seguridad Los desarrolladores cometen el mismo tipo de errores En ocasiones han crecido de forma desorganizada Son aplicaciones muchas veces transaccionales con conexión a bds y sistemas back-end

ATAQUE DIRIGIDO SKB Enterprises brinda servicios a muchos clientes, maneja una gran cantidad de transacciones de pago con tarjetas y probablemente tiene datos de los clientes almacenados en alguna parte. Voy a descubrir cómo puedo acceder ilegalmente. Identificar primero el objetivo SOLO ENTONCES se considera un ataque Más esfuerzo en la planificación y la ejecución Generalmente dirigido a organizaciones más grandes Adversarios ATAQUE OPORTUNISTA Sé cómo comprometer un servidor web a través de una vulnerabilidad Adobe Cold Fusion. Voy a buscar servidores vulnerables en Internet y probar si puedo acceder a información valiosa, además de inyectar código malicioso con malware para infectar a los visitantes. Identificar primero la vulnerabilidad y la forma de explotarla ( exploit ) El objetivo no importa, solo debe ser vulnerable para poder atacarlo Mínimo esfuerzo Generalmente dirigido a organizaciones más pequeñas Copyright 2015 Trustwave Holdings, Inc.

Cómo piensa un adversario? SIEMPRE va a buscar el camino más fácil Formas de entrar: 1. Adivinando o descifrando contraseñas 2. Explotando vulnerabilidades en el diseño o configuración de sistemas o equipos 3. Interceptando comunicaciones 4. Utilizando ingeniería social (casi siempre usan una combinación de las anteriores)

www.zone-h.org (1/5) *Fuente: www.zone-h.org

www.zone-h.org (2/5) *Fuente: www.zone-h.org

www.zone-h.org (3/5) *Fuente: www.zone-h.org

www.zone-h.org (4/5) *Fuente: www.zone-h.org

www.zone-h.org (5/5) *Fuente: www.zone-h.org

Hacktivismo 11

Defacement *Fuente: www.zone-h.org

ROI POR CAMPAÑA DE RAMSOMWARE GASTOS (USD) Carga - $3,000 Vector de infección - $500 Adquisición de tráfico - $1,800 Cifrado diario - $600 Gastos totales - $5,900 INGRESOS Visitantes 20,000 Tasa de infección 10% RENTABILIDAD DE INVERSIÓN Gastos totales Ingresos Ganancia bruta ROI - $5,900 USD $90,000 USD $84,100 USD 1'425% Porcentaje de éxito 0.5% Monto de rescate Duración de la campaña Ingresos totales $300 USD 30 días (3 sem) $90,000 USD Copyright 2015 Trustwave Holdings, Inc.

Situación Actual La mayoría de las aplicaciones Web: o Son de alto riesgo o Están mal diseñadas o Están expuestas o No están protegidas o Tienen fallos comunes o Son vías de entrada a la infraestructura de la empresa o la institución

98% de las aplicaciones son vulnerables APLICACIONES VULNERABLES APLICACIONES WEB 20% fallas encontradas en promedio por aplicación PROMEDIO DE VULNERABILIDADES POR APLICACIÓN Copyright 2015 Trustwave Holdings, Inc. Copyright 2015 Trustwave Holdings, Inc.

Estadisticas de Ataques Principales métodos de ataques oportunistas observados por Trustwave WORDPRESS PINGBACK DDOS ATTACK ATAQUE DDOS A TRAVÉS DE LA FUNCIÓN "PINGBACK" DE WORDPRESS 30% CROSS-SITE SCRIPTING (XSS) 25% VULNERABILIDAD SHELLSHOCK DE BASH (CVE-2014-6271) 24% HTTP RESPONSE SPLITTING ATTACK HTTP RESPONSE SPLITTING 7% ATAQUES DE FUERZA BRUTA EN WORDPRESS 5% WORDPRESS TIMTHUMB EXPLOIT VULNERABILITY VULNERABILIDAD EN MÓDULO TIMTHUMB DE WORDPRESS 4% Copyright 2015 Trustwave Holdings, Inc.

Frecuencia de vulnerabilidades Principales vulnerabilidades en las aplicaciones identificadas por Trustwave en 2014 FUGA DE INFORMACIÓN INFORMATION LEAKAGE «CROSS-SITE SCRIPTING» 20% 23% 25% 35% 2014 2013 SQL INYECCIÓN INJECTION DE CÓDIGO SQL 7% 17% SESSION ADMINISTRACIÓN MANAGEMENT DE SESIONES 10% 13% AUTENTICACIÓN Y AUTORIZACIÓN AUTHENTICATION AND AUTHORIZATION 6% 15% CROSS-SITE REQUEST FORGERY 1% 6% OTROS OTHER 10% 11% Copyright 2015 Trustwave Holdings, Inc.

Aplicaciones móviles Porcentajes acumulados de aplicaciones móviles en las que Trustwave identificó al menos una vulnerabilidad de distinta severidad BAJO MEDIO ALTO CRÍTICO Copyright 2015 Trustwave Holdings, Inc.

Hallazgos (1/2) Principales hallazgos en pruebas de penetración en una clasificación comparativa Authentication bypass Inyección de código SQL Fallas en lógica de aplicaciones Sistemas sin actualizaciones Contraseña de administrador débil Contraseña compartida de administrador local Authorization bypass Almacenamiento de datos confidenciales sin cifrado Cross-Site Scripting (XSS), persistente Envenenamiento de LLMNR (ataque de resolución de nombres) Aplicació n Red Aplicación y Red Copyright 2015 Trustwave Holdings, Inc.

Hallazgos (2/2)

Atacar primero lo estándar Políticas, Estándares y Procedimientos Contraseñas Autentificación Protocolo de Comunicación Aplicación Comercial Base de Datos Sistema Operativo Desarrollo Propietario Web Server Monitoreo y Reacción a Incidentes

Aplicaciones Web Comparten los mismos fallos de otros tipos de aplicaciones pero tienen algunos exclusivos 1. Valor de la Información Al ser multi-capa, generalmente se conectan a bases de datos o servidores centrales o críticos 2. Riesgo Las aplicaciones y los servidores en los que se montan tienen muchos fallos conocidos 3. Probabilidad de Ataque Tienen una exposición muy grande (Internet o Intranet) La mayoría de los ataques a estas aplicaciones no son bloqueados por los firewalls

SANS Top Cyber security risks hkp://www.dunkel.de/pdf/200909_topcybersecurityrisks.pdf

SD 3 El estándar actual de Microsoft para diseño de software: Seguro por Diseño (Secure Design) o Arquitectura y código seguro o Análisis de riesgos o Reducción de Vulnerabilidades Seguro por Default (Secure by Default) o Reducir la superficie de ataque o Apagar todos los features que no sean usados o Mínimos privilegios Seguro al Instalar (Secure Deployment) o Protección: detección, defensa, recuperación y administración o Proceso: guías de arquitectura y de implantación o Personas: entrenamiento hpp://www.microsoft.com/security/sdl/default.aspx

La Base del Código Seguro 1. Minimizar los privilegios o Usuarios del SO o Usuarios de la BDs o Usuarios dentro de la aplicación 2. Minimizar la superficie de ataque o Todo se apaga o se deshabilita o Se va prendiendo, abriendo o habilitando lo mínimo requerido para que algo funcione o Se valida toda la información externa 3. Garantizar seguridad a profundidad o Se aseguran los sistemas operativos y los servidores web y base de datos o No usar security through obscurity

Qué es OWASP? Grupo de voluntarios Produce documentación, herramientas y estándares gratuitos Calidad profesional y de código abierto

OWASP Top 10

Revisión de Código Higiene del Código Manejo de Autenticación Flujo de la aplicación y de la sesión Problemas de validación de datos Existencia de potenciales buffer overflows Manejo de archivos Mensajes de error Privilegios de los procesos Conexiones a bases de datos Validaciones en el cliente confirmadas en el servidor Implementación de cifrados Generación de números aleatorios

Threat Modeling 29

Riesgos en Aplicaciones

Riesgos Cualitativos

A1 - Inyección

A1 - Inyección

A2 Autenticación y Sesiones

A2 Autenticación y Sesiones

A3 Cross Site Scripting

A3 Cross Site Scripting

A4 Referencia Insegura a objs

A4 Referencia Insegura a objs

A5 Configuracion insegura

A5 Configuracion insegura

A6 Datos Sensibles

A6 Datos Sensibles

A7 Control de Acceso

A7 Control de Acceso

A8 Cross Site Request Forgery

A8 Cross Site Request Forgery

A9 Componentes con vulns

A9 Componentes con vulns

A10 Redirecciones inválidos

A10 Redirecciones inválidos

OWASP Top 10 - Riesgos

Recomendaciones ü Sistemas operativos y aplicaciones con actualizaciones y parches ü Validar todas las operaciones de entrada y salida así como las delimitaciones de todas las series ü Revisar siempre el tamaño de los buffers antes de manipularlos ü Evitar usar funciones que no revisan delimitaciones: strcpy(), strcat(), sprintf(), gets(), etc. ü Programas ejecutados con el mínimo nivel de privilegios para realizar la tarea ü Usar lenguajes que prevengan los buffer overflows (Perl, Java,.Net, etc.) ü Usar librerías y herramientas al diseñar y compilar que prevengan este tipo de vulnerabilidades

Conclusiones Los atacantes / ataques son cada vez mejores o nosotros nos estamos volviendo débiles? Hay muchas formas de atacar una aplicación La defensa requiere que se corrijan todos los aspectos por separado Entre antes en el proceso se comience, mejor va a quedar la seguridad Un sólo punto débil es suficiente para que un atacante penetre

Dónde empezar? 55

Seguridad en Aplicaciones Web Juan Isaias Calderón CISSP, GCFA, ECSA, CEH, MCP isaias.calderon@gmail.com