resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web apis

19
Hecho: Las técnicas de infiltración en la seguridad de aplicaciones web, servicios web y web APIs ya no son tecnología reservada para hackers y pen-testers.

Upload: mauromaulinir

Post on 23-Jan-2018

206 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Hecho: Las técnicas de infiltración en la seguridad de aplicaciones web, servicios web y web APIs ya no son tecnología reservada para hackers y pen-testers.

Page 2: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Curso de Seguridad para Aplicaciones Web, Web Services y Web APIs

Page 3: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Mejorar y actualizar la capacitación personal de seguridad de sistemas y desarrolladores de aplicaciones web, web APIs y/o servicios web en los procesos concernientes a la defensa tanto preventiva como reactiva de las aplicaciones web y/o móviles, así como en la defensa de la integridad, confidencialidad, disponibilidad e irrefutabilidad de los datos y transacciones por estas procesados.

Objetivo General del Curso:

Page 4: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

• Actualizar al participante en la filosofía seguridad necesaria para los procesos de desarrollo de software, instalación de software de terceros y mantenimiento de plataformas para ambos casos.

• Introducir al participante en el conocimiento de la mentalidad, comportamiento, motivaciones y entorno de los diferentes tipos de atacante.

• Mostrar al participante los motivos por los cuales sus aplicaciones web, web APIs y web services son inseguros.

• Introducir al participante en el conocimiento de las técnicas de intrusión utilizadas por el atacante mediante ejemplos prácticos y ejercicios de ataque a servidores intencionalmente vulnerables.

Objetivos en detalle:

Page 5: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

• Mostrar al asistente los errores de desarrollo, programación, instalación y mantenimiento más comunes, basados en los estándares OWASP y WASC.

• Desarrollo de ejemplos prácticos de errores de puesta en marcha de servidores IIS y Apache mediante ejemplos y ejercicios sobre servidores intencionalmente vulnerables

• Mostrar al asistente las técnicas de prevención, control, detección y corrección de vulnerabilidades de las aplicaciones web y móviles en sus entornos operativos.

• Inducir al uso de “scanners” de vulnerabilidades mediante ejemplos y ejercicios prácticos sobre servidores intencionalmente vulnerables

• Proveer al asistente de acceso a una serie de recursos y utilidades que le faciliten el cumplimiento de los objetivos expuestos.

