Desarrollo Seguro en Java (Incluye OWASP)
Este curso abarca los conceptos y principios de codificación segura con Java a través de la metodología de pruebas del Proyecto Abierto de Seguridad de Aplicaciones Web (OWASP). El Proyecto Abierto de Seguridad de Aplicaciones Web es una comunidad en línea que crea artículos, metodologías, documentación, herramientas y tecnologías de acceso libre en el campo de la seguridad de aplicaciones web.
Temario del curso
- Comprender las amenazas web y los vectores de ataque.
- Conocer los principios del diseño seguro.
- Comprender los ataques de la lista OWASP Top 10.
- Comprender los problemas de autenticación y autorización.
- Saber cómo prevenir el Cross-Site Scripting (XSS).
- Saber cómo prevenir el Cross-Site Request Forgery (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 las aplicaciones Java.
Requerimientos
- Experiencia con Java.
- Experiencia en la creación de aplicaciones web.
Los cursos públicos requieren más de 5 participantes.
Desarrollo Seguro en Java (Incluye OWASP) - Reserva
Desarrollo Seguro en Java (Incluye OWASP) - Consulta
Desarrollo Seguro en Java (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 de red segura puede resultar desafiante, incluso para desarrolladores que ya hayan trabajado con diversos elementos criptográficos básicos (como cifrado y firmas digitales). Con el objetivo de que los participantes comprendan el papel y la utilidad de estos primitivos criptográficos, en primer lugar se proporciona una base sólida sobre los requisitos principales de las comunicaciones seguras: confirmación segura, integridad, confidencialidad, identificación remota y anonimato; además, se presentan los problemas típicos que pueden comprometer estos requisitos junto con soluciones del mundo real.
Dado que la criptografía es un aspecto crítico de la seguridad de redes, también se analizan los algoritmos criptográficos más importantes en criptografía simétrica, funciones hash, criptografía asimétrica y acuerdo de claves. En lugar de ofrecer un fondo matemático exhaustivo, estos conceptos se abordan desde una perspectiva de desarrollo, 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 los protocolos de seguridad en diversas áreas de las comunicaciones seguras, con un análisis detallado de las familias de protocolos más utilizadas, como IPSEC y SSL/TLS.
Se examinan las vulnerabilidades criptográficas comunes tanto en ciertos algoritmos criptográficos como en protocolos criptográficos, entre ellas BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, POODLE y otras similares, así como el ataque de temporización contra RSA. En cada caso, se describen las consideraciones prácticas y las posibles consecuencias de cada problema, nuevamente sin profundizar en detalles matemáticos.
Finalmente, dado que la tecnología XML es fundamental para el intercambio de datos entre aplicaciones de red, se describen los aspectos de seguridad relacionados con XML. Esto incluye el uso de XML dentro de servicios web y mensajes SOAP, junto con medidas de protección como firma XML y cifrado XML; además, se abordan las debilidades en estas medidas de protección y problemas específicos de seguridad de XML, como inyección XML, ataques de entidad externa XML (XXE), bombas XML e inyección XPath.
Los participantes que asistan a este curso
- Comprenderán los conceptos básicos de seguridad, seguridad informática y desarrollo seguro.
- Entenderán los requisitos de las comunicaciones seguras.
- Aprenderán sobre ataques y defensas en redes en distintas capas del modelo OSI.
- Tendrán una comprensión práctica de la criptografía.
- Comprenderán los protocolos de seguridad esenciales.
- Conocerán algunos ataques recientes contra sistemas criptográficos.
- Obtendrán información sobre vulnerabilidades relacionadas recientes.
- Entenderán los conceptos de seguridad de los servicios web.
- Recibirán fuentes y lecturas adicionales sobre prácticas de desarrollo seguro.
Público objetivo
Desarrolladores, profesionales
Codificación Segura C / C ++
21 HorasEscribir código seguro en C y C++ exige una defensa rigurosa frente a explotaciones maliciosas, corrupción de memoria y eludición de la validación de entradas. Este programa analiza patrones de vulnerabilidades como desbordamientos de búfer, uso después de liberar, desbordamientos enteros y confusión de tipos. Los participantes aplicarán guías de programación segura, herramientas de análisis estático y técnicas de programación defensiva para eliminar puntos débiles, imponer la sanitización de entradas y entregar software endurecido, resistente ante ciberataques.
Seguridad Java Avanzada
21 HorasIncluso los programadores de Java con experiencia no dominan necesariamente todos los servicios de seguridad ofrecidos por el lenguaje, ni están completamente conscientes de las vulnerabilidades diferentes que son relevantes para las aplicaciones web escritas en Java.
El curso, además de presentar los componentes de seguridad de la Edición Estándar de Java (SE), aborda los problemas de seguridad de la Edición Empresarial de Java (JEE) y de los servicios web. La discusión sobre servicios específicos se precede con los fundamentos de la criptografía y la comunicación segura. Varios ejercicios tratan las técnicas de seguridad declarativa y programática en JEE, mientras que se discuten tanto la seguridad de 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 API y herramientas discutidas.
El curso también recorre y explica los errores de programación más frecuentes y severos 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 cubren tanto problemas específicos del lenguaje como problemas derivados del entorno de ejecución. Todas las vulnerabilidades y los ataques relevantes se demuestran a través de ejercicios fáciles de entender, seguidos de las directrices de codificación recomendadas y las posibles técnicas de mitigación.
Los participantes que asisten a este curso
- Comprenderán los conceptos básicos de seguridad, seguridad informática y codificación segura.
- Aprenderán sobre vulnerabilidades web más allá del OWASP Top Ten y sabrán cómo evitarlas.
- Comprenderán los conceptos de seguridad de los servicios web.
- Aprenderán a utilizar diversas funciones de seguridad del entorno de desarrollo de Java.
- Tendrán una comprensión práctica de la criptografía.
- Comprenderán las soluciones de seguridad de Java EE.
- Aprenderán sobre errores de codificación típicos y cómo evitarlos.
- Recibirán información sobre algunas vulnerabilidades recientes en el framework 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.
Audiencia
Desarrolladores
Programación Groovy
21 HorasApache Groovy es un lenguaje de programación dinámico para la JVM (Máquina Virtual de Java). Entre sus características se incluyen capacidades de scripting, autoría de lenguajes específicos de dominio, metaprogramación en tiempo de ejecución y en tiempo de compilación, así como programación funcional. Groovy suele utilizarse como complemento a Java.
En este curso práctico con instructor, los participantes aprenderán a programar en Groovy mientras desarrollan paso a paso una aplicación de ejemplo.
Público objetivo
- Desarrolladores
Formato del curso
- Clases teóricas, discusiones grupales, ejercicios y mucha práctica hands-on
Programación con Groovy para principiantes
14 HorasEsta formación en vivo, impartida por un instructor en México (en línea o presencial), está dirigida a desarrolladores de nivel principiante que desean aprender los conceptos básicos de la programación en Groovy.
Al finalizar esta capacitación, los participantes podrán:
- Comprender los conceptos fundamentales de programación.
- Escribir scripts sencillos en Groovy y utilizar las características principales del lenguaje.
- Entender y aplicar los principios básicos de la programación orientada a objetos usando Groovy.
- Aprender técnicas básicas de manejo de errores para gestionar errores comunes y excepciones en Groovy.
Microservicios en Java
21 HorasEsta formación en vivo impartida por un instructor en México (en línea o presencial) está dirigida a desarrolladores de Java con conocimientos intermedios 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 (API gateways).
- Asegurar, supervisar y escalar microservicios de manera efectiva.
- Desplegar microservicios utilizando Docker y Kubernetes.
Creación de microservicios con Spring Boot, Docker y Kubernetes
21 HorasEsta formación práctica impartida por un instructor en México (disponible en línea o presencial) está adaptada para desarrolladores intermedios a avanzados que buscan dominar el desarrollo de microservicios utilizando Spring Boot, Docker y Kubernetes.
Al finalizar esta formación, los participantes serán capaces de:
- Comprender los principios de la arquitectura de microservicios.
- Construir microservicios listos para producción utilizando Spring Boot.
- Entender el papel crucial de Docker en el contenedurizado de microservicios.
- Configurar clústeres de Kubernetes para implementar y orquestar microservicios.
Quarkus para desarrolladores
14 HorasEsta capacitación en vivo impartida por un instructor en México (en línea o presencial) está dirigida a desarrolladores que desean utilizar Quarkus para crear, probar e implementar aplicaciones, aprovechando todo el potencial de Java con un menor uso de recursos.
Al finalizar esta capacitació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.
- Aprovechar las herramientas y extensiones de Quarkus para construir aplicaciones nativas con Maven.
- Contenerizar, ejecutar e implementar aplicaciones con Docker.
Quarkus para Desarrollo Nativo en Java y Microservicios
40 HorasEsta formación presencial impartida por un instructor en <ubicación> (en línea o in situ) está dirigida a desarrolladores y arquitectos de nivel intermedio a avanzado que deseen crear aplicaciones nativas de Java y microservicios utilizando Quarkus, optimizando el uso de memoria y el tiempo de inicio.
Al finalizar esta formación, los participantes podrán:
- Desarrollar aplicaciones nativas de Java ligeras y de alto rendimiento con Quarkus.
- Construir e implementar servicios RESTful y arquitecturas de microservicios.
- Utilizar GraalVM para la compilación nativa y optimizar el inicio y la eficiencia de memoria.
- Empaquetar y contenerar aplicaciones para entornos Kubernetes y OpenShift.
RabbitMQ con Java y Spring
14 HorasEsta formación en vivo dirigida por un instructor en México (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 usando Spring para construir aplicaciones.
Al finalizar esta formación, los participantes podrán:
- Utilizar Java y Spring con RabbitMQ para construir aplicaciones.
- Diseñar sistemas asíncronos impulsados por mensajes utilizando RabbitMQ.
- Crear y aplicar colas, temas (topics), intercambios (exchanges) y vinculaciones (bindings) en RabbitMQ
Spring Boot, React y Redux
14 HorasEsta formación en directo, impartida por un instructor, en <ubicación> (en línea o presencial), está dirigida a desarrolladores web que deseen crear aplicaciones web front-end y back-end funcionales con Spring Boot, React y Redux.
Al finalizar esta formación, los participantes serán capaces de:
- Desarrollar una aplicación front-end con React y Redux.
- Crear APIs RESTful con Spring Boot.
- Segurizar servicios web mediante Spring Security y tokens web JWT.
Spring 5
21 HorasEste entrenamiento en vivo, impartido por un instructor en México (en línea o presencial), está dirigido a desarrolladores de Java que desean utilizar el framework Spring 5 para desarrollar e implementar aplicaciones web empresariales.
Al finalizar este entrenamiento, los participantes serán capaces de:
- Instalar y configurar Spring 5.
- Comprender e implementar las últimas características de Spring 5.
- Acceder a bases de datos con una aplicación de Spring.
- Utilizar el nuevo framework web reactivo, WebFlow, para hacer que una aplicación sea reactiva.
- Integrar una aplicación de Spring con aplicaciones Java EE heredadas.
- 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 integral para Java que simplifica el desarrollo de aplicaciones empresariales al ofrecer una inyección de dependencias potente, una arquitectura modular y opciones de configuración optimizadas.
Esta formación en vivo impartida por un instructor (en línea o presencial) está dirigida a desarrolladores de Java de nivel principiante que deseen crear aplicaciones web modernas y listas para producción utilizando la versión más reciente del Marco Spring y Spring Boot 3.5.5 con Java 21.
Al finalizar esta formación, los participantes serán capaces de:
- Comprender los principios fundamentales de Spring, como IoC, DI y AOP.
- Configurar aplicaciones Spring mediante XML, anotaciones y JavaConfig.
- Desarrollar servicios RESTful usando 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 extensos ejercicios prácticos.
- Implementación práctica mediante ejemplos del mundo real.
- Discusión interactiva y resolución de problemas guiada.
Opciones de personalización del curso
- Para solicitar una formación personalizada para este curso, 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 marco de trabajo Spring, diseñado para construir aplicaciones web no bloqueantes y basadas en eventos.
Esta formación en vivo con instructor (en línea o presencial) está dirigida a desarrolladores de Java de nivel principiante a intermedio que desean 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.
- Construir y probar APIs RESTful no bloqueantes usando Spring WebFlux.
- Integrar WebFlux con bases de datos y servicios externos.
- Aplicar patrones reactivos a escenarios del mundo real.
Formato del curso
- Charla interactiva y discusión.
- Muchas 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.
Spring WebFlux
14 HorasEsta capacitación en vivo impartida por un instructor en México (en línea o presencial) está dirigida a desarrolladores que deseen utilizar WebFlux para desarrollar e implementar aplicaciones reactivas.
Al finalizar esta capacitación, los participantes serán capaces de:
- Instalar y configurar Spring 5 y el marco WebFlux.
- Desarrollar aplicaciones y servicios reactivos.