Transforme seu fluxo de trabalho Wireshark com o Brim no Linux

Cabos Ethernet coloridos.
pixelnest / Shutterstock

O Wireshark é o padrão de fato para analisar o tráfego de rede. Infelizmente, ele se torna cada vez mais lento à medida que a captura de pacotes aumenta. O Brim resolve esse problema tão bem que mudará seu fluxo de trabalho do Wireshark.

Wireshark é ótimo, mas. . .

O Wireshark é um excelente software de código aberto. É usado por amadores e profissionais em todo o mundo para investigar problemas de rede. Ele captura os pacotes de dados que trafegam pelos fios ou pelo éter da sua rede. Depois de capturar seu tráfego, o Wireshark permite filtrar e pesquisar os dados, rastrear conversas entre dispositivos de rede e muito mais.

Por melhor que seja o Wireshark, porém, ele tem um problema. Os arquivos de captura de dados de rede (chamados de rastreamentos de rede ou capturas de pacotes) podem ficar muito grandes e muito rapidamente. Isso é especialmente verdadeiro se o problema que você está tentando investigar for complexo ou esporádico, ou se a rede for grande e ocupada.

Quanto maior a captura de pacotes (ou PCAP), mais lento o Wireshark se torna. Apenas abrir e carregar um rastreamento muito grande (qualquer coisa acima de 1 GB) pode demorar tanto que você pensaria que o Wireshark havia desmaiado e entregado o fantasma.

Trabalhar com arquivos desse tamanho é uma verdadeira dor. Cada vez que você realiza uma pesquisa ou altera um filtro, é necessário aguardar que os efeitos sejam aplicados aos dados e atualizados na tela. Cada atraso atrapalha sua concentração, o que pode atrapalhar seu progresso.

Brim é o remédio para esses males. Ele atua como um pré-processador interativo e front-end para o Wireshark. Quando você quiser ver o nível granular que o Wireshark pode fornecer, o Brim o abre instantaneamente para você exatamente nesses pacotes.

Se você fizer muita captura de rede e análise de pacotes, o Brim revolucionará seu fluxo de trabalho.

Instalando o Brim

O Brim é muito novo, então ainda não entrou nos repositórios de software das distribuições Linux. No entanto, na página de download do Brim , você encontrará arquivos de pacote DEB e RPM, portanto, instalá-lo no Ubuntu ou Fedora é bastante simples.

Se você usa outra distribuição, pode  baixar o código-fonte  do GitHub e construir o aplicativo você mesmo.

O Brim usa  zquma ferramenta de linha de comando para   logs do Zeek , então você também precisará baixar um arquivo ZIP contendo os zq binários.

Instalando o Brim no Ubuntu

Se estiver usando o Ubuntu, você precisará baixar o arquivo do pacote DEB e  zqo arquivo ZIP do Linux. Clique duas vezes no arquivo do pacote DEB baixado e o aplicativo Ubuntu Software será aberto. A licença Brim é erroneamente listada como “Proprietária” – ela usa a  Licença BSD de 3 cláusulas .

Recomendado:  13 maneiras de abrir o aplicativo de configurações do Windows 10

Clique em “Instalar”.

Clique em “Instalar”.

Quando a instalação estiver concluída, clique duas vezes no zq arquivo ZIP para iniciar o aplicativo Archive Manager. O arquivo ZIP conterá um único diretório; arraste e solte-o do “Gerenciador de arquivos” para um local em seu computador, como o diretório “Downloads”.

Digamos o seguinte para criar um local para os zqbinários:

sudo mkdir / opt / zeek

sudo mkdir / opt / zeek em uma janela de terminal.

Precisamos copiar os binários do diretório extraído para o local que acabamos de criar. Substitua o caminho e o nome do diretório extraído em sua máquina no seguinte comando:

sudo cp Downloads / zq-v0.20.0.linux-amd64 / * / opt / Zeek

sudo cp Downloads / zq-v0.20.0.linux-amd64 / * / opt / Zeek em uma janela de terminal.

Precisamos adicionar esse local ao caminho, então vamos editar o arquivo BASHRC:

sudo gedit .bashrc

sudo gedit .bashrc em uma janela de terminal.

O editor gedit será aberto. Role até o final do arquivo e digite esta linha:

export PATH = $ PATH: / opt / zeek

O arquivo BASHRC no editor gedit com a linha export PATH = $ PATH: / opt / zeek.

Salve suas alterações e feche o editor.

Instalando o Brim no Fedora

