O Wireshark é um analisador de tráfego de rede, ou "sniffer", para linux, macOS, *BSD e outros sistemas operacionais do tipo Unix e UNIX e para o Windows. Ele usa QT, uma biblioteca gráfica de interface do usuário e libpcap e npcap como bibliotecas de captura e filtragem de pacotes.
A distribuição Wireshark também vem com o TShark, que é um sniffer orientado a linha (semelhante ao Sun Snoop ou TCPDUMP) que usa a mesma dissecção, leitura e escrita de arquivos de captura e código de filtragem de pacotes como Wireshark e com Editcap, que é a A, que é um Programa para ler os arquivos Capture e gravar os pacotes desse arquivo de captura, possivelmente em um formato de arquivo de captura diferente e com alguns pacotes possivelmente removidos da captura.
A casa oficial do Wireshark é https://www.wireshark.org.
A mais recente distribuição pode ser encontrada no subdiretório https://www.wireshark.org/download
O projeto Wireshark constrói e testa regularmente as seguintes plataformas:
Pacotes de instalação oficiais estão disponíveis para o Microsoft Windows e MacOS.
Ele está disponível como um pacote padrão ou complementar para muitos sistemas operacionais populares e distribuições Linux, incluindo Debian, Ubuntu, Fedora, Centos, Rhel, Arch, Gentoo, OpenSUSE, FreeBSD, Dragonfly BSD, NetBSD e OpenBSD.
Além disso, está disponível em muitos sistemas de embalagens de terceiros, como PKGSRC, OpenCSW, Homebrew e Macports.
Ele deve ser executado em outros sistemas unix-ish sem muitos problemas.
Em alguns casos, a versão atual do Wireshark pode não suportar seu sistema operacional. É o caso do Windows XP, suportado pelo Wireshark 1.10 e anteriormente. Em outros casos, o pacote padrão para Wireshark pode ser simplesmente antigo. É o caso de Solaris e HP-UX.
O Python 3 é necessário para construir o Wireshark. O Asciidoctor é necessário para construir a documentação, incluindo as páginas do homem. Perl e Flex são necessários para gerar parte do código -fonte.
Portanto, você deve instalar o Python 3, asciidoctor e o GNU "Flex" (Vanilla "Lex" não funcionarão) em sistemas que os não os não. Você pode precisar instalar o Perl também.
As instruções completas de instalação podem ser encontradas no arquivo de instalação e no guia do desenvolvedor em https://www.wireshark.org/docs/wsdg_html_chunked/
Veja também o ReadMe apropriado. Arquivos do sistema operacional para instruções de instalação específicas do SO.
Para capturar pacotes da rede, você precisa fazer o conjunto de conjuntos de programas DumpCap para root ou precisa ter acesso à entrada apropriada em /dev
se o seu sistema for tão inclinado (sistemas derivados de BSD e sistemas como como Solaris e HP-UX que suportam o DLPI, normalmente se enquadram nessa categoria). Embora possa ser tentador fazer com que o Wireshark e os executáveis do TSHARK ROOT ROOT ou executá -los como raiz, por favor, não. O processo de captura foi isolado no DumpCap; Este programa simples é menos provável de conter orifícios de segurança e, portanto, é mais seguro para funcionar como root.
Consulte a página Man para obter uma descrição de cada opção de linha de comando e recurso de interface.
O Wireshark pode ler pacotes de vários tipos de arquivos diferentes. Consulte a página do Wireshark Man ou o Guia do usuário do Wireshark para obter uma lista de formatos de arquivo suportados.
O Wireshark pode ler de forma transparente versões compactadas de qualquer um desses arquivos se a biblioteca de compressão necessária estivesse disponível quando o Wireshark foi compilado. Os formatos de compressão atualmente suportados são:
GZIP e LZ4 (ao usar blocos independentes, que é o padrão) suportam busca aleatória rápida, que oferece desempenho muito melhor da GUI em arquivos grandes. Qualquer um desses formatos de compactação pode ser desativado no momento da compilação, passando a opção correspondente para cmake, ou seja, cmake -DENABLE_ZLIB=OFF
, cmake -DENABLE_LZ4=OFF
ou cmake -DENABLE_ZSTD=OFF
.
Embora o Wireshark possa ler os arquivos AIX IPTRACE, a documentação no comando iptrace packet-rastreio da AIX é escassa. O comando iptrace
inicia um daemon que você deve matar para parar o rastreamento. Através da experimentação, parece que o envio de um sinal HUP para esse daemon iptrace causa um desligamento gracioso e um pacote completo é gravado no arquivo de rastreamento. Se um pacote parcial for salvo no final, o Wireshark reclamará ao ler esse arquivo, mas você poderá ler todos os outros pacotes. Se isso ocorrer, informe os desenvolvedores do Wireshark em [email protected]; Certifique-se de nos enviar uma cópia desse arquivo de rastreamento se for pequeno e contém dados não sensíveis.
O suporte a produtos Lucent/Ascend é limitado à saída de rastreio de depuração gerada pela série de produtos Max e Pipline. O Wireshark pode ler a saída dos comandos wandsession
, wandisplay
, wannext
e wdd
.
O Wireshark também pode ler a saída de rastreamento do despejo da linha "Router Compact" Toshiba de roteadores ISDN (TR-600 e TR-650). Você pode telnet para o roteador e iniciar uma sessão de despejo com snoop dump
.
A saída de depuração Cosine L2 também pode ser lida pelo Wireshark. Para obter a saída de depuração L2 primeiro, insira o modo Diags e depois use os comandos create-pkt-log-profile
e apply-pkt-lozg-profile
na categoria Layer-2. Para obter mais detalhes como usar esses comandos, você deve examinar o comando de ajuda da layer-2 create ?
ou layer-2 apply ?
.
Para usar os traços Lucent/Ascend, Toshiba e Cosine com Wireshark, você deve capturar a saída de rastreamento em um arquivo no disco. O traço está acontecendo dentro do roteador e o roteador não tem como salvar o traço em um arquivo para você. Uma maneira fácil de fazer isso no UNIX é executar telnet <ascend> | tee <outfile>
. Ou, se o seu sistema tiver o comando "script" instalado, você poderá salvar uma sessão de shell, incluindo telnet, em um arquivo. Por exemplo, para fazer login em um arquivo chamado TraceFile.out:
$ script tracefile.out
Script started on <date/time>
$ telnet router
..... do your trace, then exit from the router's telnet session.
$ exit
Script done on <date/time>
O Wireshark tentará usar os recursos de resolução de nomes reversos ao decodificar pacotes IPv4 e IPv6.
Se você deseja desativar a resolução -N mt
nome enquanto estiver usando o Wireshark, inicie o Wireshark com a opção -n
para desativar toda Desative a resolução de nomes para todos os endereços da camada de rede (IPv4, IPv6, IPX).
Você pode fazer com que a configuração padrão abrindo a caixa de diálogo Preferências usando o item de preferências no menu Editar, selecionando "resolução de nome", desativando as opções de resolução de nomes apropriadas e clicando em "OK".
O Wireshark pode fazer uma decodificação básica de pacotes SNMP; Ele também pode usar a biblioteca LBSMI para fazer uma decodificação mais sofisticada lendo arquivos MIB e usando as informações nesses arquivos para exibir OIDs e valores de ligação variáveis de maneira mais amigável. O CMake determinará automaticamente se você possui a biblioteca Libsmi no seu sistema. Se você possui a biblioteca LBSMI, mas não deseja que o Wireshark a use, poderá executar o Cmake com a opção -DENABLE_SMI=OFF
.
O Wireshark está sob desenvolvimento constante, por isso é possível que você encontre um bug ao usá -lo. Por favor, relate bugs em https://gitlab.com/wireshark/wireshark/-/issues. Certifique -se de entrar no bug:
As informações completas de compilação do item "Sobre o Wireshark" no menu de ajuda ou na saída de bugs wireshark -v
para bugs wireshark e a saída do tshark -v
para bugs tshark;
Se o bug aconteceu no Linux, a distribuição Linux que você estava usando e a versão dessa distribuição;
O comando que você costumava invocar o Wireshark, se você executou o Wireshark na linha de comando, ou TShark, se você executou o TShark e a sequência de operações que você executou que fez com que o bug aparecesse.
Se o bug for produzido por um arquivo de rastreamento específico, anexe -se ao bug um arquivo de rastreamento junto com a descrição do bug. Se o arquivo de rastreamento contiver informações confidenciais (por exemplo, senhas), não envie.
Se o Wireshark morreu em você com uma 'violação de segmentação', 'erro de barramento', 'abortar' ou outro erro que produz um arquivo de despejo do UNIX Core, você poderá ajudar muito os desenvolvedores se tiver um depurador instalado. Um rastreamento de pilha pode ser obtido usando o seu depurador ('GDB' neste exemplo), o binário Wireshark e o arquivo Core resultante. Aqui está um exemplo de como usar o comando GDB 'backtrace' para fazê -lo.
$ gdb wireshark core
(gdb) backtrace
..... prints the stack trace
(gdb) quit
$
O arquivo de despejo principal pode ser nomeado "wireshark.core" em vez de "núcleo" em algumas plataformas (por exemplo, sistemas BSD). Se você obteve um depósito de núcleo com o TShark em vez de o Wireshark, use "Tshark" como o primeiro argumento para o depurador; O dump do núcleo pode ser nomeado "tshark.core".
O Wireshark é distribuído sob o GNU GPLV2. Consulte o arquivo copiando o texto completo da licença. Em caso de dúvida, o texto completo é a parte legalmente vinculativa. Essas notas são apenas para facilitar as pessoas que não estão familiarizadas com o GPLV2.
Não há restrições ao seu uso. Existem restrições à sua distribuição na fonte ou na forma binária.
A maioria das partes do Wireshark é coberta por uma licença "GPL versão 2 ou posterior". Alguns arquivos são cobertos por diferentes licenças compatíveis com o GPLV2.
Como uma exceção notável, alguns utilitários distribuídos com a fonte do Wireshark são cobertos por outras licenças que não são diretamente compatíveis com o GPLV2. Tudo bem, pois apenas as próprias ferramentas são licenciadas dessa maneira, a saída das ferramentas não é considerada um trabalho derivado e, portanto, pode ser licenciado com segurança para uso do Wireshark. Uma seleção incompleta dessas ferramentas inclui:
Partes do Wireshark podem ser construídas e distribuídas como bibliotecas. Essas peças ainda são cobertas pela GPL, e não pela menor licença pública em geral ou por qualquer outra licença.
Se você integrar tudo ou parte do Wireshark em seu próprio aplicativo e optar por publicá -lo ou lançá -lo, o trabalho combinado deverá ser lançado nos termos do GPLV2.
Não há garantia, expressa ou implícita, associada a este produto. Use por sua conta e risco.
Gerald Combs [email protected]
Gilbert Ramirez [email protected]
Guy Harris [email protected]