misp-jobfixer/README.md
Felipe Luis Quezada Valenzuela 90706f9b6c #push all
2025-01-10 10:17:35 -03:00

2.2 KiB

Descripción

Este proyecto realiza de manera automatizada, la eliminación de trabajos (jobs) dentro de MISP que hayan quedado "colgados" (stuck) durante horas.

Características:

  • Funciona de forma local en servidor MISP (requerido)
  • Soporta todos los tipos de Jobs (pull, push, publish, etc)
  • Configuración de umbral de tiempo. Se puede definir hasta cuantas horas hacia atras desde la ejecución realize revision de Jobs. Por defecto (24h)

Componentes

Descarga

  1. Descargar ZIP del repositorio (https://git.csirt.gob.cl/public/misp-jobfixer/archive/main.zip)

  2. Al descomprimir el archivo, mover carpeta "misp-jobfixer" dentro de carpeta "home" de usuario u otra ubicación definida.

Configuración inicial

  1. En el archivo config.py se debe definir los parametros según caso:

DB_DATA = {
    "user":"root",
    "pass":"<PASS DB MISP (ROOT)>",
    "host":"localhost",
    "port":3306,
    "dbname":"misp"
}

CHECK_JOBS = {
    "hours_limit": 24
}

En config.py podemos:

  • DB_DATA: Se definen valores de conexión a BD de MISP. Por defecto solo se necesita agregar pass de DB (En archivo de log de instalación de MISP se encuentra pass de DB)
  • CHECK_JOBS: En "hours_limit" se define el umbral máximo de tiempo que tiene la app para buscar jobs (Por defecto: 24 hrs)

Instalación en entorno virtual

Una vez configurado "config.py" procedemos con la instalación

  1. Se crea entorno virtual de Python
cd ./misp-jobfixer
python3 -m venv venv
  1. Se activa entorno virtual:
source venv/bin/activate
  1. Instalar librerias de Python:
pip install -r requirements.txt

Agengar

Preparamos el archivo "run.sh" ajustando las rutas en "source" y "cd" para la ejecución correcta del archivo:

#!/bin/bash

# Activate 
source /home/user/misp-jobfixer/venv/bin/activate

# Enter folder
cd /home/user/misp-jobfixer/

# Llamar al script Python
python main.py

# Deactivate
deactivate

Debemos crear en crontab una entrada con la ejecución programada, por ejemplo para que realice la revisión cada dia a las 00:00 (recomendado) :

@daily bash ./misp-jobfixer/run.sh