DEV Community

Cover image for IRIS como herramienta Open Source para la respuesta de incidentes en ciberseguridad
Jose Brown
Jose Brown

Posted on

IRIS como herramienta Open Source para la respuesta de incidentes en ciberseguridad

IRIS es una herramienta de código abierto para la respuesta de incidentes. La respuesta de incidentes consta de una serie de pasos y conceptos que llevan al manejo o, como bien dice el nombre a la gestión, de los incidentes ocurridos dentro de una empresa en el ambito de la ciberseguridad, como una mala configuración o una fuga de datos. La respuesta de incidentes consta de pasos tales como:

• Preparación
• Detección y análisis
• Contención, erradicación y recuperación
• Actividades post-incidente

Cada proceso va de la mano con el equipo de respuesta de incidentes o CSIRT y las herramientas, en este caso IRIS.

Para el lector de este blog:
El objetivo de este blog es dar a comprender el paso a paso de la instalación de la herramienta de IRIS. De igual forma demostrar que las herramientas open source son de gran utilidad a la hora de realizar pruebas o laboratorios.

Recursos

Los recursos para este experimento fueron desplegados en la nube de Azure.
• 1 máquina que actúa como atacante con la herramienta de Infection Monkey con el puerto 5000 habilitado. (Opcional, en proximos articulos estare usando esta u otra herramienta tipo "Breach and Security Simulation" para emulación de adversarios)

• 1 máquina que actúa como vı́ctima con algunas malas configuraciones como credenciales cortas para el login por SSH para el usuario por defecto.

• 1 máquina con IRIS para analizar cualquier elemento dado.
Se utilizó Docker y Docker Compose para el despliegue de IRIS habilitándose el puerto 4433 a tráves de la interfaz de Azure.

Metodologı́a

El laboratorio inicia con la creación de las 3 máquinas, para efectos de este blog, solo se presentara la instalacion de IRIS.
La instalación de la herramienta para emulación de adversarios queda a la disposición y
preferencia del lector a la hora de realizar su propio laboratorio.

Instalación

Actualizando e instalando las actualizaciones de los repositorios

sudo apt update -y && sudo apt upgrade -y
Enter fullscreen mode Exit fullscreen mode

Instalamos docker

sudo apt install docker.io
Enter fullscreen mode Exit fullscreen mode

curl para traer docker compose

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
Enter fullscreen mode Exit fullscreen mode

Comprobamos la instalación de docker compose

docker-compose --version
Enter fullscreen mode Exit fullscreen mode

Instalando IRIS

Los comandos de instalación de IRIS en Docker, están detallados en el repositorio de ellos mismos. Al copiar y pegar se estan colocando todos los comandos y la shell los
ejecuta uno por uno, saltando los comentarios que se sabe que el interprete de shell los toma con el signo de numeral.

Clonamos el repositorio a nuestra ubicación actual

git clone https://github.com/dfir-iris/iris-web.git
Enter fullscreen mode Exit fullscreen mode

Nos movemos al directorio de iris-web, el cual fue traido desde Github

cd iris-web
Enter fullscreen mode Exit fullscreen mode

Nos movemos la versión 1.4.5

git checkout v1.4.5
Enter fullscreen mode Exit fullscreen mode

Copiamos el contenido del archivo ".env.model" al ".env"

cp .env.model .env
Enter fullscreen mode Exit fullscreen mode

Antes de ingresar el docker compose build, nos aseguramos de que exista un fichero YAML, para que docker crea las imágenes a partir de dicho documento en donde se detallan los servicios.

docker-compose build 
Enter fullscreen mode Exit fullscreen mode

Desplegamos los contenedores.

docker-compose up -d
Enter fullscreen mode Exit fullscreen mode

Por defecto las credenciales son administrator y la contraseña se encuentra ejecutando el comando docker logs containerID –follow

Enlistamos los contenedores esten activos y en buen estado
Image description

Verificamos a nivel de host que puertos se estan utilizando.
Image description
netstat es una utilidad para verificar que puertos se estan utilizando de manera local , el que nos interesa el el primero , cuyo puerto es el 4433 y muestra LISTEN

Accediendo a IRIS
Acceso al login de IRIS por medio de un navegador web

Image description
Un error 400 se refiere que hubo un error en la petición por parte del cliente, en caso tal de que aparezca este mensaje la solución es colocar https antes de la dirección ip y el
puerto.
Luego de eso nos aparece por pantalla el mensaje de advertencia de certificado es inválido, le damos ”Advanced” y deberiamos poder acceder.
Image description

Pantalla de login de IRIS
Las credenciales se obtienen a traves de los logs del contenedor con el siguiente comando:

docker logs <containerID> --follow
Enter fullscreen mode Exit fullscreen mode

Obteniendo el resultado
Cabe destacar que en el archivo .env se pueden gestionar temas como la contraseña.

Image description
Pantalla de Login de IRIS
Image description
Asi se ve el dashboard de IRIS con todas sus funcionalidades

Image description

Conclusión

Hoy en dia tenemos a disposicion diferentes soluciones tecnologicas para atender nuestras necesidades, ya sea como usuario o como una pequeña o mediana empresa, el papel de la ciberseguridad es transversal y debe ser tomado en cuenta desde la concepcion del proyecto hasta la conclusión. Tenemos a IRIS, una herramienta open source mantenida por una comunidad con el fin de brindar una solucion robusta y compacta con otras ya existentes.

Recomendaciones

Tengo pensado profundizar el uso de infection monkey o alguna otra herramienta de emulación de adversarios con el fin de montar un escenario mas realista.

Referencias

Página oficial de la herramienta:https://dfir-iris.org/
Repositorio de Github: https://github.com/dfir-iris

Top comments (0)