Transforme su flujo de trabajo de Wireshark con Brim en Linux
Publicado: 2022-01-29Wireshark es el estándar de facto para analizar el tráfico de red. Desafortunadamente, se vuelve cada vez más lento a medida que crece la captura de paquetes. Brim resuelve este problema tan bien que cambiará su flujo de trabajo de Wireshark.
Wireshark es genial, pero . . .
Wireshark es una maravillosa pieza de software de código abierto. Es utilizado por aficionados y profesionales de todo el mundo para investigar problemas de redes. Captura los paquetes de datos que viajan por los cables o a través del éter de su red. Una vez que haya capturado su tráfico, Wireshark le permite filtrar y buscar a través de los datos, rastrear conversaciones entre dispositivos de red y mucho más.
Sin embargo, a pesar de lo bueno que es Wireshark, tiene un problema. Los archivos de captura de datos de red (llamados seguimientos de red o capturas de paquetes) pueden volverse muy grandes muy rápidamente. Esto es especialmente cierto si el problema que intenta investigar es complejo o esporádico, o si la red es grande y está ocupada.
Cuanto mayor sea la captura de paquetes (o PCAP), más retrasado se vuelve Wireshark. Simplemente abrir y cargar un seguimiento muy grande (cualquier cosa superior a 1 GB) puede llevar tanto tiempo que pensaría que Wireshark se ha desplomado y se ha rendido.
Trabajar con archivos de ese tamaño es un verdadero fastidio. Cada vez que realiza una búsqueda o cambia un filtro, debe esperar a que los efectos se apliquen a los datos y se actualicen en la pantalla. Cada retraso interrumpe tu concentración, lo que puede dificultar tu progreso.
Brim es el remedio para estos males. Actúa como un preprocesador interactivo y un front-end para Wireshark. Cuando desee ver el nivel granular que Wireshark puede proporcionar, Brim lo abre instantáneamente exactamente en esos paquetes.
Si realiza muchas capturas de red y análisis de paquetes, Brim revolucionará su flujo de trabajo.
RELACIONADO: Cómo usar los filtros Wireshark en Linux
Instalación de ala
Brim es muy nuevo, por lo que aún no ha llegado a los repositorios de software de las distribuciones de Linux. Sin embargo, en la página de descarga de Brim, encontrará archivos de paquete DEB y RPM, por lo que instalarlo en Ubuntu o Fedora es bastante simple.
Si usa otra distribución, puede descargar el código fuente de GitHub y crear la aplicación usted mismo.
Brim usa zq
, una herramienta de línea de comandos para los registros de Zeek, por lo que también deberá descargar un archivo ZIP que contenga los binarios de zq
.
Instalación de Brim en Ubuntu
Si está utilizando Ubuntu, deberá descargar el archivo del paquete DEB y el archivo ZIP de zq
Linux. Haga doble clic en el archivo del paquete DEB descargado y se abrirá la aplicación de software de Ubuntu. La licencia de Brim aparece erróneamente como "Propietaria": utiliza la licencia BSD de 3 cláusulas.
Haz clic en "Instalar".
Cuando se complete la instalación, haga doble clic en el archivo ZIP zq
para iniciar la aplicación Archive Manager. El archivo ZIP contendrá un solo directorio; arrástrelo y suéltelo desde el "Administrador de archivos" a una ubicación en su computadora, como el directorio "Descargas".
Escribimos lo siguiente para crear una ubicación para los binarios zq
:
sudo mkdir / opt / zeek
Necesitamos copiar los archivos binarios del directorio extraído a la ubicación que acabamos de crear. Sustituya la ruta y el nombre del directorio extraído en su máquina en el siguiente comando:
sudo cp Descargas/zq-v0.20.0.linux-amd64/* /opt/Zeek
Necesitamos agregar esa ubicación a la ruta, por lo que editaremos el archivo BASHRC:
sudo gedit .bashrc
Se abrirá el editor de gedit. Desplácese hasta la parte inferior del archivo y luego escriba esta línea:
exportar RUTA=$RUTA:/opt/zeek
Guarde sus cambios y cierre el editor.
Instalación de Brim en Fedora
Para instalar Brim en Fedora, descargue el archivo del paquete RPM (en lugar del DEB) y luego siga los mismos pasos que cubrimos para la instalación de Ubuntu anterior.
Curiosamente, cuando el archivo RPM se abre en Fedora, se identifica correctamente como si tuviera una licencia de código abierto, en lugar de una licencia propietaria.
ala de lanzamiento
Haga clic en "Mostrar aplicaciones" en el panel o presione Super+A. Escriba "brim" en el cuadro de búsqueda y luego haga clic en "brim" cuando aparezca.
Brim se inicia y muestra su ventana principal. Puede hacer clic en "Elegir archivos" para abrir un explorador de archivos o arrastrar y soltar un archivo PCAP en el área rodeada por el rectángulo rojo.
Brim usa una pantalla con pestañas, y puede tener varias pestañas abiertas simultáneamente. Para abrir una nueva pestaña, haga clic en el signo más (+) en la parte superior y luego seleccione otro PCAP.
Conceptos básicos de ala
Brim carga e indexa el archivo seleccionado. El índice es una de las razones por las que Brim es tan rápido. La ventana principal contiene un histograma de volúmenes de paquetes a lo largo del tiempo y una lista de "flujos" de red.
Un archivo PCAP contiene un flujo de paquetes de red ordenados por tiempo para muchas conexiones de red. Los paquetes de datos para las distintas conexiones se entremezclan porque algunos de ellos se habrán abierto al mismo tiempo. Los paquetes de cada "conversación" de la red se intercalan con los paquetes de otras conversaciones.
Wireshark muestra el flujo de red paquete por paquete, mientras que Brim usa un concepto llamado "flujos". Un flujo es un intercambio de red completo (o conversación) entre dos dispositivos. Cada tipo de flujo está categorizado, codificado por colores y etiquetado por tipo de flujo. Verá flujos etiquetados como "dns", "ssh", "https", "ssl" y muchos más.
Si desplaza la pantalla de resumen de flujo hacia la izquierda o hacia la derecha, se mostrarán muchas más columnas. También puede ajustar el período de tiempo para mostrar el subconjunto de información que desea ver. A continuación se muestran algunas formas en las que puede ver los datos:
- Haga clic en una barra del histograma para ampliar la actividad de la red dentro de ella.
- Haga clic y arrastre para resaltar un rango de la visualización del histograma y acercar. Brim luego mostrará los datos de la sección resaltada.
- También puede especificar períodos exactos en los campos "Fecha" y "Hora".
Brim puede mostrar dos paneles laterales: uno a la izquierda y otro a la derecha. Estos pueden ocultarse o permanecer visibles. El panel de la izquierda muestra un historial de búsqueda y una lista de PCAP abiertos, llamados espacios. Presione Ctrl+[ para activar o desactivar el panel izquierdo.
El panel de la derecha contiene información detallada sobre el flujo resaltado. Presione Ctrl+] para activar o desactivar el panel derecho.
Haga clic en "Conectar" en la lista "Correlación UID" para abrir un diagrama de conexión para el flujo resaltado.
En la ventana principal, también puede resaltar un flujo y luego hacer clic en el icono de Wireshark. Esto inicia Wireshark y se muestran los paquetes para el flujo resaltado.
Se abre Wireshark y se muestran los paquetes de interés.
Filtrado en Brim
La búsqueda y el filtrado en Brim son flexibles y completos, pero no es necesario que aprenda un nuevo lenguaje de filtrado si no lo desea. Puede crear un filtro sintácticamente correcto en Brim haciendo clic en los campos en la ventana de resumen y luego seleccionando opciones de un menú.
Por ejemplo, en la imagen de abajo, hicimos clic con el botón derecho en un campo "dns". Luego vamos a seleccionar "Filtro = Valor" en el menú contextual.
Entonces ocurren las siguientes cosas:
- El texto
_path = "dns"
se agrega a la barra de búsqueda. - Ese filtro se aplica al archivo PCAP, por lo que solo mostrará flujos que sean flujos del Servicio de nombres de dominio (DNS).
- El texto del filtro también se agrega al historial de búsqueda en el panel izquierdo.
Podemos agregar más cláusulas al término de búsqueda usando la misma técnica. Haremos clic con el botón derecho en el campo de la dirección IP (que contiene "192.168.1.26") en la columna "Id.orig_h" y luego seleccionaremos "Filtro = Valor" en el menú contextual.
Esto agrega la cláusula adicional como una cláusula AND. La pantalla ahora está filtrada para mostrar los flujos de DNS que se originaron en esa dirección IP (192.168.1.26).
El nuevo término de filtro se agrega al historial de búsqueda en el panel izquierdo. Puede saltar entre búsquedas haciendo clic en los elementos de la lista del historial de búsqueda.
La dirección IP de destino para la mayoría de nuestros datos filtrados es 81.139.56.100. Para ver qué flujos de DNS se enviaron a diferentes direcciones IP, hacemos clic derecho en "81.139.56.100" en la columna "Id_resp_h" y luego seleccionamos "Filtro! = Valor" en el menú contextual.
Solo un flujo de DNS que se originó en 192.168.1.26 no se envió a 81.139.56.100 y lo localizamos sin tener que escribir nada para crear nuestro filtro.
Fijación de cláusulas de filtro
Cuando hacemos clic con el botón derecho en un flujo "HTTP" y seleccionamos "Filtro = Valor" en el menú contextual, el panel de resumen mostrará solo flujos HTTP. A continuación, podemos hacer clic en el icono Pin junto a la cláusula de filtro HTTP.
La cláusula HTTP ahora está anclada en su lugar, y cualquier otro filtro o término de búsqueda que usemos se ejecutará con la cláusula HTTP antepuesta.
Si escribimos “GET” en la barra de búsqueda, la búsqueda se restringirá a los flujos que ya han sido filtrados por la cláusula anclada. Puede anclar tantas cláusulas de filtro como sea necesario.
Para buscar paquetes POST en los flujos HTTP, simplemente limpiamos la barra de búsqueda, escribimos "POST" y luego presionamos Enter.
Desplazarse hacia los lados revela la ID del host remoto.
Todos los términos de búsqueda y filtrado se agregan a la lista "Historial". Para volver a aplicar cualquier filtro, simplemente haga clic en él.
También puede buscar un host remoto por nombre.
Edición de términos de búsqueda
Si desea buscar algo, pero no ve un flujo de ese tipo, puede hacer clic en cualquier flujo y editar la entrada en la barra de búsqueda.
Por ejemplo, sabemos que debe haber al menos un flujo SSH en el archivo PCAP porque usamos rsync
para enviar algunos archivos a otra computadora, pero no podemos verlo.
Entonces, haremos clic con el botón derecho en otro flujo, seleccionaremos "Filtro = Valor" en el menú contextual y luego editaremos la barra de búsqueda para que diga "ssh" en lugar de "dns".
Presionamos Enter para buscar flujos SSH y encontramos que solo hay uno.
Al presionar Ctrl+] se abre el panel derecho, que muestra los detalles de este flujo. Si se transfirió un archivo durante un flujo, aparecen los hash MD5, SHA1 y SHA256.
Haga clic derecho en cualquiera de estos y luego seleccione "VirusTotal Lookup" en el menú contextual para abrir su navegador en el sitio web de VirusTotal y pasar el hash para verificar.
VirusTotal almacena los hashes de malware conocido y otros archivos maliciosos. Si no está seguro de si un archivo es seguro, esta es una manera fácil de verificarlo, incluso si ya no tiene acceso al archivo.
Si el archivo es benigno, verá la pantalla que se muestra en la imagen a continuación.
El complemento perfecto para Wireshark
Brim hace que trabajar con Wireshark sea aún más rápido y fácil al permitirle trabajar con archivos de captura de paquetes muy grandes. ¡Pruébalo hoy mismo!