Desarrollador Java Seguro (Incluye OWASP)
Este curso cubre los conceptos y principios de codificación segura con Java a través de la metodología de pruebas del Proyecto Open Web Application Security (OWASP). El Proyecto Open Web Application Security es una comunidad en línea que crea artículos, metodologías, documentación, herramientas y tecnologías de uso gratuito en el campo de la seguridad de aplicaciones web.
Temario del curso
- Comprender las amenazas web y los vectores de ataque
- Conocer los principios de diseño seguro
- Comprender los 10 fallos más críticos de OWASP
- Comprender los problemas de autenticación y autorización
- Saber cómo prevenir la inyección de scripts entre sitios (XSS)
- Saber cómo prevenir la falsificación de solicitudes entre sitios (CSRF)
- Comprender el ciclo de desarrollo seguro
- Saber cómo prevenir ataques de inyección
- Comprender las protecciones en JDBC y JPA
- Comprender las metodologías de pruebas de penetración
- Saber cómo asegurar aplicaciones Java
Requerimientos
- Experiencia con Java.
- Experiencia en la creación de aplicaciones web.
Los cursos públicos requieren más de 5 participantes.
Desarrollador Java Seguro (Incluye OWASP) - Reserva
Desarrollador Java Seguro (Incluye OWASP) - Consulta
Desarrollador Java Seguro (Incluye OWASP) - Solicitud de consultoría
Reseñas (3)
El tema es actual y necesitaba estar al día
Damilano Marco - SIAP s.r.l.
Curso - Secure Developer Java (Inc OWASP)
Traducción Automática
Fue bastante exhaustiva, la información fue clara y concisa.
Sebastian-Daniel - BRD
Curso - Secure Developer Java (Inc OWASP)
Traducción Automática
Múltiples ejemplos para cada módulo y gran conocimiento del formador.
Sebastian - BRD
Curso - Secure Developer Java (Inc OWASP)
Traducción Automática
Próximos cursos
Cursos Relacionados
Seguridad de Red y Comunicación Segura
21 HorasImplementar una aplicación en red que sea segura puede resultar complicado, incluso para desarrolladores que hayan utilizado previamente diversos componentes criptográficos (como cifrado y firmas digitales). Con el fin de que los participantes comprendan el papel y el uso de estos primitivos criptográficos, primero se establece una base sólida sobre los requisitos principales de la comunicación segura: confirmación de seguridad, integridad, confidencialidad, identificación remota y anonimato, presentando también los problemas típicos que pueden vulnerar estos requisitos junto con soluciones del mundo real.
Dado que la criptografía es un aspecto crítico de la seguridad de redes, se discuten también los algoritmos criptográficos más importantes en el cifrado simétrico, el hashing (resumen hash), el cifrado asimétrico y el acuerdo de claves. En lugar de presentar una base matemática profunda, estos elementos se abordan desde la perspectiva del desarrollador, mostrando ejemplos típicos de casos de uso y consideraciones prácticas relacionadas con el uso de criptografía, como las infraestructuras de clave pública (PKI). Se introducen protocolos de seguridad en diversas áreas de la comunicación segura, con un análisis detallado de las familias de protocolos más utilizadas, como IPSEC y SSL/TLS.
Se abordan vulnerabilidades criptográficas típicas tanto relacionadas con ciertos algoritmos como con protocolos criptográficos, tales como BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, POODLE y similares, así como el ataque de temporización de RSA. En cada caso, se describen las consideraciones prácticas y las posibles consecuencias para cada problema, nuevamente sin entrar en detalles matemáticos profundos.
Finalmente, dado que la tecnología XML es fundamental para el intercambio de datos entre aplicaciones en red, se describen los aspectos de seguridad de XML. Esto incluye el uso de XML dentro de servicios web y mensajes SOAP junto con medidas de protección como la firma XML y el cifrado XML; así como las debilidades en estas medidas de protección y problemas de seguridad específicos de XML, como la inyección XML, ataques de entidades externas a XML (XXE), bombas XML e inyección XPath.
Los participantes que asisten a este curso comprenderán
- Los conceptos básicos de seguridad, seguridad TIC y codificación segura.
- Los requisitos de la comunicación segura.
- Acerca de los ataques y defensas de red en las diferentes capas del modelo OSI.
- Una comprensión práctica de la criptografía.
- Los protocolos de seguridad esenciales.
- Algunos ataques recientes contra sistemas criptográficos.
- Información sobre algunas vulnerabilidades recientes relacionadas.
- Los conceptos de seguridad de los servicios web.
- Fuentes y lecturas complementarias sobre prácticas de codificación segura.
Público objetivo
Desarrolladores, Profesionales
Codificación Segura C / C ++
21 HorasEscribir código seguro en C y C++ requiere una defensa rigurosa contra la explotación maliciosa, la corrupción de memoria y eludir la validación de entradas. Este programa examina patrones de vulnerabilidad que incluyen desbordamientos de búfer, uso después de liberación, desbordamientos enteros y confusión de tipos. Los participantes aplican guías de programación segura, herramientas de análisis estático y técnicas de programación defensiva para eliminar debilidades, imponer la sanitización de entradas y entregar software endurecido resistente a ciberataques.
Seguridad Java Avanzada
21 HorasIncluso los programadores de Java con experiencia no dominan necesariamente todos los servicios de seguridad ofrecidos por Java, y tampoco son conscientes de las distintas vulnerabilidades relevantes para las aplicaciones web escritas en Java.
El curso, además de introducir los componentes de seguridad de la Edición Estándar de Java, aborda cuestiones de seguridad de Java Enterprise Edition (JEE) y servicios web. La discusión sobre servicios específicos va precedida por los fundamentos de la criptografía y la comunicación segura. Diversos ejercicios tratan las técnicas de seguridad declarativa y programática en JEE, mientras se discuten tanto la seguridad en la capa de transporte como la seguridad de extremo a extremo de los servicios web. El uso de todos los componentes se presenta a través de varios ejercicios prácticos, donde los participantes pueden probar por sí mismos las APIs y herramientas discutidas.
El curso también recorre y explica los errores de programación más frecuentes y graves del lenguaje y la plataforma Java, así como las vulnerabilidades relacionadas con la web. Además de los errores típicos cometidos por programadores de Java, las vulnerabilidades de seguridad introducidas abarcan tanto problemas específicos del lenguaje como problemas derivados del entorno de ejecución. Todas las vulnerabilidades y los ataques relevantes se demuestran mediante ejercicios fáciles de entender, seguidos de las pautas de codificación recomendadas y las posibles técnicas de mitigación.
Los participantes que asistan a este curso
- Entenderán los conceptos básicos de seguridad, seguridad de la información (IT) y codificación segura.
- Aprenderán sobre vulnerabilidades web más allá del Top Ten de OWASP y sabrán cómo evitarlas.
- Entenderán los conceptos de seguridad de los servicios web.
- Aprenderán a utilizar diversas características de seguridad del entorno de desarrollo de Java.
- Tendrán una comprensión práctica de la criptografía.
- Entenderán las soluciones de seguridad de Java EE.
- Aprenderán sobre errores típicos de codificación y cómo evitarlos.
- Recibirán información sobre algunas vulnerabilidades recientes en el marco de trabajo de Java.
- Obtendrán conocimiento práctico en el uso de herramientas de prueba de seguridad.
- Recibirán fuentes y lecturas adicionales sobre prácticas de codificación segura.
Público objetivo
Desarrolladores
Programación Groovy
21 HorasApache Groovy es un lenguaje de programación dinámico basado en la JVM (Máquina Virtual de Java). Entre sus características destacan las capacidades para scripting, la creación de Lenguajes Específicos de Dominio, la metaprogramación en tiempo de ejecución y de compilación, y la programación funcional. Groovy se utiliza frecuentemente como complemento a Java.
En este entrenamiento en vivo con instrucción directa, los participantes aprenderán a programar en Groovy mientras avanzan paso a paso en la creación de una aplicación de ejemplo.
Público objetivo
- Desarrolladores
Formato del curso
- Parte expositiva, parte discusión, ejercicios y mucha práctica hands-on (práctica directa)
Programación en Groovy para Principiantes
14 HorasEsta formación en vivo impartida por un instructor en Ecuador (en línea o presencial) está dirigida a desarrolladores principiantes que desean aprender los fundamentos de la programación en Groovy.
Al finalizar esta formación, los participantes serán capaces de:
- Comprender los conceptos básicos de programación.
- Escribir scripts simples en Groovy y utilizar las características principales del núcleo de Groovy.
- Comprender y aplicar los principios básicos de la programación orientada a objetos utilizando Groovy.
- Aprender técnicas básicas de manejo de errores para gestionar errores y excepciones comunes de programación en Groovy.
Microservicios en Java
21 HorasEsta formación en vivo, impartida por un instructor, se realiza en <lugar> (en línea o presencial) y está dirigida a desarrolladores de Java de nivel intermedio que deseen diseñar, desarrollar, implementar y mantener aplicaciones basadas en microservicios utilizando frameworks de Java como Spring Boot y Spring Cloud.
Al finalizar esta capacitación, los participantes serán capaces de:
- Comprender los principios y beneficios de la arquitectura de microservicios.
- Construir e implementar microservicios usando Java y Spring Boot.
- Implementar el descubrimiento de servicios, la gestión de configuraciones y las puertas de enlace API.
- Asegurar, monitorear y escalar microservicios de manera efectiva.
- Desplegar microservicios utilizando Docker y Kubernetes.
Construcción de microservicios con Spring Boot, Docker y Kubernetes
21 HorasEsta formación en vivo dirigida por instructores en Ecuador (disponible en línea o presencial) está orientada a desarrolladores de nivel intermedio a avanzado que buscan dominar el desarrollo de microservicios mediante Spring Boot, Docker y Kubernetes.
Al finalizar esta formación, los participantes podrán:
- Comprender los principios de la arquitectura de microservicios.
- Construir microservicios listos para producción mediante Spring Boot.
- Entender el papel crítico de Docker en la contenedrización de microservicios.
- Configurar clústeres de Kubernetes para implementar y orquestar microservicios.
Quarkus para desarrolladores
14 HorasEsta formación en vivo impartida por un instructor en Ecuador (en línea o presencial) está dirigida a desarrolladores que deseen utilizar Quarkus para construir, probar e implementar aplicaciones, aprovechando plenamente Java, pero con menor consumo de recursos.
Al final de esta formación, los participantes podrán:
- Configurar el entorno de desarrollo necesario para comenzar a crear aplicaciones con Quarkus.
- Construir, compilar y ejecutar aplicaciones en modo nativo utilizando GraalVM.
- Utilizar las herramientas y extensiones de Quarkus para construir aplicaciones nativas mediante Maven.
- Contenerizar, ejecutar e implementar aplicaciones con Docker.
Quarkus para Desarrollo Nativo en Java y Microservicios
40 HorasEsta formación en vivo, impartida por instructores en <ubicación> (en línea o presencial), está dirigida a desarrolladores y arquitectos de nivel intermedio a avanzado que deseen desarrollar aplicaciones nativas en Java y microservicios utilizando Quarkus, con un uso optimizado de memoria y tiempo de inicio.
Al finalizar esta formación, los participantes podrán:
- Desarrollar aplicaciones nativas en Java ligeras y de alto rendimiento utilizando Quarkus.
- Construir e implementar servicios RESTful y arquitecturas de microservicios.
- Usar GraalVM para la compilación nativa y optimizar el inicio y la eficiencia de la memoria.
- Empaquetar y contenerizar aplicaciones para entornos de Kubernetes y OpenShift.
RabbitMQ con Java y Spring
14 HorasEsta formación en vivo impartida por un instructor en <ubicación> (en línea o presencial) está dirigida a arquitectos de software y desarrolladores web que desean utilizar RabbitMQ como middleware de mensajería y programar en Java con Spring para construir aplicaciones.
Al finalizar esta formación, los participantes serán capaces de:
- Utilizar Java y Spring con RabbitMQ para construir aplicaciones.
- Diseñar sistemas asíncronos impulsados por mensajes utilizando RabbitMQ.
- Crear y aplicar colas, temas, intercambios (exchanges) y enlaces en RabbitMQ.
Spring Boot, React y Redux
14 HorasEsta formación en vivo, dirigida por un instructor en Ecuador (en línea o presencial), está orientada a desarrolladores web que desean crear aplicaciones web front-end y back-end funcionales utilizando Spring Boot, React y Redux.
Al finalizar esta formación, los participantes serán capaces de:
- Construir una aplicación front-end con React y Redux.
- Crear APIs RESTful con Spring Boot.
- Asegurar servicios web mediante Spring Security y JWT (JSON Web Tokens).
Spring 5
21 HorasEsta formación en vivo, impartida por un instructor Ecuador (en línea o presencial), está dirigida a desarrolladores de Java que desean utilizar el framework Spring 5 para desarrollar e implementar aplicaciones empresariales.
Al finalizar esta formación, los participantes podrán:
- Instalar y configurar Spring 5.
- Comprender e implementar las últimas características de Spring 5.
- Acceder a bases de datos con aplicaciones Spring.
- Utilizar el nuevo framework web reactivo, WebFlow, para hacer que una aplicación sea reactiva.
- Integrar una aplicación Spring con aplicaciones heredadas de Java EE.
- Probar e implementar una aplicación Spring de grado empresarial.
Fundamentos de Spring con Spring Boot 3.5.5 y Java 21
14 HorasSpring es un marco de trabajo integral para Java que simplifica el desarrollo de aplicaciones empresariales mediante la inyección de dependencias potente, una arquitectura modular y opciones de configuración optimizadas.
Esta formación en vivo con instructor (en línea o presencial) está dirigida a desarrolladores de Java principiantes que deseen construir aplicaciones web modernas y listas para producción utilizando la versión más reciente del Framework Spring y Spring Boot 3.5.5 con Java 21.
Al finalizar esta capacitación, los participantes podrán:
- Comprender los principios centrales de Spring, incluyendo IoC (Control Invertido), DI (Inyección de Dependencias) y AOP (Programación Orientada a Aspectos).
- Configurar aplicaciones Spring utilizando XML, anotaciones y JavaConfig.
- Desarrollar servicios RESTful empleando Spring Boot y JPA.
- Implementar operaciones CRUD, gestionar transacciones y administrar la persistencia de datos.
- Utilizar características avanzadas de Spring como perfiles, manejo de excepciones y serialización de datos.
Formato del curso
- Breve introducción teórica seguida de ejercicios prácticos extensos.
- Implementación práctica mediante ejemplos del mundo real.
- Discusión interactiva y resolución guiada de problemas.
Opciones de personalización del curso
- Para solicitar una formación personalizada para este curso, por favor contáctenos para coordinar los detalles.
Spring WebFlux: Programación reactiva para aplicaciones web escalables
35 HorasSpring WebFlux es un módulo de programación reactiva dentro del Framework Spring, diseñado para crear aplicaciones web no bloqueantes y orientadas a eventos.
Esta formación en vivo, impartida por instructores (en línea o presencial), está dirigida a desarrolladores Java de nivel principiante a intermedio que deseen construir aplicaciones escalables y responsivas utilizando Spring WebFlux.
Al finalizar esta formación, los participantes serán capaces de:
- Comprender los fundamentos de la programación reactiva con Project Reactor.
- Crear y probar APIs RESTful no bloqueantes utilizando Spring WebFlux.
- Integrar WebFlux con bases de datos y servicios externos.
- Aplicar patrones reactivos a escenarios de aplicaciones del mundo real.
Formato del curso
- Conferencias y discusiones interactivas.
- Abundancia de ejercicios y práctica.
- Implementación práctica en un entorno de laboratorio en vivo.
Opciones de personalización del curso
- Para solicitar una formación personalizada para este curso, por favor contáctenos para coordinar los detalles.
Spring WebFlux
14 HorasEsta formación en vivo impartida por instructores en Ecuador (en línea o presencial) está dirigida a desarrolladores que deseen utilizar WebFlux para desarrollar e implementar aplicaciones reactivas.
Al finalizar esta formación, los participantes podrán:
- Instalar y configurar Spring 5 y el marco WebFlux.
- Desarrollar aplicaciones y servicios reactivos.