Para instalar o Brim no Fedora, baixe o arquivo do pacote RPM (em vez do DEB) e siga os mesmos passos que cobrimos para a instalação do Ubuntu acima.

Curiosamente, quando o arquivo RPM é aberto no Fedora, ele é identificado corretamente como tendo uma licença de código aberto, em vez de uma licença proprietária.

Lançando o Brim

Clique em “Mostrar aplicativos” no dock ou pressione Super + A. Digite “brim” na caixa Pesquisar e clique em “Brim” quando ele aparecer.

Digite "brim" na caixa Pesquisar.

Brim inicia e exibe sua janela principal. Você pode clicar em “Escolher arquivos” para abrir um navegador de arquivos ou arrastar e soltar um arquivo PCAP na área cercada pelo retângulo vermelho.

A janela principal do Brim após a inicialização.

Brim usa uma tela com guias e você pode ter várias guias abertas simultaneamente. Para abrir uma nova guia, clique no sinal de mais (+) na parte superior e selecione outro PCAP.

Brim Basics

Brim carrega e indexa o arquivo selecionado. O índice é um dos motivos pelos quais a Brim é tão rápida. A janela principal contém um histograma de volumes de pacotes ao longo do tempo e uma lista de “fluxos” de rede.

A janela principal do Brim com um arquivo PCAP carregado.

Um arquivo PCAP contém um fluxo ordenado por tempo de pacotes de rede para muitas conexões de rede. Os pacotes de dados para as várias conexões são misturados porque alguns deles terão sido abertos simultaneamente. Os pacotes para cada “conversa” da rede são intercalados com os pacotes de outras conversas.

O Wireshark exibe o fluxo de rede pacote por pacote, enquanto o Brim usa um conceito chamado “fluxos”. Um fluxo é um intercâmbio de rede completo (ou conversa) entre dois dispositivos. Cada tipo de fluxo é categorizado, codificado por cores e rotulado por tipo de fluxo. Você verá fluxos rotulados como “dns,” “ssh,” “https,” “ssl” e muitos mais.

Recomendado:  Por que o novo modo de bloqueio seguro do iPhone não é para você

Se você rolar a exibição do resumo do fluxo para a esquerda ou direita, muito mais colunas serão exibidas. Você também pode ajustar o período de tempo para exibir o subconjunto de informações que deseja ver. Abaixo estão algumas maneiras de visualizar dados:

  • Clique em uma barra no histograma para ampliar a atividade de rede dentro dela.
  • Clique e arraste para destacar um intervalo de exibição do histograma e aumentar o zoom. Brim exibirá os dados da seção destacada.
  • Você também pode especificar períodos exatos nos campos “Data” e “Hora”.

O Brim pode exibir dois painéis laterais: um à esquerda e outro à direita. Eles podem ser ocultados ou permanecer visíveis. O painel à esquerda mostra um histórico de pesquisa e uma lista de PCAPs abertos, chamados de espaços. Pressione Ctrl + [para ativar ou desativar o painel esquerdo.

O painel "Espaços" no Brim.

O painel à direita contém informações detalhadas sobre o fluxo destacado. Pressione Ctrl +] para ativar ou desativar o painel direito.

Um painel "Campos" destacado em Brim.

Clique em “Conn” na lista “UID Correlation” para abrir um diagrama de conexão para o fluxo destacado.

Clique em "Conn".

Na janela principal, você também pode destacar um fluxo e clicar no ícone Wireshark. Isso inicia o Wireshark com os pacotes para o fluxo destacado exibidos.

Clique no ícone Wireshark na janela principal do Brim.

O Wireshark é aberto, exibindo os pacotes de interesse.

Pacotes selecionados do Brim exibidos no Wireshark.

Filtrando em Brim

A pesquisa e a filtragem no Brim são flexíveis e abrangentes, mas você não precisa aprender uma nova linguagem de filtragem se não quiser. Você pode construir um filtro sintaticamente correto no Brim clicando nos campos da janela de resumo e selecionando opções em um menu.

Por exemplo, na imagem abaixo, clicamos com o botão direito em um campo “dns”. Em seguida, vamos selecionar “Filtro = Valor” no menu de contexto.

Um menu de contexto na janela de resumo.

As seguintes coisas ocorrem então:

  • O texto _path = "dns" é adicionado à barra de pesquisa.
  • Esse filtro é aplicado ao arquivo PCAP, portanto, ele exibirá apenas os fluxos que são fluxos de DNS (Domain Name Service).
  • O texto do filtro também é adicionado ao histórico de pesquisa no painel esquerdo.

Uma tela de resumo filtrada por DNS.

