EC-Council Certified Application Security Engineer (CASE) Java
El programa de capacitación certificado CASE fue desarrollado para preparar a los profesionales del software con las capacidades que esperan los empleadores y la academia a nivel mundial. Está diseñado para ser un curso práctico y completo de capacitación en seguridad de aplicaciones para enseñar a los profesionales del software a crear aplicaciones seguras.
El programa de capacitación abarca las actividades de seguridad involucradas en todas las fases del SDLC seguro: planificación, creación, prueba e implementación de una aplicación.
Objectives
- Comprensión profunda de SDLC seguro y modelos de SDLC seguros.
- Conocimiento de OWASP Top 10, modelado de amenazas, SAST y DAST.
- Captura de los requisitos de seguridad de una aplicación en desarrollo.
- Definir, mantener y aplicar las mejores prácticas de seguridad de las aplicaciones.
- Realizar la revisión manual y automatizada del código de la aplicación.
- Realización de pruebas de seguridad de aplicaciones web para evaluar las vulnerabilidades.
- Impulsar el desarrollo de un programa integral de seguridad de aplicaciones.
- Calificar la gravedad de los defectos y publicar informes completos, detallando los riesgos asociados y las mitigaciones.
- Trabajar en equipo para mejorar la postura de seguridad.
- Tecnologías de escaneo de seguridad de aplicaciones como AppScan, Fortify, WebInspect, pruebas de seguridad de aplicaciones estáticas (SAST), pruebas dinámicas de seguridad de aplicaciones (DAST), inicio de sesión único y cifrado.
- Seguir los estándares de codificación segura que se basan en las mejores prácticas aceptadas por la industria, como la Guía OWASP o la Codificación segura CERT para abordar las vulnerabilidades comunes de codificación.
- Creación de un proceso de revisión del código fuente del software que forma parte de los ciclos de desarrollo (SDLC, Agile, CI/CD).
Personas involucradas en la función de desarrollar, probar, administrar o proteger aplicaciones.
- ¿Qué es una aplicación segura?
- Necesidad de seguridad de las aplicaciones
- Ataques a nivel de aplicación más comunes
- Por qué las aplicaciones se vuelven vulnerables a los ataques
- ¿En qué consiste una seguridad integral de las aplicaciones?
- Aplicación insegura: un problema de desarrollo de software
- Estándares, modelos y marcos de seguridad de software
Módulo 2: Recopilación de requisitos de seguridad
- Importancia de reunir los requisitos de seguridad
- Ingeniería de requisitos de seguridad (SRE)
- Modelado de casos de abuso y casos de uso de seguridad
- Historias de abusadores y seguridad
- Ingeniería de requisitos de calidad de seguridad (SQUARE)
- Evaluación de amenazas, activos y vulnerabilidades críticas desde el punto de vista operativo (OCTAVE)
Módulo 3: Diseño y arquitectura de aplicaciones seguras
- Costo relativo de la corrección de vulnerabilidades en diferentes fases del SDLC
- Diseño y arquitectura de aplicaciones seguras
- Objetivo del proceso de diseño seguro
- Acciones de diseño seguras
- Principios de diseño seguro
- Modelado de amenazas
- Aplicación de descomposición
- Arquitectura de aplicaciones segura
Módulo 4: Prácticas de codificación segura para la validación de entradas
- Patrón de validación de entrada
- Problemas de validación y seguridad
- Impacto de la entrada de datos no válidos
- Técnicas de validación de datos
- Validación de entradas mediante marcos de trabajo y API
- Marco de validación de código abierto para Java
- Filtros de servlets
- Filtros de validación para servlet
- Validación de datos mediante OWASP ESAPI
- Validación de datos: Struts Framework
- Validación de datos: Spring Framework
- Errores de validación de entrada
- Prácticas comunes de codificación segura
Módulo 5: Prácticas de codificación segura para la autenticación y la autorización
- Introducción a la autenticación
- Tipos de autenticación
- Debilidades y prevención de la autenticación
- Introducción a la autorización
- Modelo de control de acceso
- Autorización EJB
- Autenticación y autorización Java (JAAS)
- Seguridad Java EE
- Autorización Errores comunes y contramedidas
- Autenticación y autorización en Spring Security Framework
- Prácticas de codificación defensiva contra la autenticación y autorización rotas
- Listas de verificación de desarrollo seguras: autenticación y administración de sesiones rotas
Módulo 6: Prácticas de codificación segura para criptografía
- Criptografía Java
- Cifrado y claves secretas
- Clase de cifrado
- Firmas digitales
- Capa de socket seguro (SSL)
- Gestión de claves
- Certificados Digitales
- Fuentes de código firmadas
- Hash
- Criptografía de tarjetas Java
- Spring Security: Módulo Crypto
- Lo que se debe y lo que no se debe hacer en la criptografía Java
- Mejores prácticas para la criptografía Java
Módulo 7: Prácticas de codificación segura para la gestión de sesiones
- Gestión de sesiones
- Seguimiento de sesiones
- Gestión de sesiones en Spring Security
- Vulnerabilidades de sesión y sus técnicas de mitigación
- Prácticas recomendadas y directrices para la administración de sesiones seguras
- Lista de comprobación para proteger las credenciales y los ID de sesión
- Directrices para la administración de sesiones seguras
Módulo 8: Prácticas de codificación segura para el manejo de errores
- Introducción a las excepciones
- Comportamientos excepcionales erróneos
- Lo que se debe y lo que no se debe hacer en el manejo de errores
- Manejo de errores de Spring MVC
- Manejo de excepciones en puntales 2
- Prácticas recomendadas para el control de errores
- Introducción a la tala de árboles
- Registro mediante Log4j
- Codificación segura en el registro
- Prácticas seguras en la tala de árboles
Módulo 9: Pruebas de seguridad de aplicaciones estáticas y dinámicas (SAST y DAST)
- Pruebas estáticas de seguridad de aplicaciones
- Revisión manual del código seguro para las vulnerabilidades más comunes
- Revisión de código: enfoque de lista de verificación
- Hallazgo de SAST
- Informe SAST
- Pruebas dinámicas de seguridad de aplicaciones
- Herramientas automatizadas de análisis de vulnerabilidades de aplicaciones
- Herramientas de pruebas de seguridad basadas en proxy
- Elegir entre SAST y DAST
Módulo 10: Implementación y mantenimiento seguros
- Implementación segura
- Actividad de implementación previa
- Actividades de implementación: garantizar la seguridad en varios niveles
- Garantizar la seguridad a nivel de host
- Garantizar la seguridad a nivel de red
- Garantizar la seguridad a nivel de aplicación
- Garantizar la seguridad a nivel de contenedor web (Tomcat)
- Garantizar la seguridad en Oracle
- Mantenimiento y Monitoreo de Seguridad
- Los participantes que deseen iniciarse en CASE Java deben contar con habilidades básicas de programación.
- Certified Application Security Engineer (CASE) Java
Detalles del examen
Entrega | En línea (basado en la web) |
Formato | Opción múltiple |
Supervisión | Vivir |
Duración | 2 Horas |
# de preguntas | 50 |
Calificación aprobatoria | 70% |