Objetivos en detalle (continuación:

Page 6: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Contenido programático:

Introducción

• Ley de Murphy aplicada a la seguridad de aplicaciones web y web services.• ¿Quiénes y porqué atacan a las aplicaciones web y web services?• ¿Qué es en realidad un hacker? Más allá del mito de Hollywood…• Pensar como un hacker es la mitad del trabajo…• ¿Qué motiva a un hacker?• H4c|<3r j4rg0n (Hacker jargon)• ¿Porqué y quienes atacan a las aplicaciones web?• ¿Porqué y quienes atacan a los servicios web?

Page 7: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Contenido programático (cont):

Vulnerabilidades de las aplicaciones web y cómo remediarlas

• Decálogo de seguridad del desarrollo de aplicaciones web• Anatomía de un ataque a una aplicación web• ¿Qué es OWASP?• Proyectos OWASP• ¿Qué es el OWASP Top Ten 2013?

1. Inyección de código o de comandos.2. Autentificación de usuarios y manejo de sesión débiles3. Cross Site Scripting, XSS.4. Objetos referenciados directamente de forma insegura.5. Fallas de Configuración de Seguridad.6. Exposición de datos sensibles.7. Errores en funciones de control de nivel de acceso.8. Crosss Site Request Forgery.9. Uso de componentes con vulnerabilidades conocidas.10. Redirecciones y reenvíos sin debida validación.

Page 8: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Vulnerabilidades de las aplicaciones web y cómo remediarlas

Cada uno de los tipos de vulnerabilidades del top 10 OWASP serán probados por los asistentes mediante ejercicios de ataque e intrusión a una aplicación web deliberadamente vulnerable.

Conocimiento de las herramientas de aprendizaje para los diferentes casos y plataformas de desarrollo:

•OWASP WEBGOAT•DVWA (Damn Vulnerable Web Application)•Otras herramientas de intrusión deliberadamente vulnerables•Componentes de verificación de tráfico HTTP.

Contenido programático (cont):

Page 9: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

• Clasificación de amenazas WASC• Los 25 errores de código más peligrosos – CWE / SANS• Escanners de Vulnerabilidades (Comerciales).• Escanners de Vulnerabilidades (Open Source).• Test de escaneo de vulnerabilidades sobre servidor

intencionalmente vulnerable.

• OWASP Cheat Sheets (Hojas de trucos).• Application Failure DoS.

• Tipos de Application Failure DoS y razones por lasque son factibles.

• Cómo prevenirlos.• Técnicas de mitigación de ataques de DDoS

• Ensayos de técnicas de DoS sobre servidores deliberadamente vulnerables.

• Ensayos y ejemplos prácticos sobre librerías de cifrado y técnicas de cifrado compuestas

Contenido programático (cont):

Page 10: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Resumen del documento OWASP Secure Coding Práctices• Input Validation.• Output encoding.• Authentication and Password Management.• Oauth y otros servicios de validación.• Session Control.• Uso de librerías de control y validación de input y output más comunes

por plataformas e instalación con ejemplos en vivo y ejercicios.

Técnicas de ataque directo al usuario.

• Nuevas amenazas y nuevas versiones de amenazas conocidas• Spear Phishing y Whale Phishing.• Tab Nabbing.• Pharming local.• Man in the Browser Attack.• MIM attack (sniffers, keyloggers y otros).• Troyanos Bancarios Especializados.• Phishing Móvil, Vishing.

Page 11: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

• Phishing Tradicional• Análisis detallados de las técnicas utilizadas por el atacante.• El costo real del Phishing.• Cálculo del costo por hora y acumulativo del Phishing.• Filtros Anti Phishing.• Datos a tomar en cuenta en un ataque de Phishing.• Cómo defenderse de un ataque de Phishing.• Procesos para denunciar el sitio de Phishing.• Montando un phishing en tiempo real (ejercicio)

• Phishing Avanzado - Nuevas modalidades y variantes• Spear-Phishing• Vishing - Phishing VoIP• Phishing Móvil!• Ataques simultáneos basados en diferentes servidores de sitios web

comprometidos.• Ataques basados en múltiples dominios de recepción.• Social Network Phishing

Contenido programático (cont):

Page 12: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

• Tab Nabbing. (ejemplos prácticos)• Pharming:

• Tipos de Pharming• Pharming – Proceso de ataque

• Clickjacking y técnicas de prevención del mismo.• Sniffing.• Captura de encabezados HTTP (HTTP sniffing).• Keyloggers. (Ejemplos en tiempo real)• MIB (Man in the Browser).

Contenido programático (cont):

Page 13: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Debilidades de las aplicaciones web que afectan directamente a sus usuarios.

• Debilidades que pueden comprometer la verificación de autenticidad del sitio por parte del usuario.

• Debilidades que facilitan el phishing u otros problemas de clonación del sitio.

• Debilidades que facilitan el escaneo del sitio y la búsqueda de vulnerabilidades.

• Debilidades que permiten la captura de datos por parte de BHO’s, keyloggers y troyanos especializados y otros tipos de “malware”.

• Debilidades que facilitan métodos de ingreso por fuerza bruta o el uso de herramientas de escaneo.

• Debilidades que facilitan ataques de XSS, Clickjacking y otros.

• Debilidades referentes al SSL o HTTPS.

Contenido programático (cont):

Page 14: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Análisis de técnicas de defensa directa y prevención de ataques.• Los Teclados Virtuales.• Autentificación Bidireccional.• Autentificación multi-plataforma.• Handlers de imágenes con control de referencia.• Handlers de scripts.• Web Application Firewalls (WAF).• Honeypots.• Bloqueadores de detectores de vulnerabilidades.• Bloqueadores de escaneo.• Rastreadores de comportamiento del usuario.• Bitácoras de aplicación.• Manejadores de logs.• Técnicas de control de errores avanzadas.• ¿Qué es OAuth y cómo funciona?

• Desarrollo en tiempo real de un bloqueador de “scanners” de vulnerabilidades

Contenido programático (cont):

Page 15: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Seguridad de Servicios Web y web APIs

• Nuevos entornos, nuevas amenazas.• Introducción rápida al ecosistema de los servicios web.

• Protocolos comunes, SOAP, XML• Quiénes y cómo acceden a los servicios web• ¿Qué es un web API?

• Tipos de servicios web en relación a su seguridad. Diferencias entre SOAP y REST.

• Factores que promueven el aumento de vulnerabilidades en las servicios web y web APIs.

• Interrelación de seguridad entre servicios web y aplicaciones móviles.

• Errores de configuración comunes en los servicios web.• Vulnerabilidades específicas de los entornos de Servicios Web• OWASP Web Services Security Project.

• OWASP Web Service Security Cheat Sheet• REST Security Cheat Sheet

Contenido programático (cont):

Page 16: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Módulo adicional de iniciación a la criptografía digital.

Contenido programático (cont):

Este módulo ha sido agregado recientemente debido a la necesidad existente de las aplicaciones web y servicios web en utilizar técnicas de cifrado que correspondan eficientemente a las necesidades actuales de protección, autentificación, comprobación y no repudio de los datos manejados por nuestras aplicaciones.

• ¿Qué es la Criptología?• Diferencias entre Criptografía y Criptoanálisis• ¿Cifrar, codificar o encriptar?• Historia de la criptografía clásica• ¿Dónde inicia la criptografía moderna?• Tipos de criptografía actuales• Métodos de hashing• Recursividad, salting y otras técnicas de protección del hash• Criptografía simétrica• Criptografía asimétrica• Métodos de criptografía mixta y comparación.

Page 17: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Dictado por:

Mauro Maulini Rubiera.Experimentado desarrollador y programador Senior especializado en seguridad web con más de 22 años dedicados en el área de Internet y desarrollos de aplicaciones web y aplicaciones móviles. Gerente de desarrollo, con experiencia comprobada en desarrollo de plataformas bancarias en la web y móviles para bancos e instituciones. Actualmente presidente de Sharpmind Software, empresa que ofrece soluciones de seguridad web para empresas financieras.

Creador de los conocidos estudios:Vulnerabilidades de la Banca en Línea,Capítulos Venezuela, Guatemala y Ecuador.

Más información en:http://tecnologiasweb.blogspot.com/p/acerca-de-mi.html

Ha dictado este curso para 8 de las 10 entidades bancarias más importantes en Venezuela, también para la Asociación Bancaria de Guatemala y en varias ocasiones en Quito y Guayaquil (Ecuador) en asociación con Banred S.A.

Page 18: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Información adicional:

En el curso se utilizarán ejemplos prácticos en la mayoría de los casos, creados mediante código intencionalmente vulnerable o en aplicaciones deliberadamente vulnerables bajo entornos controlados.Todos los ejemplos de código necesarios se presentan en tres lenguajes de desarrollo, a saber: Java (jsp), C# ASP.NET y PHP.

Todos los capítulos cerrarán con ejercicios y tutoriales específicos para los asistentes.

Se proveerá un servidor preparado con aplicaciones deliberadamente vulnerables a las que los asistentes intentarán atacar

Los ejemplos relativos a servicios web y web APIs se basarán en protocolos SOAP y REST

Duración del curso: 16 a 18 horas académicas

Page 19: Resumen curso de seguridad para desarrolladores de aplicaciones web, webservices y web APIs

Para más información puede comunicarse con:

Mauro Maulini R.http://www.sharpmindsoftware.com

@MauroMauliniR on Twitter

Porlamar - Isla de Margarita - Venezuela+58 295 4160387 +58 412 3575679+58 412 3567152

Contáctame por Skypecallto:mauro.maulini