Podemos adicionar outras cláusulas ao termo de pesquisa usando a mesma técnica. Vamos clicar com o botão direito do mouse no campo de endereço IP (contendo “192.168.1.26”) na coluna “Id.orig_h” e, em seguida, selecionar “Filtro = Valor” no menu de contexto.

Isso adiciona a cláusula adicional como uma cláusula AND. A exibição agora é filtrada para mostrar os fluxos de DNS que se originaram desse endereço IP (192.168.1.26).

Uma tela de resumo filtrada por tipo de fluxo e endereço IP.

O novo termo de filtro é adicionado ao histórico de pesquisa no painel esquerdo. Você pode pular entre as pesquisas clicando nos itens na lista do histórico de pesquisas.

Recomendado:  O que é um Internet Troll? (e como lidar com trolls)

O endereço IP de destino para a maioria dos nossos dados filtrados é 81.139.56.100. Para ver quais fluxos de DNS foram enviados para endereços IP diferentes, clicamos com o botão direito do mouse em “81.139.56.100” na coluna “Id_resp_h” e, em seguida, selecione “Filtro! = Valor” no menu de contexto.

Tela de resumo com um filtro de pesquisa contendo uma cláusula "! =".

Apenas um fluxo DNS originado de 192.168.1.26 não foi enviado para 81.139.56.100, e nós o localizamos sem precisar digitar nada para criar nosso filtro.

Fixar cláusulas de filtro

Quando clicamos com o botão direito do mouse em um fluxo “HTTP” e selecionamos “Filtro = Valor” no menu de contexto, o painel de resumo exibe apenas fluxos HTTP. Podemos então clicar no ícone Pin ao lado da cláusula do filtro HTTP.

Clique no ícone Fixar.

A cláusula HTTP agora está fixada no local e quaisquer outros filtros ou termos de pesquisa que usarmos serão executados com a cláusula HTTP anexada a eles.

Se digitarmos “GET” na barra de pesquisa, a pesquisa ficará restrita aos fluxos que já foram filtrados pela cláusula fixada. Você pode fixar quantas cláusulas de filtro forem necessárias.

"GET" na caixa de pesquisa.

Para pesquisar pacotes POST nos fluxos HTTP, simplesmente limpamos a barra de pesquisa, digite “POST” e pressione Enter.

"POST" na caixa de pesquisa executado com a cláusula "HTTP" fixada.

Rolar para os lados revela o ID do host remoto.

A coluna remota "Host" na tela de resumo do Brim.

Todos os termos de pesquisa e filtro são adicionados à lista “Histórico”. Para reaplicar qualquer filtro, basta clicar nele.

A lista "Histórico" preenchida automaticamente.

Você também pode pesquisar um host remoto por nome.

Pesquisando por "trustwave.com" em Brim.

Editando Termos de Pesquisa

Se você deseja pesquisar algo, mas não vê um fluxo desse tipo, pode clicar em qualquer fluxo e editar a entrada na barra de pesquisa.

Por exemplo, sabemos que deve haver pelo menos um fluxo SSH no arquivo PCAP porque costumávamos rsyncenviar alguns arquivos para outro computador, mas não podemos ver.

Então, clicaremos com o botão direito em outro fluxo, selecionaremos “Filtro = Valor” no menu de contexto e, em seguida, editaremos a barra de pesquisa para dizer “ssh” em vez de “dns”.

Pressionamos Enter para pesquisar fluxos SSH e descobrir que há apenas um.

Um fluxo SSH na janela de resumo.

Pressionar Ctrl +] abre o painel direito, que mostra os detalhes desse fluxo. Se um arquivo foi transferido durante um fluxo, os hashes MD5 , SHA1 e SHA256 aparecem.

Clique com o botão direito em qualquer um deles e selecione “VirusTotal Lookup” no menu de contexto para abrir seu navegador no site do VirusTotal e passar o hash para verificação.

O VirusTotal armazena os hashes de malware conhecido e outros arquivos maliciosos. Se você não tiver certeza se um arquivo é seguro, esta é uma maneira fácil de verificar, mesmo se você não tiver mais acesso ao arquivo.

As opções do menu de contexto hash.

Se o arquivo for benigno, você verá a tela mostrada na imagem abaixo.

Uma resposta "Nenhuma correspondência encontrada" do site do VirusTotal.

O complemento perfeito para o Wireshark

O Brim torna o trabalho com o Wireshark ainda mais rápido e fácil, permitindo que você trabalhe com arquivos de captura de pacotes muito grandes. Faça um teste hoje!