Aprenda a usar o sniffer Wireshark (Parte I)
Ao longo dos anos, fomos apresentando no Pplware as várias versões e respectivas
novidades do sniffer mais popular para redes informáticas, o Wireshark. O Wireshark é uma
ferramenta de analise protocolar, que permite a captação, em tempo real, de pacotes de
dados, e apresenta essa informação num formato legível para os utilizadores. O processo
de captura de tráfego é realizado via placa de rede,, funcionando esta num modo especial
que é designado de modo promíscuo (possibilidade de capturar todos os pacotes,
independentemente do endereço de destino)
Hoje vamos iniciar um novo ciclo de tutoriais com o objectivo de ensinar os utilizadores a
usarem o sniffer Wireshark.
Para que é que eu preciso de um sniffer?
Para muitos, é uma poderosa ferramenta de trabalho, para outros é aquela ferramenta
capaz de capturar umas passwords na rede (em plain text de preferência), alguns dados
confidenciais, decifrar chaves de rede, etc, etc, se esses dados não são encriptados antes
de serem enviados pela rede… maravilha… passam em ―claro‖ na rede, perceptíveis por
qualquer utilizador. Quanto ao Wireshark (antigo Ethereal), para mim é simplesmente o
melhor sniffer grátis!!!. O Wireshark permite analisar os pacotes recebidos e transmitidos por
qualquer interface de rede, sendo possível aplicar vários tipos filtros.
Como começar a usar o sniffer Wireshark?
Para começarmos a usar o Wireshark basta escolher a placa de rede (a placa que está
actualmente ligada à rede) que pretendemos colocar à escuta. De referir que em alguns
casos, o Wireshark não reconhece o fabricante da placa e coloca apenas o nome Microsoft
ou outro (no meu caso, a primeira referencia a Microsoft corresponde à placa de rede
wireless).
Caso não consigam identificar a placa que pretendem, podem carregar no primeiro botão do
menu do wireshark e ver qual a placa que está a enviar e a receber pacotes (no meu caso a
segunda placa da lista…que corresponde à placa de rede wireless).
Depois de seleccionarmos a placa de rede, começamos de imediato a visualizar os pacotes
que passam na rede.
Para parar o processo basta carregar no quarto ícone do menu do Wireshark.
Exercício:
Para experimentarem de imediato o Wireshark deixamos aqui um pequeno exercício. Para
tal, vamos snifar todos os pedidos e respostas DNS, devendo colocar no campo filter dns.
De seguida abrimos a linha de comandos e usando o comando nslookup, questionamos o
nosso servidor de DNS quem é www.pplware.com. Como podem ver na imagem seguinte, o
Wireshark consegue capturar toda a informação trocada entre a nossa máquina e o servidor
de DNS definido.
Aprenda a usar o sniffer Wireshark (Parte II)
Ao longo dos anos, fomos apresentando no Pplware as várias versões e respectivas
novidades do sniffer mais popular para redes informáticas, o Wireshark. O Wireshark é uma
ferramenta de analise protocolar, que permite a captação, em tempo real, de pacotes de
dados, e apresenta essa informação num formato legível para os utilizadores. O processo
de captura de tráfego é realizado via placa de rede,, funcionando esta num modo especial
que é designado de modo promíscuo (possibilidade de capturar todos os pacotes,
independentemente do endereço de destino).
Depois de termos apresentado aqui algumas funcionalidades básicas do wireshark, hoje
vamos explicar mais duas funcionalidades: Esquema de cores nas linhas e Follow TCP
Stream.
Esquema de cores nas linhas
Quando um utilizador vê pela primeira vez o funcionamento do wireshark, questionar-se-á
qual o significado das cores no output. De uma forma geral e por omissão, as linhas:
Verde – significa tráfego TCP
Azul escuro – Tráfego DNS
Azul claro – Tráfego UDP
Preto – Segmentos TCP com problema
Caso o utilizador pretenda ver o esquema de cores completo do wireshark, basta aceder a
View—>Coloring Rules
Follow TCP Stream
Uma das funcionalidades interessantes do Wireshark é o Follow TCP Stream. Esta
funcionalidade permite visualizar streams TCP completas, isto é, com esta opção o utilizador
poderá acompanhar toda uma comunicação desde o primeiro SYN até ao FIN-ACK.
Esperamos que tenham gostado deste segundo tutorial sobre o Wireshark. Por hoje resta-
nos esperar pelo vosso feedback e sugestões para próximos tutoriais.
Aprenda a usar o sniffer Wireshark (Parte III)
Como detectar tráfego ―abusivo‖
Ao longo dos anos, fomos apresentando no Pplware as várias versões e respectivas
novidades do sniffer mais popular para redes informáticas, o Wireshark. O Wireshark é uma
ferramenta de analise protocolar, que permite a captação, em tempo real, de pacotes de
dados, e apresenta essa informação num formato legível para os utilizadores.
O processo de captura de tráfego é realizado via placa de rede,, funcionando esta num
modo especial que é designado de modo promíscuo (possibilidade de capturar todos os
pacotes, independentemente do endereço de destino). Depois de termos apresentado aqui
algumas funcionalidades básicas do wireshark, Esquema de cores nas linhas e Follow TCP
Stream aqui, hoje vamos aprender a detectar tráfego abusivo.
Um dos maiores inimigos de qualquer administrador de sistemas é o tráfego abusivo que
deriva de torrents, streaming de dados, downloads ilegais, etc. Apesar de existirem várias
ferramentas que permitem ―controlar‖ o tráfego abusivo, o Wireshark também poderá dar
uma ajuda.
De referir que o wireshark só conhecer monitorizar trafego unicast, broadcast e multicast no
caso de estarmos ligados via switch (ver mais aqui).
Vamos então a um exemplo para detectar a presença de downloads de torrents na rede.
Para isso, vamos ao campo Filter e colocamos o nome do protocolo associado aos torrents:
bittorrent
Além da informação anterior, podemos ainda saber as estatísticas de utilização de um dado
protocolo. Para isso, vamos a Statistics > Protocolo Hierarchy
Como podemos
ver pela imagem seguinte, o protocolo BitTorrent está com uma taxa de ocupação na ordem
dos 0,90% (valor relativo ao período de captura).
Se pretendermos saber o endereço IP de todas as máquinas que estão a funcionar como
peers, basta ir a Statistics > Endpoints e depois carregar no separador IPv4.
Aprenda a usar o sniffer Wireshark (Parte IV)
Ao longo dos anos, fomos apresentando no Pplware as várias versões e respectivas novidades do sniffer mais popular para redes informáticas, o Wireshark. O Wireshark é uma ferramenta de analise protocolar, que permite a captação, em tempo real, de pacotes de dados, e apresenta essa informação num formato legível para os utilizadores. O processo de captura de tráfego é realizado via placa de rede,, funcionando esta num modo especial que é designado de modo promíscuo (possibilidade de capturar todos os pacotes, independentemente do endereço de destino).
Depois de termos apresentado aqui algumas funcionalidades básicas do wireshark, Esquema de cores nas linhas e Follow TCP Stream aqui, e ensinar a detectar tráfego abusivo, hoje vamos ensinar como podem ver o processo de Three-way Handshake, responsável pelo estabelecimento de ligações TCP.
O TCP é o protocolo mais usado isto porque fornece garantia na entrega de todos os pacotes entre um PC emissor e um PC receptor. Dentro de um segmento TCP existem vários campos e hoje destacamos os campos ACK e SYN que são usados no inicio de uma comunicação TCP.
SYN – Se activo, indica um pedido de estabelecimento de ligação e a confirmação da ligação;
ACK – Se activo, o campo Número de Confirmação deve ser interpretado;
Mas o que é Three Way Handshake?
No estabelecimento de ligação entre emissor e receptor existe um ―pré-acordo‖ denominado de Three Way Handshake (SYN, SYN-ACK, ACK).
A sessão entre um cliente e um servidor é sempre iniciada pelo cliente, que envia um pedido de ligação pacote com a flag SYN activada.
O cliente envia também um numero sequencial aleatório O servidor responde com um pacote SYN,ACK com o seu próprio numero
sequencial aleatório e um numero de confirmação (igual ao numero sequencial do cliente +1)
Para finalizar o cliente responde com um pacote ACK com o numero de confirmação (igual ao numero de sequência do servidor +1)
Na prática, temos mais ou menos isto…
Vamos a um exemplo prático?
Vamos considerar então uma ligação da nossa máquina para o site Pplware.
Primeira Fase (SYN)
O cliente (192.168.1.123) envia um pedido de sincronização (SYN) para o Pplware.com. Tal segmento tem como numero de sequencia 0 (zero).
Segunda Fase (SYN, ACK)
O servidor responde com um pacote SYN,ACK, onde o ACK=1 (igual ao numero sequencial do cliente +1)
Terceira fase (ACK)
Para finalizar o cliente responde com um pacote ACK =1 e envia também o número de sincronização (Seq =1) – igual ao numero de sequência do servidor +1.
Nota: Para facilitar a encontrar os registos, podem usar os seguintes filtros:
Filtro 1: tcp.flags.syn == 1 && tcp.flags.ack == 0 Filtro 2: tcp.flags.syn == 1 && tcp.flags.ack == 1 Filtro 3: tcp.seq == 1 && tcp.ack == 1 && tcp.len == 0 && !(tcp.flags.push == 1)
Nota: Para facilitar, podem também usar a funcionalidade Follow TCP Stream. Esta funcionalidade permite visualizar streams TCP completas, isto é, com esta opção o utilizador poderá acompanhar toda uma comunicação desde o primeiro SYN até ao FIN-ACK – ver aqui.
Esperamos que tenham gostado deste terceiro tutorial sobre o Wireshark. Por hoje resta-nos esperar pelo vosso feedback e sugestões para próximos tutoriais.
Aprenda a usar o sniffer Wireshark (Parte V)
Veja tudo o que passa na rede! Hoje vamos ensinar a usar os filtros.
O Wireshark é uma ferramenta de analise protocolar, que permite a captação, em tempo real, de pacotes de dados, e apresenta essa informação num formato legível para os utilizadores. O processo de captura de tráfego é realizado via placa de rede,, funcionando esta num modo especial que é designado de modo promíscuo (possibilidade de capturar todos os pacotes, independentemente do endereço de destino).
Hoje vamos ensinar como podem usar filtros no Wireshark.
No Pplware já apresentamos aqui algumas funcionalidades básicas do wireshark, esquema de cores nas linhas e Follow TCP Stream aqui, ensinamos a detectar tráfego abusivo e também mostramos como podem ver o processo de Three-way Handshake, responsável pelo estabelecimento de ligações TCP.
O que são filtros?
Tal como nome sugere, os filtros permitem seleccionar, de um conjunto de informação, aquilo que pretendemos. Podemos filtrar por protocolo, por endereço de rede, por porta, por endereço MAC, etc, etc. Aqui ficam alguns exemplo:
Filtrar por protocolo
Para filtrar por protocolo basta escrever no campo Filter qual o protocolo a filtrar.
Vamos considerar que vamos filtrar apenas HTTP, aqui fica o exemplo de um resultado.
De referir também que é possível usar operadores lógicos. Isto permite-nos melhorar o filtro no caso de pretendermos informação de mais do que um protocolo.
Vamos considerar, por exemplo, que pretendemos informação dos protocolos http e ICMP. Para isso basta apenas usar o operador lógico ||.
Filtrar por IP
No caso das pesquisas por IP podemos, por exemplo, pesquisar pelo endereço de origem (ip.addr) e endereço de destino (ip.dst).
E se o utilizador pretender excluir da pesquisa apenas um determinado IP? Para isso basta usar o operador != (ex. ip.src!=8.8.4.4)
Filtrar por porta
Para filtrar por porta é semelhante aos exemplos anteriores. Podemos simplesmente filtrar por uma porta TCP (ex. tcp.port) mas podemos também ser mais específicos e filtrar por porta de origem(tcp.srcport) ou porta de destino (tcp.dstport).
Mas a opção tcp, existem muitas mais opções. Veja aqui
Filtrar por MAC
A pesquisa por MAC é feita recorrendo ao parâmetro eth.addr seguido do endereço MAC.