Práctica 6: Integración con SIEM mediante envío Syslog

Centro Universitario UAEM Nezahualcóyotl - Ingeniería en Sistemas Inteligentes

Proyecto: Mini SIEM en MATLAB

1. Contexto

En entornos reales, los eventos no se quedan en archivos locales: se envían a un colector central mediante protocolos estándar. El más común es Syslog (UDP/TCP 514). En esta práctica se integrará el generador de eventos con un colector Syslog para simular un flujo real de ingestión hacia un SIEM.

Idea clave: Un SIEM recibe eventos desde múltiples fuentes a través de protocolos estándar. Aquí simulas ese flujo desde MATLAB.
---

2. Objetivo

Enviar eventos en formato Syslog + CEF desde MATLAB hacia un colector Syslog, validando la recepción en el servidor destino.

---

3. Precondiciones

---

4. Arquitectura de la práctica

MATLAB (Generador)  --->  Syslog (rsyslog)  --->  Archivo de logs

IP origen           Puerto 514 (UDP/TCP)
---

5. Configuración del colector Syslog (Linux)

Paso 1: Instalar rsyslog

sudo apt update
sudo apt install rsyslog -y

Paso 2: Habilitar recepción remota (UDP)

sudo nano /etc/rsyslog.conf

Descomentar o agregar:

module(load="imudp")
input(type="imudp" port="514")

Paso 3: Definir archivo de salida

sudo nano /etc/rsyslog.d/mini-siem.conf
if $msg contains "MiniSIEM" then /var/log/mini_siem.log
& stop

Paso 4: Reiniciar servicio

sudo systemctl restart rsyslog

Paso 5: Validar

sudo tail -f /var/log/mini_siem.log
---

6. Envío de eventos desde MATLAB

Script: envio_syslog.m

function envio_syslog()

    destino_ip = '192.168.1.100'; % Cambiar por IP del servidor
    puerto = 514;

    archivo = '../data/logs_auth_100.cef';

    fid = fopen(archivo,'r');

    if fid == -1
        error('No se pudo abrir el archivo');
    end

    u = udpport("datagram","IPV4");

    linea = fgetl(fid);

    while ischar(linea)

        write(u, uint8(linea), destino_ip, puerto);

        pause(0.01); % Control de flujo

        linea = fgetl(fid);
    end

    fclose(fid);

    disp('Eventos enviados');

end
---

7. Ejecución

envio_syslog

Verifica en el servidor:

tail -f /var/log/mini_siem.log
---

8. Resultado esperado

---

9. Validación

---

10. Problemas comunes

---

11. Preguntas de reflexión

  1. ¿Por qué Syslog es un estándar en SIEM?
  2. ¿Qué ventajas tiene enviar eventos en tiempo real?
  3. ¿Qué riesgos existen al usar UDP?
  4. ¿Cómo asegurarías la transmisión?
  5. ¿Cómo escalarías este modelo a miles de dispositivos?
---

12. Tarea (Teams)

---

13. Cierre

En esta práctica se ha logrado integrar MATLAB con un flujo real de ingestión de eventos, replicando el comportamiento de fuentes que alimentan plataformas como:

:contentReference[oaicite:0]{index=0} :contentReference[oaicite:1]{index=1}

Con esto se completa un ciclo completo de laboratorio que simula un entorno real de monitoreo de seguridad.