Introdução
Neste laboratório, você aprenderá como analisar fluxos TCP usando a ferramenta de linha de comando do Wireshark, tshark. Você praticará comandos essenciais para ler capturas de pacotes, identificar conversas TCP e extrair dados específicos de fluxos para inspeção detalhada.
Os exercícios o guiarão através da verificação de arquivos de captura, da análise de detalhes de protocolos e da salvaguarda do conteúdo dos fluxos. Ao concluir este laboratório, você adquirirá habilidades práticas em análise de tráfego de rede usando os poderosos recursos de filtragem e estatísticas do tshark.
Ler Captura TCP com -r tcp.pcap
Nesta etapa, você aprenderá como ler um arquivo de captura de pacotes TCP usando a ferramenta de linha de comando do Wireshark, tshark. Este é o primeiro passo na análise do tráfego de rede a partir de um arquivo de captura salvo. Compreender como ler capturas de pacotes é fundamental para a solução de problemas e análise de rede.
A opção -r no tshark permite que você leia pacotes de um arquivo de captura salvo anteriormente. Pense nisso como abrir um documento - a flag -r diz ao tshark qual "documento" (arquivo de captura) abrir. Usaremos um arquivo de exemplo chamado tcp.pcap localizado no seu diretório ~/project.
- Primeiro, vamos verificar se o arquivo de captura existe no local esperado. Esta é uma boa prática antes de tentar analisar qualquer arquivo:
ls ~/project/tcp.pcap
- Agora, usaremos o
tsharkpara ler o arquivo de captura. O comando básico sem nenhum filtro mostrará uma visão geral de todo o tráfego de rede no arquivo:
tshark -r ~/project/tcp.pcap
Isso exibe uma visão resumida com colunas importantes:
- Número do pacote (mostrando a ordem dos pacotes capturados)
- Timestamp (quando cada pacote foi capturado)
- Endereços IP de origem e destino
- Protocolo usado (TCP, UDP, etc.)
- Breve informação sobre o conteúdo do pacote
- Para mergulhar mais fundo no conteúdo dos pacotes, podemos adicionar a flag
-V(modo verbose). Isso mostra a decomposição completa do protocolo de cada pacote, camada por camada:
tshark -r ~/project/tcp.pcap -V
A saída verbose revela detalhes sobre:
- Camada Ethernet (endereços MAC)
- Camada IP (IP de origem/destino, TTL, etc.)
- Camada TCP (portas, números de sequência, flags)
- Dados da camada de aplicação (se presentes)
Esta visão detalhada ajuda você a entender exatamente o que está acontecendo em cada camada de rede durante a comunicação.
Identificar Índice do Fluxo com -z conv,tcp
Nesta etapa, você aprenderá como identificar fluxos de conversas TCP em uma captura de pacotes usando o tshark do Wireshark com a opção -z conv,tcp. Isso ajuda a analisar padrões de comunicação entre hosts.
Antes de começarmos, é importante entender que os fluxos TCP representam conversas completas entre dois endpoints. Cada fluxo tem um número de índice único que nos ajuda a isolar e analisar comunicações específicas em uma captura de rede que pode conter muitas conexões simultâneas.
A opção -z conv,tcp exibe uma tabela de todas as conversas TCP na captura, mostrando os índices de fluxo, endereços de origem/destino, portas e contagens de pacotes. Isso nos dá uma visão geral de alto nível de toda a atividade TCP em nosso arquivo de captura.
- Primeiro, vamos listar todas as conversas TCP em nosso arquivo de captura:
tshark -r ~/project/tcp.pcap -z conv,tcp
Quando você executa este comando, o tshark processará o arquivo de captura de pacotes e gerará um resumo de todas as conversas TCP. O comando lê (-r) o arquivo pcap especificado e aplica a opção de estatísticas de conversação (-z conv,tcp).
A saída mostrará uma tabela com colunas:
- Índice de fluxo (identificador único para cada fluxo TCP)
- Endereço:porta de origem (mostrando qual dispositivo iniciou a conexão)
- Endereço:porta de destino (mostrando o dispositivo receptor)
- Pacotes em cada direção (ajudando a identificar o fluxo de tráfego)
- Total de pacotes (dando o tamanho da conversa)
Para filtrar e ver apenas as estatísticas de conversação (sem detalhes dos pacotes), adicione
-q(modo silencioso):
tshark -r ~/project/tcp.pcap -z conv,tcp -q
A opção -q diz ao tshark para apenas gerar as estatísticas que solicitamos, tornando a saída mais limpa e fácil de ler quando estamos interessados apenas no resumo da conversa.
- Anote os índices de fluxo (primeira coluna), pois você precisará deles para a próxima etapa, onde seguiremos fluxos específicos. Esses índices são cruciais porque nos permitem focar em conversas individuais dentro do que pode ser uma captura de rede muito movimentada.
Seguir Fluxo com -z follow,tcp,stream,0
Nesta etapa, você aprenderá como seguir e analisar um fluxo TCP específico da captura de pacotes usando o tshark do Wireshark com a opção -z follow,tcp. Isso permite que você reconstrua o fluxo de dados real de uma conversa entre dois endpoints, tornando mais fácil entender a comunicação no nível da aplicação.
A opção -z follow,tcp,stream,0 permite que você examine o fluxo 0 (substitua 0 pelo índice de fluxo desejado da etapa anterior) como um fluxo de dados contínuo, em vez de pacotes individuais. Isso é particularmente útil ao analisar protocolos como HTTP, onde o carregamento de uma única página da web pode envolver vários pacotes.
- Primeiro, vamos seguir o fluxo 0 (a primeira conversa TCP) da nossa captura. Este comando lê o arquivo pcap e reconstrói toda a conversa:
tshark -r ~/project/tcp.pcap -z follow,tcp,stream,0
A saída mostrará três informações importantes:
- A troca completa de dados entre cliente e servidor, reconstruída em ordem
- Representação ASCII dos dados da camada de aplicação (o que as aplicações realmente enviaram)
- Indicadores de direção (">" para cliente-para-servidor, "<" para servidor-para-cliente) que ajudam a rastrear quem iniciou cada parte da conversa
Para seguir um fluxo diferente, substitua "0" pelo índice de fluxo desejado (da saída da etapa 2). Por exemplo, para ver a segunda conversa na captura:
tshark -r ~/project/tcp.pcap -z follow,tcp,stream,1
- Para uma saída mais limpa mostrando apenas os dados (sem cabeçalhos de pacotes), adicione
-q(modo silencioso). Isso é útil quando você se importa apenas com os dados da aplicação:
tshark -r ~/project/tcp.pcap -z follow,tcp,stream,0 -q
Salvar Texto do Fluxo com Redirecionamento
Nesta etapa, você aprenderá como salvar o conteúdo de um fluxo TCP em um arquivo usando o redirecionamento de saída. Essa técnica é particularmente útil quando você precisa analisar padrões de comunicação de rede ou compartilhar dados capturados com colegas. O processo envolve extrair dados específicos de um fluxo TCP de um arquivo de captura de pacotes e armazená-los em um arquivo de texto para exame posterior.
- Primeiro, vamos salvar o fluxo 0 em um arquivo chamado
stream0.txt. Este comando lê o arquivo de captura de pacotes (tcp.pcap) e extrai apenas o conteúdo do índice de fluxo TCP 0, em seguida, redireciona a saída para um novo arquivo de texto:
tshark -r ~/project/tcp.pcap -z follow,tcp,stream,0 -q > ~/project/stream0.txt
- Após executar o comando, verifique se o arquivo foi criado com sucesso. O comando
ls -lmostra informações detalhadas sobre o arquivo, incluindo seu tamanho e hora de criação:
ls -l ~/project/stream0.txt
- Para visualizar o conteúdo real que você salvou, use o comando
cat. Isso exibirá a conversa completa do fluxo TCP, incluindo mensagens do cliente e do servidor:
cat ~/project/stream0.txt
- A mesma técnica funciona para qualquer fluxo TCP em seu arquivo de captura. Veja como salvar o fluxo 1 simplesmente alterando o índice de fluxo no comando. Observe que estamos criando um novo arquivo (
stream1.txt) para evitar a substituição do anterior:
tshark -r ~/project/tcp.pcap -z follow,tcp,stream,1 -q > ~/project/stream1.txt
- Ao examinar fluxos mais longos, adicionar números de linha pode facilitar a análise. A flag
-ncomcatexibe cada linha com seu número correspondente, ajudando você a referenciar partes específicas da conversa:
cat -n ~/project/stream0.txt
Resumo
Neste laboratório, você aprendeu a analisar o tráfego de rede TCP usando a ferramenta de linha de comando tshark do Wireshark. Os exercícios cobriram a leitura de capturas de pacotes com -r, a exibição de informações detalhadas do protocolo via -V e a identificação de conversas TCP usando -z conv,tcp para análise de fluxo.
Você praticou o acompanhamento de fluxos TCP específicos por seus índices e a salvaguarda do conteúdo do fluxo por meio do redirecionamento de saída. Essas técnicas fornecem um fluxo de trabalho prático para inspecionar o tráfego de rede, desde a captura inicial até o exame de dados focado usando tshark.


