Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Leer conn y dns

4 tareas · 38 min · Principiante

La pregunta más repetida de un incidente de red es corta: quién habló con quién, a qué hora y cuánto. Dos registros de Zeek la contestan casi siempre: el de conversaciones, con una fila por cada una y sus bytes, y el de nombres, con lo que se preguntó y lo que se contestó. Aquí se leen como se lee un extracto de un caso, sin filtros ni herramientas. Martes 20 de julio de 2027, Molino Sabaneta: tienes una hora de los dos registros, de las 14:00 a las 15:00 UTC, y doce conversaciones que explicar.

0 de 4 · 0%

Objetivo de la sala

La pregunta más repetida de un incidente de red es corta: quién habló con quién, a qué hora y cuánto. Dos registros de Zeek la contestan casi siempre: el de conversaciones, con una fila por cada una y sus bytes, y el de nombres, con lo que se preguntó y lo que se contestó. Aquí se leen como se lee un extracto de un caso, sin filtros ni herramientas. Martes 20 de julio de 2027, Molino Sabaneta: tienes una hora de los dos registros, de las 14:00 a las 15:00 UTC, y doce conversaciones que explicar.

Cada fila del registro de conversaciones lleva un campo, conn_state, que resume cómo terminó. Los tres valores que más se encuentran en un caso son: SF (la conexión se estableció y terminó con normalidad), S0 (se vio el intento de abrir la conexión y no hubo respuesta) y REJ (el intento fue rechazado de forma explícita por el destino).

Leer este campo evita dos errores. Uno, creer que un equipo «habló» con un destino con el que solo intentó hablar. Otro, descartar un intento fallido: un equipo que insiste contra destinos que no contestan también es información.

Fíjate además en que orig_bytes y resp_bytes cuentan la carga que envió cada lado, y que una conversación con ceros no intercambió datos de aplicación.

Responde para continuar

Una fila del registro de conversaciones dice S0 en conn_state y no tiene bytes en ningún sentido. ¿Qué significa?

Ver pista de ayuda

Consulta `SELECT * FROM conn` y mira las filas cuyo conn_state no es SF.

Un respondedor casi nunca lee una fila: lee un conjunto. La pregunta «cuánto salió hacia ese destino» se contesta sumando orig_bytes de todas las conversaciones del mismo origen hacia el mismo destino y puerto. Es una suma de hechos escritos, no una estimación.

Cuida que el origen y el destino sean exactamente los que pide la pregunta: una conversación hacia el mismo servidor por otro puerto es otra cosa. El extracto trae conversaciones de varios equipos y de varios destinos mezcladas.

Responde para continuar

¿Cuántos bytes envió en total 10.178.4.12 a 192.0.2.196 por el puerto 443? Escribe solo el número.

Ver pista de ayuda

Ejecuta `SELECT * FROM conn`, quédate con las filas de ese origen y ese destino por 443 y suma orig_bytes.

El registro de conversaciones habla de direcciones; las personas hablan de nombres. El registro de nombres guarda la consulta (query), el tipo y la respuesta (answers), y es lo que permite pasar de «el equipo se conectó a esa dirección» a «el equipo pidió ese nombre y le contestaron esa dirección».

Ese paso tiene un límite que conviene recordar: muestra qué nombre pidió el equipo y qué le respondió el servidor de nombres, no que el destino sea quien dice su nombre.

Responde para continuar

¿Qué nombre pidió 10.178.4.12 y recibió como respuesta la dirección 192.0.2.196?

Ver pista de ayuda

Ejecuta `SELECT * FROM dns` y busca la fila cuya columna answers trae esa dirección.

La consulta de nombres es, ella misma, una conversación (por el puerto 53) y tiene su propio uid en el registro de conversaciones. La conexión que el equipo abre después hacia la dirección que le contestaron es otra conversación con otro uid: los dos registros no comparten identificador entre la consulta y lo que viene después.

Lo que sí une las dos cosas es lo que cada registro escribió: quién preguntó, a qué hora, y a qué dirección contestó el servidor de nombres. Con esos tres datos se encuentra la conversación posterior, y se comprueba que la hora tenga sentido (la consulta va antes).

Responde para continuar

¿Cómo se une una consulta de nombres con la conversación que el equipo abrió después hacia esa dirección?

Ver pista de ayuda

Compara `SELECT * FROM dns` con `SELECT * FROM conn` en las filas de 10.178.6.5.

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