SOC Open Source, ELK- TheHive- Cortex- MISP Complete Setup Guide, Part 1
Introducción al episodio
Resumen de la sección: En este episodio, se abrirán todas las plataformas de SOCKS para los espectadores. Se cubrirá desde el SIM hasta la gestión de casos, inteligencia de amenazas y automatización.
Arquitectura del proyecto
- La arquitectura consta de varias plataformas interconectadas.
- Elastic es utilizado para lanzar alertas.
- Hive es una solución de gestión de casos.
- Cortex es una plataforma para análisis y respuesta a incidentes.
Funcionalidad del proyecto
- Las alertas lanzadas en Elastic son enviadas a Hive para su gestión.
- Se pueden verificar observables y amenazas en la configuración actual.
- Se mostrará cómo instalar y configurar todas las herramientas necesarias.
Descripción general del proyecto
Resumen de la sección: Se muestra la arquitectura del proyecto y se explica cómo funcionan juntas las diferentes plataformas.
Consolas utilizadas
- Elastic Console
- MISP Console
- Cortex
- The Hive Console
Descripción del proyecto Hive
- Hive es una solución de gestión de casos.
- Permite crear nuevos casos y asignarles etiquetas, severidad, etc.
Creación de un caso en Hive
- Crear un nuevo caso con un título descriptivo.
- Asignar etiquetas y descripción al caso.
- Agregar observables relacionados con el incidente.
Gestión de observables en Hive
Resumen de la sección: Se explica cómo gestionar observables en Hive.
- Los observables son elementos como direcciones IP, hashes, etc.
- Se pueden agregar observables relacionados con el incidente.
- Cada observable tiene información detallada y puede tener tareas asociadas.
Tareas en Hive
Resumen de la sección: Se explica cómo utilizar las tareas en Hive para dividir el trabajo entre los analistas.
- Las tareas permiten dividir las responsabilidades entre los analistas.
- Por ejemplo, se pueden asignar tareas de forense o análisis de red a diferentes analistas.
Asignación de tareas y análisis de malware
Resumen de la sección: En esta sección, se muestra cómo asignar tareas a los usuarios y realizar análisis de malware utilizando la herramienta Cortex. También se destaca la integración con MISP y VirusTotal para buscar información relevante.
Asignación de tareas
- Se puede asignar una tarea a un usuario específico utilizando el comando "create task" seguido del nombre de la tarea.
- Ejemplo:
create task malware analysis
- Las tareas pueden estar relacionadas con temas como ingeniería inversa o cualquier otro tema relevante.
Análisis de malware
- La herramienta Cortex está integrada con MISP y VirusTotal.
- Es posible realizar búsquedas en VirusTotal y consultar información desde Cortex sin necesidad de acceder a otras plataformas.
- En la sección "Hive" y "Observable", se pueden crear análisis utilizando diferentes acciones.
- Por ejemplo, es posible buscar información sobre una dirección IP específica en MISP o VirusTotal.
- Ejemplo:
8.8.8(dirección IP)
- Los análisis realizados aparecerán en el historial de trabajos, mostrando si están en progreso o completados.
Configuración del analizador y visualización del informe
Resumen de la sección: Aquí se muestra cómo configurar los analizadores en Cortex y cómo visualizar los informes generados por ellos.
Configuración del analizador
- En la sección "Organization" -> "Analyzer Configuration", es posible habilitar diferentes analizadores como AbuseIPDB, AbuseFinder, Any.Run Sandbox, entre otros.
- Se requiere una clave de API para habilitar estos analizadores.
Visualización del informe
- En la sección "Jobs History", se pueden ver los informes generados por los analizadores.
- Los informes muestran un resumen de los resultados obtenidos, como las detecciones realizadas por VirusTotal y otras fuentes.
- Es posible ver el informe completo de VirusTotal para obtener más detalles sobre las detecciones realizadas.
Búsqueda automática desde Hive
Resumen de la sección: Aquí se muestra cómo realizar búsquedas automáticas desde Hive utilizando Cortex.
- Desde Hive, es posible realizar búsquedas automáticas en MISP y VirusTotal utilizando la función "Action".
- Por ejemplo, se puede buscar una dirección IP específica en VirusTotal y también consultar información interna en MISP.
- Las búsquedas realizadas desde Hive aparecerán en Cortex sin necesidad de acceder manualmente a la plataforma.
Integración con Elastic y creación de reglas
Resumen de la sección: Aquí se muestra cómo integrar Cortex con Elastic y crear reglas para enviar alertas automáticamente a Hive.
Integración con Elastic
- Es posible integrar Cortex con Elastic para enviar alertas automáticamente a Hive.
- En la sección "Stack Management" -> "Rules and Connectors", se pueden crear reglas para enviar alertas a Hive.
Creación de reglas
- Se puede crear una regla utilizando el conector correspondiente en Elastic.
- Por ejemplo, al utilizar el conector "Hive Connector", es posible configurar pruebas y enviar alertas automáticamente a Hive.
Configuración de casos automáticos
Resumen de la sección: En esta sección, el presentador explica cómo configurar casos automáticos para enviar alertas al sistema de gestión de casos.
Configuración inicial
- No hay ningún caso automático configurado actualmente en el sistema.
- El objetivo es enviar las alertas como tickets al sistema Hive para que puedan ser investigadas por el equipo SOC.
Ejecución exitosa
- Después de ejecutar la configuración, se confirma que se ha creado un caso automáticamente en Hive.
- Ahora es posible aprovechar la opción del conector y crear reglas para enviar las alertas directamente al sistema de gestión de casos.
Pasos de instalación
Resumen de la sección: El presentador muestra los pasos necesarios para instalar y configurar las herramientas requeridas.
Requisitos previos
- Se requieren cuatro máquinas virtuales (VM) para este proyecto.
- Se recomienda utilizar instancias EC2 en AWS con Ubuntu 20.33 micro para MIS, T2 medium para Elastic SIM y Cortex, y T2 large o similar para Elastic Search.
- Es importante tener las reglas adecuadas en los grupos de seguridad para permitir el acceso a los puertos necesarios.
Guía de instalación
Instalación de Elastic Search y Kibana
- Se utiliza Docker Compose para instalar Elastic Search y Kibana.
- Se proporciona un código que facilita la instalación y configuración rápida utilizando Docker Compose.
- Una vez completada la instalación, Elastic SIM y Kibana estarán listos para su uso.
Ingestar datos a la pila de seguridad
Resumen de la sección: En esta sección, se explica cómo ingresar datos a la pila de seguridad utilizando Elastic. Se menciona que no es necesario hacer nada adicional para fines de prueba, ya que Elastic proporciona datos de muestra por defecto. Se mencionan ejemplos de datos de comercio electrónico, órdenes de vuelo y registros web.
- No es necesario hacer nada adicional para fines de prueba.
- Elastic proporciona datos de muestra por defecto.
- Ejemplos de datos disponibles incluyen comercio electrónico, órdenes de vuelo y registros web.
Licencia y gestión del stack
Resumen de la sección: En esta sección, se habla sobre la licencia y gestión del stack en Elastic. Se menciona que al crear una instancia, se obtiene una licencia gratuita por 30 días. También se destaca la importancia de habilitar la licencia para acceder a todas las funciones como la creación de conectores y reglas.
- Al crear una instancia, se obtiene una licencia gratuita por 30 días.
- Es importante habilitar la licencia para acceder a todas las funciones.
- Las funciones incluyen creación de conectores y reglas.
Instalación del Hive Console
Resumen de la sección: En esta sección, se explica cómo instalar el Hive Console. Se menciona que hay documentación detallada disponible para seguir los pasos completos. También se muestra cómo configurar el archivo ml en Cassandra con los cambios necesarios en el nombre del clúster, dirección de escucha y proveedor de semillas.
- Se proporciona documentación detallada para seguir los pasos completos.
- Es necesario configurar el archivo ml en Cassandra con los cambios necesarios.
- Los cambios incluyen el nombre del clúster, dirección de escucha y proveedor de semillas.
Verificación del servicio Hive Console
Resumen de la sección: En esta sección, se explica cómo verificar si el servicio Hive Console está funcionando correctamente. Se menciona que se puede utilizar el comando "netstat -ltpnd" para ver las conexiones en los puertos correspondientes. También se mencionan los archivos de registro disponibles para comprobar si el servicio está activo.
- Utilizar el comando "netstat -ltpnd" para ver las conexiones en los puertos correspondientes.
- Verificar los archivos de registro para comprobar si el servicio está activo.
Creación de usuarios en Hive Console
Resumen de la sección: En esta sección, se explica cómo crear usuarios en Hive Console. Se menciona que al iniciar sesión por primera vez, se accede automáticamente como administrador. Se muestra cómo crear nuevos usuarios y se proporcionan las contraseñas necesarias para iniciar sesión.
- Al iniciar sesión por primera vez, se accede automáticamente como administrador.
- Es posible crear nuevos usuarios con sus respectivas contraseñas.
Creación de un nuevo usuario y uso de la consola Hype
Resumen de la sección: En esta sección se explica que es necesario crear un nuevo usuario en la consola Hype. Además, se menciona que si se está utilizando las credenciales de administrador predeterminadas, no se verán opciones para interactuar con el sistema. Es importante cerrar sesión como administrador y luego iniciar sesión con el usuario recién creado.
- Se debe crear un nuevo usuario en la consola Hype.
- No se verán opciones para interactuar si se utiliza el administrador predeterminado.
- Cerrar sesión como administrador y luego iniciar sesión con el nuevo usuario.
Configuración del Cortex y habilitación de analizadores
Resumen de la sección: En esta parte, se menciona que una vez configurada la consola Hype, es posible seguir con la configuración del Cortex. Se destaca que al ingresar por primera vez al Cortex, aparecerá una pantalla en blanco. Luego, se explica cómo habilitar los analizadores en la sección correspondiente.
- Configurar el Cortex después de haber configurado la consola Hype.
- Al ingresar por primera vez al Cortex, aparecerá una pantalla en blanco.
- Habilitar los analizadores en la sección correspondiente.
Creación de organizaciones y usuarios en Cortex
Resumen de la sección: En esta parte, se explica que es necesario crear una organización y un usuario para poder acceder a las funcionalidades del Cortex. Se menciona que una vez creada la organización, al ingresar por primera vez al Cortex se verá la organización predeterminada. Luego, se indica que es necesario cerrar sesión y volver a iniciar sesión con el usuario creado.
- Crear una organización y un usuario en Cortex.
- Al ingresar por primera vez al Cortex, se verá la organización predeterminada.
- Cerrar sesión y volver a iniciar sesión con el usuario creado.
Habilitación de analizadores en Cortex
Resumen de la sección: En esta parte, se explica cómo habilitar los analizadores en el Cortex. Se menciona que es necesario ir a la sección de "Analizadores" y activar los analizadores deseados. También se menciona que para habilitar ciertos analizadores es necesario obtener una clave desde el portal correspondiente.
- Ir a la sección de "Analizadores" en Cortex.
- Activar los analizadores deseados.
- Obtener una clave desde el portal correspondiente para habilitar ciertos analizadores.
Integración entre Hive y Elastic Seam
Resumen de la sección: En esta parte, se explica cómo realizar la integración entre Hive y Elastic Seam. Se menciona que es necesario crear un nuevo conector web hook en Elastic Seam siguiendo los pasos indicados en un repositorio de GitHub. También se menciona que es necesario obtener una clave desde Hive para completar la configuración del conector.
- Crear un nuevo conector web hook en Elastic Seam siguiendo los pasos indicados en GitHub.
- Obtener una clave desde Hive para completar la configuración del conector.
Obtención de la clave de Hive Console
Resumen de la sección: En esta parte, se explica cómo obtener la clave de Hive Console. Se menciona que es necesario crear un nuevo usuario en Hive y generar una clave API para ese usuario. Luego, se muestra cómo copiar y pegar la clave en Elastic Seam para completar la configuración del conector.
- Crear un nuevo usuario en Hive y generar una clave API.
- Copiar y pegar la clave API en Elastic Seam para completar la configuración del conector.
Creación de un nuevo usuario API en Hive
Resumen de la sección: En esta parte, se explica cómo crear un nuevo usuario API en Hive. Se menciona que es necesario proporcionar una dirección de correo electrónico y seleccionar los permisos adecuados para el usuario. Luego, se muestra cómo revelar y copiar la clave API generada para su uso posterior.
- Proporcionar una dirección de correo electrónico y seleccionar los permisos adecuados.
- Revelar y copiar la clave API generada.
Configuración del conector web hook en Elastic Seam
Resumen de la sección: En esta parte, se explica cómo configurar el conector web hook en Elastic Seam. Se menciona que es necesario proporcionar información como URL, autenticación mediante una clave API y tipo de contenido. También se muestra dónde encontrar dicha información en Hive Console.
- Proporcionar URL, autenticación mediante una clave API y tipo de contenido.
- Encontrar dicha información en Hive Console.
Nota: El resumen está basado únicamente en el contenido del transcripto y no incluye información adicional.
Prueba de comando y solución de errores
Resumen de la sección: En esta sección, el presentador muestra cómo probar un comando específico y solucionar errores relacionados. Se destaca la importancia de incluir comillas dobles en el código invitado para que el comando se ejecute correctamente.
Prueba del comando
- Se realiza una prueba del comando para verificar su funcionamiento.
- Se identifica un error en la sintaxis y se corrige agregando una coma.
Solución de errores
- Se menciona que es necesario solucionar los errores encontrados en el comando.
- Se muestra que al ejecutar nuevamente el comando, este funciona correctamente.
- Se explica que uno de los errores fue causado por no haber guardado previamente un contenido específico.
- Se resalta la importancia de seguir los pasos proporcionados en el repositorio de GitHub para evitar estos errores.
Creación exitosa de un nuevo caso
Resumen de la sección: En esta parte, se muestra cómo crear exitosamente un nuevo caso utilizando los pasos proporcionados en el repositorio de GitHub.
Creación del caso
- Se copian los casos de prueba desde otro lugar.
- Se realizan modificaciones necesarias antes de ejecutar el comando.
- Al ejecutar el conector, se verifica que se haya creado correctamente un nuevo caso.
Conclusión y recomendaciones finales
Resumen de la sección: En esta última parte, el presentador concluye su explicación y brinda recomendaciones adicionales a los espectadores.
Recomendaciones finales
- Se anima a los espectadores a seguir estrictamente los pasos proporcionados en el repositorio de GitHub.
- Se destaca que el proceso es sencillo si se siguen las instrucciones adecuadamente.
- Se invita a los espectadores a dejar comentarios y abrir casos en el repositorio de GitHub para recibir ayuda adicional.
- Se menciona la importancia de suscribirse al canal y dar "me gusta" al video como forma de apoyo.
- Se ofrece la opción de comprar una taza de café para apoyar al presentador y su trabajo comunitario.
Invitación final
Resumen de la sección: En esta última parte, el presentador realiza una invitación final a los espectadores.
Invitación final
- Se invita nuevamente a los espectadores a suscribirse al canal para recibir notificaciones sobre nuevos videos.
- Se solicita un "me gusta" en el video como reconocimiento por el esfuerzo realizado.
- Se ofrece la posibilidad de apoyar al presentador comprándole un café, cuyo enlace se encuentra en la descripción del video.