Folha de Dicas do Wireshark
Aprenda Wireshark com Laboratórios Práticos
Aprenda análise de pacotes de rede com Wireshark através de laboratórios práticos e cenários do mundo real. O LabEx oferece cursos abrangentes de Wireshark que cobrem captura de pacotes essencial, filtros de exibição, análise de protocolo, solução de problemas de rede e monitoramento de segurança. Domine a análise de tráfego de rede e as técnicas de inspeção de pacotes.
Filtros de Captura e Captura de Tráfego
Filtragem de Host
Capture o tráfego de/para hosts específicos.
# Capturar tráfego de/para IP específico
host 192.168.1.100
# Capturar tráfego de uma origem específica
src host 192.168.1.100
# Capturar tráfego para um destino específico
dst host 192.168.1.100
# Capturar tráfego de uma sub-rede
net 192.168.1.0/24
Faça login para responder este quiz e acompanhar seu progresso de aprendizagem
host 192.168.1.100 filtra no Wireshark?Filtragem de Porta
Capture o tráfego em portas específicas.
# Tráfego HTTP (porta 80)
port 80
# Tráfego HTTPS (porta 443)
port 443
# Tráfego SSH (porta 22)
port 22
# Tráfego DNS (porta 53)
port 53
# Intervalo de portas
portrange 1000-2000
Faça login para responder este quiz e acompanhar seu progresso de aprendizagem
port 80 filtra no Wireshark?Filtragem de Protocolo
Capture tráfego de protocolo específico.
# Apenas tráfego TCP
tcp
# Apenas tráfego UDP
udp
# Apenas tráfego ICMP
icmp
# Apenas tráfego ARP
arp
Filtros de Captura Avançados
Combine múltiplas condições para uma captura precisa.
# Tráfego HTTP de/para um host específico
host 192.168.1.100 and port 80
# Tráfego TCP exceto SSH
tcp and not port 22
# Tráfego entre dois hosts
host 192.168.1.100 and host 192.168.1.200
# Tráfego HTTP ou HTTPS
port 80 or port 443
Faça login para responder este quiz e acompanhar seu progresso de aprendizagem
tcp and not port 22 captura?Seleção de Interface
Escolha as interfaces de rede para captura.
# Listar interfaces disponíveis
tshark -D
# Capturar em interface específica
# Interface Ethernet
eth0
# Interface WiFi
wlan0
# Interface de loopback
lo
Opções de Captura
Configure os parâmetros de captura.
# Limitar o tamanho do arquivo de captura (MB)
-a filesize:100
# Limitar a duração da captura (segundos)
-a duration:300
# Buffer circular com 10 arquivos
-b files:10
# Modo Promíscuo (capturar todo o tráfego)
-p
Filtros de Exibição e Análise de Pacotes
Filtros de Exibição Básicos
Filtros essenciais para protocolos e tipos de tráfego comuns.
# Mostrar apenas tráfego HTTP
http
# Mostrar apenas tráfego HTTPS/TLS
tls
# Mostrar apenas tráfego DNS
dns
# Mostrar apenas tráfego TCP
tcp
# Mostrar apenas tráfego UDP
udp
# Mostrar apenas tráfego ICMP
icmp
Filtragem de Endereço IP
Filtre pacotes por endereço IP de origem e destino.
# Tráfego de um IP específico
ip.src == 192.168.1.100
# Tráfego para um IP específico
ip.dst == 192.168.1.200
# Tráfego entre dois IPs
ip.addr == 192.168.1.100
# Tráfego de uma sub-rede
ip.src_net == 192.168.1.0/24
# Excluir um IP específico
not ip.addr == 192.168.1.1
Filtragem de Porta e Protocolo
Filtre por portas e detalhes de protocolo específicos.
# Tráfego em porta específica
tcp.port == 80
# Filtro de porta de origem
tcp.srcport == 443
# Filtro de porta de destino
tcp.dstport == 22
# Intervalo de portas
tcp.port >= 1000 and tcp.port <=
2000
# Múltiplas portas
tcp.port in {80 443 8080}
Análise Específica de Protocolo
Análise HTTP
Analise requisições e respostas HTTP.
# Requisições GET HTTP
http.request.method == "GET"
# Requisições POST HTTP
http.request.method == "POST"
# Códigos de status HTTP específicos
http.response.code == 404
# Requisições HTTP para um host específico
http.host == "example.com"
# Requisições HTTP contendo string
http contains "login"
Análise DNS
Examine consultas e respostas DNS.
# Apenas consultas DNS
dns.flags.response == 0
# Apenas respostas DNS
dns.flags.response == 1
# Consultas DNS para um domínio específico
dns.qry.name == "example.com"
# Consultas DNS do tipo A
dns.qry.type == 1
# Erros/falhas DNS
dns.flags.rcode != 0
Análise TCP
Analise detalhes da conexão TCP.
# Pacotes TCP SYN (tentativas de conexão)
tcp.flags.syn == 1
# Pacotes TCP RST (reinicializações de conexão)
tcp.flags.reset == 1
# Retransmissões TCP
tcp.analysis.retransmission
# Problemas de janela TCP
tcp.analysis.window_update
# Estabelecimento de conexão TCP
tcp.flags.syn == 1 and tcp.flags.ack == 0
Análise TLS/SSL
Examine detalhes da conexão criptografada.
# Pacotes de handshake TLS
tls.handshake
# Informações de certificado TLS
tls.handshake.certificate
# Alertas e erros TLS
tls.alert
# Versão TLS específica
tls.handshake.version == 0x0303
# Server Name Indication TLS
tls.handshake.extensions_server_name
Solução de Problemas de Rede
Identifique problemas comuns de rede.
# Mensagens ICMP inalcançáveis
icmp.type == 3
# Requisições/respostas ARP
arp.opcode == 1 or arp.opcode == 2
# Tráfego de broadcast
eth.dst == ff:ff:ff:ff:ff:ff
# Pacotes fragmentados
ip.flags.mf == 1
# Pacotes grandes (potenciais problemas de MTU)
frame.len > 1500
Filtragem Baseada em Tempo
Filtre pacotes por carimbo de data/hora e tempo.
# Pacotes dentro do intervalo de tempo
frame.time >= "2024-01-01 10:00:00"
# Pacotes da última hora
frame.time_relative >= -3600
# Análise de tempo de resposta
tcp.time_delta > 1.0
# Tempo entre chegadas
frame.time_delta > 0.1
Estatísticas e Ferramentas de Análise
Hierarquia de Protocolos
Visualize a distribuição de protocolos na captura.
# Acessar via: Estatísticas > Hierarquia de Protocolos
# Mostra a porcentagem de cada protocolo
# Identifica os protocolos mais comuns
# Útil para visão geral do tráfego
# Equivalente na linha de comando
tshark -r capture.pcap -q -z io,phs
Conversas
Analise a comunicação entre endpoints.
# Acessar via: Estatísticas > Conversas
# Conversas Ethernet
# Conversas IPv4/IPv6
# Conversas TCP/UDP
# Mostra bytes transferidos, contagem de pacotes
# Equivalente na linha de comando
tshark -r capture.pcap -q -z conv,tcp
Gráficos de I/O
Visualize padrões de tráfego ao longo do tempo.
# Acessar via: Estatísticas > Gráficos de I/O
# Volume de tráfego ao longo do tempo
# Pacotes por segundo
# Bytes por segundo
# Aplicar filtros para tráfego específico
# Útil para identificar picos de tráfego
Informações de Especialista
Identifique problemas de rede potenciais.
# Acessar via: Analisar > Informações de Especialista
# Avisos sobre problemas de rede
# Erros na transmissão de pacotes
# Problemas de desempenho
# Preocupações de segurança
# Filtrar por severidade da informação de especialista
tcp.analysis.flags
Gráfico de Fluxo
Visualize a sequência de pacotes entre endpoints.
# Acessar via: Estatísticas > Gráfico de Fluxo
# Mostra a sequência de pacotes
# Visualização baseada no tempo
# Útil para solução de problemas
# Identifica padrões de comunicação
Análise de Tempo de Resposta
Meça os tempos de resposta da aplicação.
# Tempos de resposta HTTP
# Estatísticas > HTTP > Requisições
# Tempos de resposta DNS
# Estatísticas > DNS
# Tempo de resposta do serviço TCP
# Estatísticas > Gráficos de Fluxo TCP > Sequência de Tempo
Operações e Exportação de Arquivos
Salvar e Carregar Capturas
Gerencie arquivos de captura em vários formatos.
# Salvar arquivo de captura
# Arquivo > Salvar Como > capture.pcap
# Carregar arquivo de captura
# Arquivo > Abrir > existing.pcap
# Mesclar múltiplos arquivos de captura
# Arquivo > Mesclar > selecionar arquivos
# Salvar apenas pacotes filtrados
# Arquivo > Exportar Pacotes Especificados
Opções de Exportação
Exporte dados específicos ou subconjuntos de pacotes.
# Exportar pacotes selecionados
# Arquivo > Exportar Pacotes Especificados
# Exportar dissecações de pacotes
# Arquivo > Exportar Dissecações de Pacotes
# Exportar objetos do HTTP
# Arquivo > Exportar Objetos > HTTP
# Exportar chaves SSL/TLS
# Editar > Preferências > Protocolos > TLS
Captura na Linha de Comando
Use tshark para captura e análise automatizadas.
# Capturar para arquivo
tshark -i eth0 -w capture.pcap
# Capturar com filtro
tshark -i eth0 -f "port 80" -w http.pcap
# Ler e exibir pacotes
tshark -r capture.pcap
# Aplicar filtro de exibição ao arquivo
tshark -r capture.pcap -Y "tcp.port == 80"
Processamento em Lote
Processe múltiplos arquivos de captura automaticamente.
# Mesclar múltiplos arquivos
mergecap -w merged.pcap file1.pcap file2.pcap
# Dividir arquivos de captura grandes
editcap -c 1000 large.pcap split.pcap
# Extrair intervalo de tempo
editcap -A "2024-01-01 10:00:00" \
-B "2024-01-01 11:00:00" \
input.pcap output.pcap
Desempenho e Otimização
Gerenciamento de Memória
Lide com arquivos de captura grandes de forma eficiente.
# Usar buffer circular para captura contínua
-b filesize:100 -b files:10
# Limitar o tamanho da captura de pacotes
-s 96 # Capturar apenas os primeiros 96 bytes
# Usar filtros de captura para reduzir dados
host 192.168.1.100 and port 80
# Desativar dissecação de protocolo para velocidade
-d tcp.port==80,http
Otimização de Exibição
Melhore o desempenho da GUI com grandes conjuntos de dados.
# Preferências a ajustar:
# Editar > Preferências > Aparência
# Seleção de esquema de cores
# Tamanho e tipo da fonte
# Opções de exibição de coluna
# Configurações de formato de tempo
# Visualizar > Formato de Exibição de Tempo
# Segundos desde o início da captura
# Hora do dia
# Hora UTC
Fluxo de Trabalho de Análise Eficiente
Melhores práticas para analisar tráfego de rede.
# 1. Começar com filtros de captura
# Capturar apenas o tráfego relevante
# 2. Usar filtros de exibição progressivamente
# Começar amplo, depois refinar
# 3. Usar estatísticas primeiro
# Obter visão geral antes da análise detalhada
# 4. Focar em fluxos específicos
# Clicar com o botão direito no pacote > Seguir > Fluxo TCP
Automação e Scripting
Automatize tarefas comuns de análise.
# Criar botões de filtro de exibição personalizados
# Visualizar > Expressão de Filtro de Exibição
# Usar perfis para diferentes cenários
# Editar > Perfis de Configuração
# Script com tshark
#!/bin/bash
tshark -r $1 -q -z endpoints,tcp | \
grep -v "Filter:" | head -20
Instalação e Configuração
Instalação no Windows
Baixe e instale do site oficial.
# Baixar de wireshark.org
# Executar instalador como Administrador
# Incluir WinPcap/Npcap
durante a instalação
# Instalação na linha de comando
(chocolatey)
choco install wireshark
# Verificar instalação
wireshark --version
Instalação no Linux
Instale via gerenciador de pacotes ou a partir do código-fonte.
# Ubuntu/Debian
sudo apt update
sudo apt install wireshark
# Red Hat/CentOS/Fedora
sudo yum install wireshark
# ou
sudo dnf install wireshark
# Adicionar usuário ao grupo wireshark
sudo usermod -a -G wireshark
$USER
Instalação no macOS
Instale usando Homebrew ou instalador oficial.
# Usando Homebrew
brew install --cask wireshark
# Baixar de wireshark.org
# Instalar pacote .dmg
# Ferramentas de linha de comando
brew install wireshark
Configuração e Preferências
Preferências de Interface
Configure interfaces de captura e opções.
# Editar > Preferências > Captura
# Interface de captura padrão
# Configurações de modo Promíscuo
# Configuração do tamanho do buffer
# Rolagem automática na captura ao vivo
# Configurações específicas da interface
# Captura > Opções > Detalhes da Interface
Configurações de Protocolo
Configure dissector de protocolo e decodificação.
# Editar > Preferências > Protocolos
# Habilitar/desabilitar dissector de protocolo
# Configurar atribuições de porta
# Definir chaves de descriptografia (TLS, WEP, etc.)
# Opções de remontagem TCP
# Funcionalidade Decodificar Como
# Analisar > Decodificar Como
Preferências de Exibição
Personalize a interface do usuário e as opções de exibição.
# Editar > Preferências > Aparência
# Seleção de esquema de cores
# Tamanho e tipo da fonte
# Opções de exibição de coluna
# Configurações de formato de tempo
# Visualizar > Formato de Exibição de Tempo
# Segundos desde o início da captura
# Hora do dia
# Hora UTC
Configurações de Segurança
Configure opções relacionadas à segurança e descriptografia.
# Configuração de descriptografia TLS
# Editar > Preferências > Protocolos > TLS
# Lista de chaves RSA
# Chaves pré-compartilhadas
# Localização do arquivo de log de chaves
# Desabilitar recursos potencialmente perigosos
# Execução de scripts Lua
# Resolvers externos
Técnicas Avançadas de Filtragem
Operadores Lógicos
Combine múltiplas condições de filtro.
# Operador AND
tcp.port == 80 and ip.src == 192.168.1.100
# Operador OR
tcp.port == 80 or tcp.port == 443
# Operador NOT
not icmp
# Parênteses para agrupamento
(tcp.port == 80 or tcp.port == 443) and ip.src ==
192.168.1.0/24
Correspondência de String
Procure por conteúdo específico nos pacotes.
# Contém string (sensível a maiúsculas e minúsculas)
tcp contains "password"
# Contém string (insensível a maiúsculas e minúsculas)
tcp matches "(?i)login"
# Expressões regulares
http.request.uri matches "\.php$"
# Sequências de bytes
eth.src[0:3] == 00:11:22
Comparações de Campo
Compare campos de pacote com valores e intervalos.
# Igualdade
tcp.srcport == 80
# Maior que/menor que
frame.len > 1000
# Verificações de intervalo
tcp.port >= 1024 and tcp.port <= 65535
# Associação a conjunto
tcp.port in {80 443 8080 8443}
# Existência de campo
tcp.options
Análise Avançada de Pacotes
Identifique características e anomalias específicas de pacotes.
# Pacotes malformados
_ws.malformed
# Pacotes duplicados
frame.number == tcp.analysis.duplicate_ack_num
# Pacotes fora de ordem
tcp.analysis.out_of_order
# Problemas de escala de janela TCP
tcp.analysis.window_full
Casos de Uso Comuns
Solução de Problemas de Rede
Identifique e resolva problemas de conectividade de rede.
# Encontrar timeouts de conexão
tcp.analysis.retransmission and tcp.analysis.rto
# Identificar conexões lentas
tcp.time_delta > 1.0
# Encontrar congestionamento de rede
tcp.analysis.window_full
# Problemas de resolução DNS
dns.flags.rcode != 0
# Problemas de descoberta de MTU
icmp.type == 3 and icmp.code == 4
Análise de Segurança
Detecte potenciais ameaças de segurança e atividades suspeitas.
# Detecção de varredura de portas
tcp.flags.syn == 1 and tcp.flags.ack == 0
# Grande número de conexões de um único IP
# Usar Estatísticas > Conversas
# Consultas DNS suspeitas
dns.qry.name contains "dga" or dns.qry.name matches
"^[a-z]{8,}\.com$"
# POST HTTP para URLs suspeitas
http.request.method == "POST" and http.request.uri
contains "/upload"
# Padrões de tráfego incomuns
# Verificar Gráficos de I/O para picos
Desempenho da Aplicação
Monitore e analise os tempos de resposta da aplicação.
# Análise de aplicação web
http.time > 2.0
# Monitoramento de conexão de banco de dados
tcp.port == 3306 and tcp.analysis.initial_rtt > 0.1
# Desempenho de transferência de arquivos
tcp.stream eq X and tcp.analysis.bytes_in_flight
# Análise de qualidade de VoIP
rtp.jitter > 30 or rtp.marker == 1
Investigação de Protocolo
Mergulhe em protocolos específicos e seu comportamento.
# Análise de tráfego de e-mail
tcp.port == 25 or tcp.port == 587 or tcp.port == 993
# Transferências de arquivos FTP
ftp-data or ftp.request.command == "RETR"
# Compartilhamento de arquivos SMB/CIFS
smb2 or smb
# Análise de concessão DHCP
bootp.option.dhcp == 1 or bootp.option.dhcp == 2