Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

La 5-tupla y los registros agrupados por flujo

5 tareas · 40 min · Principiante

En el módulo de la red el flujo era la unidad de trabajo: una fila por conversación. Aquí se mira lo que hace posible esa fila. Un cortafuegos no escribe flujos, escribe líneas, y alguien tiene que decidir cuáles líneas pertenecen a la misma conversación. La regla para decidirlo son cinco campos, la 5-tupla, y con ellos se agrupa un registro para ver qué se repite. Martes 6 de abril, sede de Puerto Lleras del Frigorífico del Ariari, media hora de cortafuegos.

0 de 5 · 0%

Objetivo de la sala

En el módulo de la red el flujo era la unidad de trabajo: una fila por conversación. Aquí se mira lo que hace posible esa fila. Un cortafuegos no escribe flujos, escribe líneas, y alguien tiene que decidir cuáles líneas pertenecen a la misma conversación. La regla para decidirlo son cinco campos, la 5-tupla, y con ellos se agrupa un registro para ver qué se repite. Martes 6 de abril, sede de Puerto Lleras del Frigorífico del Ariari, media hora de cortafuegos.

Una conversación entre dos equipos se identifica con cinco datos: la dirección de origen, el puerto de origen, la dirección de destino, el puerto de destino y el protocolo (TCP, UDP). Ese conjunto es la 5-tupla. Dos líneas de registro con los cinco campos iguales hablan de la misma conversación; si cambia uno, es otra.

No todos los campos pesan igual para el analista. El puerto de destino suele ser el del servicio: 53 para el DNS, 443 para la web cifrada, 445 para compartir archivos. El puerto de origen, en cambio, lo escoge el sistema operativo del equipo que llama, y lo hace de nuevo en cada conexión. Por eso un equipo que visita cien veces el mismo servicio genera cien 5-tuplas distintas, parecidas en todo menos en ese número.

Responde para continuar

Un puesto abre dos conexiones seguidas hacia el mismo servidor y el mismo puerto de destino. ¿Qué campo de la 5-tupla las distingue entre sí?

Un cortafuegos suele apuntar una línea cuando se abre la conexión y otra cuando se cierra, con los bytes que llevó. Contar las líneas de un registro, entonces, dice cuánto escribió el equipo; no dice cuántas conversaciones hubo. Para contar conversaciones hay que agrupar por los cinco campos y contar los grupos.

Abre el laboratorio y mira primero las líneas tal como llegan. Después agrúpalas: cada fila del resultado es un flujo, con cuántas líneas tuvo y cuántos bytes sumó. Hay una forma corta de saber cuántos hay sin contar a mano, que es pedirle al SIEM las 5-tuplas distintas.

Responde para continuar

Escribe cuántos flujos distintos hay en el registro de la media hora, contando cada conversación una sola vez.

Ver pista de ayuda

Ejecuta `SELECT * FROM eventos_cf` y mira cuántas líneas hay; después `SELECT COUNT(*) AS flujos FROM (SELECT DISTINCT origen, puerto_origen, destino, puerto_destino, proto FROM eventos_cf)`.

Una regla práctica evita confusiones al agrupar: lo que identifica el flujo es la 5-tupla, y todo lo demás es información sobre el flujo. La hora, el evento (abrir o cerrar), la duración y los bytes pueden cambiar de una línea a otra de la misma conversación sin que eso la parta en dos.

Compruébalo con una conexión concreta del registro, la que sale por un puerto de origen determinado. La consulta te devuelve sus dos líneas; compara columna por columna qué cambia y qué se queda igual.

Responde para continuar

Las dos líneas de la conexión que sale por el puerto de origen 51041, ¿qué las convierte en un mismo flujo?

Ver pista de ayuda

Ejecuta `SELECT * FROM eventos_cf WHERE puerto_origen = 51041` y compara las dos líneas, columna por columna.

Agrupar por la 5-tupla entera da una fila por conversación, y en un registro grande son miles. Para ver lo que se repite hay que soltar un campo: el puerto de origen. Agrupando por origen, destino, puerto de destino y protocolo, y contando cuántos puertos de origen distintos hay en cada grupo, sale una fila por servicio con su número de conversaciones.

Esa tabla, ordenada de más a menos, se lee rápido. Que un puesto repita cuatro veces el camino hacia el proxy es lo normal. Lo que merece una pregunta es una repetición hacia un destino de fuera de la red, sobre todo si es el único equipo que lo hace. Es la misma idea de la baliza del módulo de la red, pero sin medir intervalos: aquí se encuentra primero qué se repite.

Responde para continuar

Un equipo abre muchas conexiones distintas hacia una misma dirección de fuera y un mismo puerto, y ningún otro equipo lo hace. Escribe ese puerto de destino.

Ver pista de ayuda

Ejecuta `SELECT origen, destino, puerto_destino, proto, COUNT(DISTINCT puerto_origen) AS flujos FROM eventos_cf GROUP BY origen, destino, puerto_destino, proto ORDER BY flujos DESC` y busca la fila cuyo destino no es de la red de la sede.

La 5-tupla habla de direcciones, no de equipos. El último paso del método es el de siempre: poner nombre a la dirección de origen para que el hallazgo se pueda escalar. En esta mañana las direcciones son fijas y el inventario dice a qué equipo corresponde cada una.

Responde para continuar

Escribe el nombre del equipo que abre esas conexiones repetidas hacia la dirección de fuera.

Ver pista de ayuda

La dirección de origen de esa fila está en la consulta de la tarea anterior; `SELECT * FROM inventario` la convierte en un equipo.

Inicia sesión para registrar tus puntos y progreso en el ranking.

Whoami-Labs Pro

Whoami-Labs Pro utiliza cookies

Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad