Cómo instalar la Herramienta de Análisis Observable Cortex en Ubuntu 22.04

Cortex es una herramienta de análisis observable gratuita y de código abierto creada por TheHive Project. Los profesionales de la seguridad y los analistas SOC la utilizan para analizar los eventos recopilados mediante consultas a una única herramienta. Ofrece una interfaz basada en web que te permite analizar direcciones IP y de correo electrónico, URL, nombres de dominio, archivos y hashes. Cortex tiene más de cien analizadores para servicios populares como VirusTotal, Joe Sandbox, DomainTools, PassiveTotal, Google Safe Browsing, Shodan y Onyphe.

Este tutorial te mostrará cómo instalar el motor Cortex en Ubuntu 22.04.

Requisitos previos

  • Un servidor que ejecute Ubuntu 22.04 con un mínimo de 16 GB de RAM.
  • Una contraseña de root configurada en el servidor.

Actualiza el sistema

En primer lugar, se recomienda actualizar todos los paquetes del sistema a la versión actualizada. Puedes actualizarlos todos ejecutando el siguiente comando.

apt update -y
apt upgrade -y

Una vez actualizados todos los paquetes, puedes pasar al siguiente paso.

Instalar Java

Antes de empezar, el JDK de Java debe estar instalado en tu servidor. Si no está instalado, puedes instalarlo ejecutando el siguiente comando.

apt install openjdk-11-jre-headless -y

Tras la instalación correcta, puedes verificar la instalación de Java utilizando el siguiente comando.

java --version

Obtendrás la siguiente salida.

openjdk 11.0.17 2022-10-18
OpenJDK Runtime Environment (build 11.0.17+8-post-Ubuntu-1ubuntu222.04)
OpenJDK 64-Bit Server VM (build 11.0.17+8-post-Ubuntu-1ubuntu222.04, mixed mode, sharing)

A continuación, establece la variable de entorno Java utilizando el siguiente comando.

echo JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64" | tee -a /etc/environment

A continuación, activa la variable de entorno utilizando el siguiente comando.

source /etc/environment

Una vez que hayas terminado, puedes proceder a instalar y configurar ElasticSearch.

Instalar y configurar ElasticSearch

Cortex también requiere que ElasticSearch esté instalado en tu servidor. En primer lugar, instala todas las dependencias necesarias utilizando el siguiente comando.

apt install wget gnupg2 apt-transport-https git ca-certificates curl jq software-properties-common lsb-release python3-pip iproute2 -y

A continuación, añade la clave GPG de ElasticSearch utilizando el siguiente comando.

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | gpg --dearmor > /etc/apt/trusted.gpg.d/elasticsearch-keyring.gpg

A continuación, añade el repositorio de ElasticSearch a APT utilizando el siguiente comando.

echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | tee /etc/apt/sources.list.d/elastic-7.x.list

A continuación, actualiza el repositorio e instala ElasticSearch utilizando el siguiente comando.

apt update -y
apt install elasticsearch -y

Tras la instalación, edita el archivo de configuración de ElasticSearch y define el nombre de tu clúster.

nano /etc/elasticsearch/elasticsearch.yml

Cambia la siguiente línea:

cluster.name: my-application

Guarda y cierra el archivo y luego crea un archivo jvm.options.

nano /etc/elasticsearch/jvm.options.d/jvm.options

Añade las siguientes líneas:

-Xms1g
-Xmx1g
-Dlog4j2.formatMsgNoLookups=true

Guarda y cierra el archivo cuando hayas terminado. A continuación, reinicia el servicio ElasticSearch para aplicar los cambios.

systemctl restart elasticsearch

Puedes comprobar el estado de ElasticSearch con el siguiente comando.

systemctl status elasticsearch

Obtendrás la siguiente salida.

? elasticsearch.service - Elasticsearch
     Loaded: loaded (/lib/systemd/system/elasticsearch.service; disabled; vendor preset: enabled)
     Active: active (running) since Mon 2023-02-06 15:35:54 UTC; 2s ago
       Docs: https://www.elastic.co
   Main PID: 10788 (java)
      Tasks: 80 (limit: 38396)
     Memory: 1.3G
        CPU: 1min 46.185s
     CGroup: /system.slice/elasticsearch.service
             ??10788 /usr/share/elasticsearch/jdk/bin/java -Xshare:auto -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.t>
             ??10999 /usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/bin/controller

Feb 06 15:35:21 ubuntu2204 systemd[1]: Starting Elasticsearch...
Feb 06 15:35:54 ubuntu2204 systemd[1]: Started Elasticsearch.

Una vez que hayas terminado, puedes proceder a instalar Cortex.

Instalar Cortex Ubuntu 22.04

