A tu propio ritmo

Explora nuestra extensa colección de cursos diseñados para ayudarte a dominar varios temas y habilidades. Ya seas un principiante o un aprendiz avanzado, aquí hay algo para todos.

Bootcamp

Aprende en vivo

Únete a nosotros en nuestros talleres gratuitos, webinars y otros eventos para aprender más sobre nuestros programas y comenzar tu camino para convertirte en desarrollador.

Próximos eventos en vivo

Catálogo de contenidos

Para los geeks autodidactas, este es nuestro extenso catálogo de contenido con todos los materiales y tutoriales que hemos desarrollado hasta el día de hoy.

Tiene sentido comenzar a aprender leyendo y viendo videos sobre los fundamentos y cómo funcionan las cosas.

Buscar en lecciones


IngresarEmpezar

Regístrate en 4Geeks

← Volver a Proyectos

Proyecto Final de Ciberseguridad

Dificultad

  • intermediate

Duración promedio

3 hrs

Tecnologías

Dificultad

  • intermediate

Duración promedio

3 hrs

Tecnologías

Proyecto final de ciberseguridad
  • Antes de empezar...

Proyecto final de ciberseguridad

By @rosinni and other contributors at 4Geeks Academy

last commit build by developers build by developers

These instructions are available in english

Antes de empezar...

¡Te necesitamos! Estos ejercicios se crean y mantienen en colaboración con personas como tú. Si encuentras algún error o falta de ortografía, contribuye y/o repórtalo.

🌱 ¿Cómo empezar este proyecto?

Para este proyecto final, asumirás el rol de analista de ciberseguridad encargado de restaurar y proteger un servidor crítico que ha sido comprometido en 4Geeks Academy. Se te proporcionará una máquina hackeada que simula un servidor clave de la empresa, y tu tarea será restablecer su seguridad, corregir las vulnerabilidades explotadas y garantizar su funcionamiento óptimo. El ejercicio se divide en tres fases que pondrán a prueba tus habilidades en análisis forense, detección y corrección de vulnerabilidades, y respuesta ante incidentes.

  • Fase 1 - Corrección de un hackeo Durante la primera fase, deberas realizar un análisis forense del incidente, identificar las vulnerabilidades explotadas por el atacante, y bloquear el exploit para evitar que el ataque escale.

  • Fase 2 - Detección y corrección de una nueva vulnerabilidad En la segunda fase, escanea el sistema en busca de una vulnerabilidad adicional, diferente a la explotada anteriormente. Tras detectarla, explota la vulnerabilidad de manera controlada para entender su impacto, escalar sus privilegios, corregirla, y crear un informe que explique todo el proceso.

  • Fase 3 - Plan de respuesta a incidentes y certificación La fase final consiste en diseñar un plan de respuesta a incidentes basado en las mejores prácticas de la industria, como las recomendaciones del NIST. Como parte de este ejercicio, debes desarrollar un Sistema de Gestión de Seguridad de la Información (SGSI) conforme a la norma ISO 27001, que incluya medidas para prevenir la fuga de datos mediante políticas de prevención de pérdida de datos (DLP).

📝 Instrucciones

Fase 1: Analisis Forense

Objetivo: Lleva a cabo un análisis forense para bloquear el exploit, corregir la vulnerabilidad y evitar que el atacante escale.

  1. Identifica qué servicios fueron comprometidos y cómo el atacante accedió al servidor. Pueden usar herramientas como grep para revisar los logs del sistema (por ejemplo, /var/log/auth.log para conexiones SSH).
  2. Identifica archivos sospechosos, procesos en ejecución y cualquier modificación inusual en el sistema.
  3. Realiza un escaneo del servidor para detectar rootkits o malware.
  4. Bloquea el exploit y previene la escalación. Deten los servicios comprometidos temporalmente (systemctl stop servicio) en caso de ser necesario.
  5. Revierte los cambios realizados por el atacante (eliminar usuarios no autorizados, eliminar backdoors, cerrar puertos innecesarios).
  6. Actualiza y corrige configuraciones de seguridad (actualiza paquetes, cambia contraseñas, mejora configuraciones de firewall, si es necesario).
  7. Prepara un informe detallado que incluya las medidas tomadas para mitigar el ataque y evitar la escalación. Además incluye recomendaciones sobre cómo prevenir futuros ataques de la misma índole.

