Desarrollador Seguro en Java (con OWASP)
Este curso abarca los conceptos y principios de codificación segura en Java a través de la metodología de pruebas del Proyecto Abierto de Seguridad de Aplicaciones Web (OWASP). El Open Web Application Security Project es una comunidad en línea que crea artículos, metodologías, documentación, herramientas y tecnologías de libre acceso en el campo de la seguridad de aplicaciones web.
Temario del curso
- Comprender las amenazas y vectores de ataque en la web.
- Conocer los principios del diseño seguro.
- Comprender los ataques OWASP Top 10.
- Entender 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.
- Entender las protecciones en JDBC y JPA.
- Conocer las metodologías de pruebas de penetración.
- Saber cómo asegurar aplicaciones en Java.
Requerimientos
- Experiencia con Java.
- Experiencia en la creación de aplicaciones web.
Los cursos públicos requieren más de 5 participantes.
Desarrollador Seguro en Java (con OWASP) - Reserva
Desarrollador Seguro en Java (con OWASP) - Consulta
Desarrollador Seguro en Java (con 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 ser un desafío, incluso para desarrolladores que hayan utilizado previamente diversos componentes criptográficos (como cifrado y firmas digitales). Para que los participantes comprendan el rol y el uso de estos elementos criptográficos básicos, primero se proporciona una base sólida sobre los requisitos principales de la comunicación segura: confirmación segura, integridad, confidencialidad, identificación remota y anonimato. También 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 las redes, también se abordan los algoritmos criptográficos más importantes en la criptografía simétrica, el hash, la criptografía asimétrica y el acuerdo de claves. En lugar de presentar una base matemática exhaustiva, estos elementos se analizan desde la perspectiva de un 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. Se introducen los protocolos de seguridad en varias áreas de la comunicación segura, con un análisis detallado de las familias de protocolos más ampliamente utilizadas, como IPSEC y SSL/TLS.
Se discuten las vulnerabilidades criptográficas típicas, tanto las relacionadas con ciertos algoritmos criptográficos como con los protocolos criptográficos, 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 de cada problema, nuevamente, sin entrar en detalles matemáticos profundos.
Finalmente, dado que la tecnología XML es central para el intercambio de datos entre aplicaciones de red, se describen los aspectos de seguridad del 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 esas medidas de protección y problemas de seguridad específicos de XML, como la inyección XML, ataques de entidades externas 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 programación segura
- Comprenderán los requisitos de la comunicación segura
- Aprenderán sobre ataques y defensas de red en diferentes capas OSI
- Tendrán una comprensión práctica de la criptografía
- Comprenderán los protocolos de seguridad esenciales
- Entenderán algunos ataques recientes contra sistemas criptográficos
- Recibirán información sobre algunas vulnerabilidades recientes relacionadas
- Comprenderán los conceptos de seguridad de los servicios web
- Obtendrán fuentes y lecturas complementarias sobre prácticas de programación segura
Audiencia 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, como desbordamientos de búfer, uso después de liberar (use-after-free), desbordamientos enteros y confusión de tipos. Los participantes aplican directrices de codificació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 las entradas y entregar software endurecido resistente a ciberataques.
Seguridad Java Avanzada
21 HorasIncluso los programadores experimentados en Java no dominan necesariamente todos los servicios de seguridad que ofrece 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 los problemas de seguridad de la Edición Empresarial de Java (JEE) y de los servicios web. El tratamiento de servicios específicos se precede por los fundamentos de la criptografía y las comunicaciones seguras. Varios ejercicios tratan sobre técnicas declarativas y programáticas de seguridad en JEE, mientras que se analizan tanto la seguridad a nivel de transporte como la seguridad de extremo a extremo de los servicios web. El uso de todos los componentes se presenta mediante varios ejercicios prácticos, donde los participantes pueden probar por sí mismos las APIs y herramientas comentadas.
El curso también revisa y explica los fallos de programación más frecuentes y graves del lenguaje y la plataforma Java, así como 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 correspondientes 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
- Comprenderán los conceptos básicos de seguridad, la seguridad informática y la codificación segura
- Aprenderán sobre vulnerabilidades web más allá de las OWASP Top Ten y sabrán cómo evitarlas
- Comprenderán los conceptos de seguridad de los servicios web
- Aprenderán a utilizar varias características de seguridad del entorno de desarrollo 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 típicos de codificación y cómo evitarlos
- Obtendrán información sobre algunas vulnerabilidades recientes en el marco de trabajo de Java
- Obtendrán conocimientos prácticos 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 para la JVM (Máquina Virtual de Java). Entre sus características destacan: capacidades de scripting, creación de lenguajes específicos del dominio (DSL), metaprogramación en tiempo de ejecución y de compilación, y programación funcional. Groovy suele utilizarse como complemento a Java.
En esta formación presencial impartida por un instructor, los participantes aprenderán a programar en Groovy mientras avanzan en la creación de una aplicación de ejemplo.
Público objetivo
- Desarrolladores
Estructura del curso
- Combina conferencias, debates, ejercicios y una amplia práctica hands-on (aprendizaje basado en la experiencia)
Programación con Groovy para principiantes
14 HorasEsta formación en vivo, impartida por instructores en <ubic> (en línea o presencial), está dirigida a desarrolladores de nivel principiante que desean aprender los fundamentos de la programación con Groovy.
Al finalizar esta capacitación, los participantes serán capaces de:
- Comprender los conceptos básicos de programación.
- Escribir scripts simples de 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 comunes y excepciones en Groovy.
Microservicios en Java
21 HorasEsta formación práctica impartida por un instructor en Guatemala (en línea o presencial) está dirigida a desarrolladores de Java de nivel intermedio que desean 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 podrán:
- Comprender los principios y beneficios de la arquitectura de microservicios.
- Crear e implementar microservicios usando Java y Spring Boot.
- Implementar el descubrimiento de servicios, la gestión de configuraciones y las puertas de enlace de API (API gateways).
- Asegurar, monitorear y escalar los microservicios de manera efectiva.
- Implementar microservicios usando Docker y Kubernetes.
Construcción de Microservicios con Spring Boot, Docker y Kubernetes
21 HorasEsta formación en vivo impartida por un instructor en Guatemala (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 crítico de Docker en la contenerización de microservicios.
- Configurar clústeres de Kubernetes para desplegar y orquestar microservicios.
Quarkus para desarrolladores
14 HorasEsta formación en vivo impartida por un instructor en <ubicación> (en línea o presencial) está dirigida a desarrolladores que desean utilizar Quarkus para crear, probar e implementar aplicaciones con todo el potencial de Java, pero consumiendo menos recursos.
Al finalizar esta formación, los participantes serán capaces de:
- Configurar el entorno de desarrollo necesario para comenzar a crear aplicaciones con Quarkus.
- Compilar, construir y ejecutar aplicaciones en modo nativo utilizando GraalVM.
- Utilizar las herramientas y extensiones de Quarkus para construir aplicaciones nativas usando Maven.
- Contenerizar, ejecutar e implementar aplicaciones con Docker.
Quarkus para Desarrollo Nativo en Java y Microservicios
40 HorasEsta formación en vivo impartida por un instructor en <ubicación> (en línea o presencial) está dirigida a desarrolladores y arquitectos de nivel intermedio a avanzado que desean crear aplicaciones nativas en 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 en Java ligeras y de alto rendimiento con Quarkus.
- Construir e implementar arquitecturas de microservicios y servicios RESTful.
- Utilizar GraalVM para la compilación nativa y optimizar la eficiencia en el inicio y el consumo de memoria.
- Empaquetar y contenerizar aplicaciones para entornos de Kubernetes y OpenShift.
RabbitMQ con Java y Spring
14 HorasEste entrenamiento en vivo dirigido por un instructor en Guatemala (en línea o presencial) está dirigido a arquitectos de software y desarrolladores web que deseen utilizar RabbitMQ como middleware de mensajería y programar en Java usando Spring para crear aplicaciones.
Al finalizar este entrenamiento, los participantes podrán:
- Utilizar Java y Spring con RabbitMQ para construir aplicaciones.
- Diseñar sistemas asíncronos basados en mensajes utilizando RabbitMQ.
- Crear y aplicar colas, temas (topics), intercambios y enlaces en RabbitMQ
Spring Boot, React y Redux
14 HorasEsta formación en vivo impartida por un instructor en Guatemala (en línea o presencial) está dirigida a desarrolladores web que desean construir 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:
- Construir una aplicación front-end con React y Redux.
- Crear APIs RESTful con Spring Boot.
- Asegurar servicios web con Spring Security y tokens web JWT.
Primavera 5
21 HorasEsta capacitación en vivo con instrucción presencial en Guatemala (en línea o in situ) está dirigida a desarrolladores de Java que desean utilizar el framework Spring 5 para desarrollar e implementar aplicaciones web empresariales.
Al finalizar esta capacitación, los participantes serán capaces de:
- Instalar y configurar Spring 5.
- Comprender e implementar las características más recientes de Spring 5.
- Acceder a bases de datos mediante 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 nivel empresarial.
Fundamentos de Spring con Spring Boot 3.5.5 y Java 21
14 HorasSpring es un framework integral para Java que simplifica el desarrollo de aplicaciones empresariales al ofrecer 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 principiantes que desean construir aplicaciones web modernas y listas para producción utilizando la última versión del Framework de Spring y Spring Boot 3.5.5 con Java 21.
Al finalizar esta formación, los participantes serán capaces de:
- Comprender los principios básicos de Spring, incluyendo IoC (Inversión de Control), DI (Inyección de Dependencias) y AOP (Programación Orientada a Aspectos).
- Configurar aplicaciones de 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
- Introducción teórica breve seguida de extensos ejercicios prácticos.
- Implementación práctica con 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, contáctenos para coordinarla.
Spring WebFlux: Programación Reactiva para Aplicaciones Web Escalables
35 HorasSpring WebFlux es un módulo de programación reactiva dentro del Framework de 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 Java de nivel principiante e intermedio que deseen crear aplicaciones escalables y responsivas utilizando Spring WebFlux.
Al finalizar este curso, los participantes serán capaces de:
- Comprender los fundamentos de la programación reactiva con Project Reactor.
- Construir y probar APIs REST no bloqueantes utilizando Spring WebFlux.
- Integrar WebFlux con bases de datos y servicios externos.
- Aplicar patrones reactivos a escenarios del mundo real.
Formato del Curso
- Clase interactiva y discusión en grupo.
- Abundantes 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 un instructor en Guatemala (en línea o presencial) está dirigida a desarrolladores que desean utilizar WebFlux para crear y desplegar 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.