Por defecto, el paquete Cortex no está disponible en el repositorio por defecto de Ubuntu. Así que tendrás que añadir el repositorio oficial de Cortex a APT.

Primero, descarga e importa la clave GPG de Cortex y thehive utilizando el siguiente comando.

wget -qO- "https://raw.githubusercontent.com/TheHive-Project/Cortex/master/PGP-PUBLIC-KEY" | gpg --dearmor -o /etc/apt/trusted.gpg.d/cortex.gpg
wget -qO- https://raw.githubusercontent.com/TheHive-Project/Cortex/master/PGP-PUBLIC-KEY | gpg --dearmor -o /etc/apt/trusted.gpg.d/thehive.gpg

A continuación, añade el repositorio de Cortex a APT utilizando el siguiente comando.

echo 'deb https://deb.thehive-project.org release main' | tee -a /etc/apt/sources.list.d/thehive-project.list

A continuación, actualiza el repositorio e instala Cortex con el siguiente comando.

apt update -y
apt install cortex -y

Una vez instalado el paquete Cortex, puedes proceder a configurar Cortex.

Configurar Cortex

A continuación, tendrás que crear un secreto y definirlo en tu archivo de configuración de Cortex. En primer lugar, crea un secreto con el siguiente comando.

cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 64 | head -n 1

Deberías ver la siguiente salida.

LkSc1rXTf4mx8TWEdmQJytdrJYunwiLwHSaDS7gUR6g4P8B07JKuLWgMNIxI9bcm

A continuación, edita el archivo de configuración de Cortex y define tu secreto..

nano /etc/cortex/application.conf

Define tus secretos como se muestra a continuación:

play.http.secret.key="LkSc1rXTf4mx8TWEdmQJytdrJYunwiLwHSaDS7gUR6g4P8B07JKuLWgMNIxI9bcm"

Guarda y cierra el archivo cuando hayas terminado. A continuación, inicia y activa el servicio Cortex utilizando el siguiente comando.

systemctl enable --now cortex

Puedes comprobar el estado de Cortex utilizando el siguiente comando.

systemctl status cortex

Obtendrás la siguiente salida.

? cortex.service - cortex
     Loaded: loaded (/etc/systemd/system/cortex.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2023-02-06 15:40:21 UTC; 12s ago
       Docs: https://thehive-project.org
   Main PID: 12544 (java)
      Tasks: 49 (limit: 38396)
     Memory: 491.9M
        CPU: 32.669s
     CGroup: /system.slice/cortex.service
             ??12544 java -Duser.dir=/opt/cortex -Dconfig.file=/etc/cortex/application.conf -Dlogger.file=/etc/cortex/logback.xml -Dpidfile.p>
             ??13051 /usr/bin/python3 /usr/bin/pip show cortexutils

Feb 06 15:40:21 ubuntu2204 systemd[1]: Started cortex.

En este momento, Cortex está iniciado y escucha en el puerto 9001. Puedes comprobarlo con el siguiente comando.

ss -antpl | grep 9001

Deberías ver el puerto de escucha de Cortex en la siguiente salida.

LISTEN 0      100                     *:9001            *:*    users:(("java",pid=12544,fd=293)) 

Cuando hayas terminado, puedes pasar al siguiente paso.

Accede a la interfaz web de Cortex

Cortex ya está instalado y configurado. A continuación, abre tu navegador web y accede a la interfaz web de Cortex utilizando la URL http://your-server-ip:9001. Deberías ver la actualización de la base de datos en la siguiente pantalla.

Haz clic en el botón Actualizar base de datos para actualizar la base de datos. Deberías ver la pantalla de creación de cuenta.

Define tu nombre de usuario, nombre, contraseña y pulsa el botón Crear. Se te redirigirá a la página de inicio de sesión de Cortex:

Introduce tu nombre de usuario, contraseña y pulsa el botón Iniciar sesión. Deberías ver el panel de control de Cortex en la siguiente pantalla.

A continuación, tendrás que añadir tu Organización a Cortex. Haz clic en el botón Añadir organización. Deberías ver la pantalla de creación de la organización.

Define el nombre de tu organización y haz clic en el botón Guardar. Deberías ver tu organización recién creada en la siguiente pantalla.

Haz clic en tu organización recién creada . Deberías ver la siguiente pantalla.

Haz clic en el botón Añadir Usuario. Deberías ver la pantalla de creación de usuarios.

Define tu nombre de usuario, rol y haz clic en el botón Guardar usuario para crear un usuario. Deberías ver la siguiente pantalla.

Conclusión

Enhorabuena! has instalado y configurado correctamente el motor Cortex en el servidor Ubuntu 22.04. Ya puedes utilizar Cortex como motor de análisis observable y respuesta activa de tu organización. No dudes en preguntarme si tienes alguna duda.

También te podría gustar...