BookinglyTech News
Infraestructura

NetWatch, monitor de red en terminal con descifrado TLS y eBPF

Un único binario sin fichero de configuración que atribuye cada socket a su proceso, decodifica paquetes y descifra TLS sin salir de la terminal

2 min de lecturar/selfhosted0 vistas

NetWatch es un monitor de red que corre entero dentro de la terminal y se distribuye como un solo binario, sin fichero de configuración que mantener. Su autor lo ha publicado en el repositorio con soporte para macOS, Linux y Windows; en Linux la build es estática y lleva libpcap dentro, así que no hay dependencias que resolver antes de arrancarlo.

Qué mira

Diez pestañas, todas a un golpe de tecla de distancia. La primera lista cada socket abierto junto al proceso que lo sostiene: PID, estado TCP, geolocalización de la IP remota, RTT y retransmisiones. La atribución de socket a proceso no sale de leer /proc a lo bruto, sino de sondeo de sockets de la plataforma, PKTAP en macOS y un kprobe eBPF opcional en Linux.

Encima de eso hay decodificación de paquetes en vivo con filtros de display, seguimiento de flujos, huellas JA4 y exportación a PCAP. Para sesiones cuyas claves tengas, descifra TLS 1.2 y 1.3 apuntando el SSLKEYLOGFILE de un cliente al programa; el mecanismo es el mismo que usa Wireshark y el texto plano acaba en la pestaña de paquetes.

El motor de diagnóstico aprende una línea base por métrica, abre un aviso cuando alguna se rompe, ordena las causas según las comprobaciones que las separan y no cierra el aviso hasta que el arreglo ha aguantado. El autor insiste en que ahí no hay ningún modelo de por medio.

Vigilar sin bloquear

La deriva de egreso funciona por aprendizaje: el programa deduce a qué hosts, sistemas autónomos y puertos llega cada proceso, tú promocionas eso a regla y el siguiente destino nuevo aparece marcado. Solo observa, nunca bloquea. En segundo plano detecta balizas de C2, escaneos de puertos y túneles DNS; una alerta crítica congela la grabadora de vuelo para que el paquete de evidencia exista antes de que nadie vaya a buscarlo.

A eso se suman throughput, interfaces, desglose por protocolo, topología por traceroute, ancho de banda por proceso y una línea temporal de conexiones por estado TCP. Todo con tres disposiciones sobre la misma captura: la tecla V las va ciclando en caliente, --lite encaja en un 80x24 y --view dense mete cuatro cajas sin bordes con gráficas de throughput en braille.

Se instala con brew install netwatch o con cargo install netwatch-tui.

La gracia está en juntar atribución de socket, decodificación y diagnóstico en una sola pieza sin agente y sin servicios de fondo, que es justo lo que suele obligar a montar tres herramientas distintas. Ahora bien, todo lo que sabemos viene del anuncio del propio autor en un foro: no hay demo pública ni un tercero que haya medido el consumo o el impacto del kprobe en producción, y el descifrado TLS depende de que tengas las claves, algo que en la mayoría de entornos no ocurre. Tampoco se dice nada del consumo de CPU con captura a caudal alto, que es donde estas herramientas se caen solas.