Fase 2: Detecta y corrige una vulnerabilidad diferente

Objetivo: Escanear, detectar y explotar una vulnerabilidad diferente a la explotada anteriormente y crear un informe que explique todo el proceso.

  1. Realiza un escaneo completo del sistema usando herramientas como Nmap.
  2. Detecta una vulnerabilidad no relacionada con el hackeo anterior, como una mala configuración en Apache, puertos abiertos innecesarios, o un servicio expuesto y explota esta vulnerabilidad detectada.
  3. Documenta el proceso de explotación y los pasos realizados para comprometer el servicio o escalar privilegios.
  4. Aplica medidas para corregir la vulnerabilidad encontrada, como cerrar puertos, cambia configuraciones de seguridad, o restringe accesos.
  5. Prepara un informe detallado que incluya la vulnerabilidad detectada, el proceso de explotación y las medidas aplicadas para corregirla.

Fase 3: Plan de respuesta de incidentes y certificación

Objetivo: Diseña un plan de respuesta a incidentes basado en las mejores prácticas y desarrolla un Sistema de Gestión de Seguridad de la Información (SGSI) conforme a la norma ISO 27001.

  1. Desarrolla un plan de respuesta basado en la guía del NIST SP 800-61, que incluya cómo identificar, contener, erradicar y recuperar de futuros incidentes de seguridad.
  2. Detalla cómo la organización respondería a un ataque similar al hackeo realizado y cómo prevenir la recurrencia.
  3. Identifica y documenta los mecanismos de protección de datos, como el uso de respaldos periódicos, cifrado de datos sensibles y la implementación de controles de acceso estrictos.
  4. Implementar un SGSI (ISO 27001). Desarrolla un Sistema de Gestión de Seguridad de la Información (SGSI) que cumpla con los estándares de ISO 27001, como: análisis de riesgos, definición de políticas de seguridad, planes de acción para proteger la información crítica de la empresa.

📦 ¿Cómo entregar este proyecto?

Colaboradores

Gracias a estas personas maravillosas (emoji key):

  1. Rosinni Rodríguez (rosinni) contribución: (build-tutorial) ✅, (documentación) 📖

  2. Alejandro Sanchez (alesanchezr), contribución: (detector bugs) 🐛

Este proyecto sigue la especificación all-contributors. ¡Todas las contribuciones son bienvenidas!

Este y otros ejercicios son usados para aprender a programar por parte de los alumnos de 4Geeks Academy Coding Bootcamp realizado por Alejandro Sánchez y muchos otros contribuyentes. Conoce más sobre nuestros Cursos de Programación para convertirte en Full Stack Developer, o nuestro Data Science Bootcamp.Tambien puedes adentrarte al mundo de ciberseguridad con nuestro Bootcamp de ciberseguridad.

Regístrate para obtener acceso a archivos y video de la solución

Lo usaremos para darte acceso a la comunidad.
¿Ya tienes una cuenta? Inicia sesión aquí.

Al registrarte estás aceptando nuestros Términos y condiciones y Política de privacidad.

Dificultad

  • intermediate

Duración promedio

3 hrs

Tecnologías

Dificultad

  • intermediate

Duración promedio

3 hrs

Tecnologías

Dificultad

  • intermediate

Duración promedio

3 hrs

Tecnologías

Dificultad

  • intermediate

Duración promedio

3 hrs

Tecnologías

Regístrate para obtener acceso a archivos y video de la solución

Lo usaremos para darte acceso a la comunidad.
¿Ya tienes una cuenta? Inicia sesión aquí.

Al registrarte estás aceptando nuestros Términos y condiciones y Política de privacidad.

Dificultad

  • intermediate

Duración promedio

3 hrs

Tecnologías

Dificultad

  • intermediate

Duración promedio

3 hrs

Tecnologías