O lançamento de uma nova ramificação estável do analisador de rede Wireshark 4.0 foi publicado. Lembremos que o projeto foi inicialmente desenvolvido com o nome Ethereal, mas em 2006, devido a um conflito com o proprietário da marca Ethereal, os desenvolvedores foram forçados a renomear o projeto como Wireshark. O código do projeto é distribuído sob a licença GPLv2.
Principais inovações no Wireshark 4.0.0:
- O layout dos elementos na janela principal foi alterado. Os painéis Informações Adicionais de Pacotes e Bytes de Pacotes estão localizados lado a lado abaixo do painel Lista de Pacotes.
- O design das caixas de diálogo “Conversa” e “Endpoint” foi alterado.
- Adicionadas opções aos menus de contexto para redimensionar todas as colunas e copiar itens.
- A capacidade de desafixar e anexar guias é fornecida.
- Adicionado suporte para exportação no formato JSON.
- Quando os filtros são aplicados, são mostradas colunas que mostram as diferenças entre os pacotes que foram correspondidos e aqueles que não foram filtrados.
- A classificação de vários tipos de dados foi alterada.
- Os identificadores são anexados aos fluxos TCP e UDP e é fornecida a capacidade de filtrá-los.
- Tem permissão para ocultar caixas de diálogo do menu de contexto.
- Importação aprimorada de dumps hexadecimais da interface Wireshark e usando o comando text2pcap.
- text2pcap fornece a capacidade de gravar dumps em todos os formatos suportados pela biblioteca de escuta telefônica.
- No text2pcap, pcapng é definido como formato padrão, semelhante aos utilitários editcap, mergecap e tshark.
- Adicionado suporte para selecionar o tipo de encapsulamento do formato de saída.
- Adicionadas novas opções para registro.
- Forneceu a capacidade de salvar cabeçalhos IP, TCP, UDP e SCTP fictícios em dumps ao usar o encapsulamento Raw IP, Raw IPv4 e Raw IPv6.
- Adicionado suporte para verificação de arquivos de entrada usando expressões regulares.
- A funcionalidade do utilitário text2pcap e da interface “Import from Hex Dump” no Wireshark é garantida.
- O desempenho da determinação de localização usando bancos de dados MaxMind foi significativamente melhorado.
- Foram feitas alterações na sintaxe das regras de filtragem de tráfego:
- Adicionada a capacidade de selecionar uma camada específica da pilha de protocolos, por exemplo, ao encapsular IP sobre IP, para extrair endereços de pacotes externos e aninhados, você pode especificar “ip.addr#1 == 1.1.1.1” e “ ip.addr#2 == 1.1.1.2".
- As instruções condicionais agora suportam quantificadores "any" e "all", por exemplo "all tcp.port > 1024" para testar todos os campos tcp.port.
- Existe uma sintaxe integrada para especificar referências de campo - ${some.field}, implementada sem o uso de macros.
- Adicionada a capacidade de usar operações aritméticas (“+”, “-“, “*”, “/”, “%”) com campos numéricos, separando a expressão com chaves.
- Adicionadas funções max(), min() e abs().
- É permitido especificar expressões e chamar outras funções como argumentos de função.
- Adicionada nova sintaxe para separar literais de identificadores - um valor que começa com um ponto é tratado como um protocolo ou campo de protocolo, e um valor entre colchetes angulares é tratado como um literal.
- Adicionado operador de bit “&”, por exemplo, para alterar bits individuais você pode especificar “frame[0] & 0x0F == 3”.
- A precedência do operador lógico AND agora é maior que a do operador OR.
- Adicionado suporte para especificação de constantes em formato binário usando o prefixo “0b”.
- Adicionada a capacidade de usar valores de índice negativos para relatórios do final, por exemplo, para verificar os dois últimos bytes no cabeçalho TCP você pode especificar “tcp[-2:] == AA:BB”.
- É proibido separar elementos de um conjunto com espaços; usar espaços em vez de vírgulas agora levará a um erro em vez de um aviso.
- Adicionadas sequências de escape adicionais: \a, \b, \f, \n, \r, \t, \v.
- Adicionada a capacidade de especificar caracteres Unicode nos formatos \uNNNN e \UNNNNNNNN.
- Adicionado um novo operador de comparação “===” (“all_eq”), que funciona apenas se na expressão “a === b” todos os valores de “a” coincidirem com “b”. Um operador reverso "!==" ("any_ne") também foi adicionado.
- O operador "~=" foi descontinuado e "!==" deve ser usado em seu lugar.
- É proibido usar números com ponto aberto, ou seja, valores ".7" e "7." agora são inválidos e devem ser substituídos por “0.7” e “7.0”.
- O mecanismo de expressão regular no mecanismo de filtro de exibição foi movido para a biblioteca PCRE2 em vez de GRegex.
- O tratamento correto de bytes nulos é implementado em strings e modelos de expressões regulares ('\0' em uma string é tratado como um byte nulo).
- Além de 1 e 0, os valores booleanos agora também podem ser escritos como Verdadeiro/VERDADEIRO e Falso/FALSO.
- O módulo dissector HTTP2 adicionou suporte para usar cabeçalhos fictícios para analisar dados capturados sem pacotes anteriores com cabeçalhos (por exemplo, ao analisar mensagens em conexões gRPC já estabelecidas).
- O suporte Mesh Connex (MCX) foi adicionado ao analisador IEEE 802.11.
- É fornecido armazenamento temporário (sem salvar em disco) da senha na caixa de diálogo Extcap, para não inseri-la durante reinicializações. Adicionada a capacidade de definir uma senha para extcap por meio de utilitários de linha de comando, como tshark.
- O utilitário ciscodump implementa a capacidade de capturar remotamente de dispositivos baseados em IOS, IOS-XE e ASA.
- Adicionado suporte de protocolo:
- Detecção de Loop de Telesis Aliada (AT LDF),
- Multiplexador AUTOSAR I-PDU (AUTOSAR I-PduM),
- Segurança de protocolo de pacote DTN (BPSec),
- Protocolo de pacote DTN versão 7 (BPv7),
- Protocolo de camada de convergência TCP DTN (TCPCL),
- Tabela de informações de seleção DVB (DVB SIT),
- Interface aprimorada de negociação em dinheiro 10.0 (XTI),
- Interface aprimorada do livro de pedidos 10.0 (EOBI),
- Interface de negociação aprimorada 10.0 (ETI),
- Protocolo de acesso de registro legado da FiveCo (5co-legacy),
- Protocolo genérico de transferência de dados (GDT),
- Web gRPC (gRPC-Web),
- Protocolo de configuração de IP de host (HICP),
- Ligação Huawei GRE (GREbond),
- Módulo de Interface de Localização (IDENT, CALIBRAÇÃO, AMOSTRAS - IM1, AMOSTRAS - IM2R0),
- Conexão de malha (MCX),
- Protocolo de controle remoto de cluster da Microsoft (RCP),
- Protocolo de controle aberto para OCA/AES70 (OCP.1),
- Protocolo de autenticação extensível protegido (PEAP),
- Protocolo de serialização REdis v2 (RESP),
- Roon Discovery (RoonDisco),
- Protocolo de transferência segura de arquivos (sftp),
- Protocolo de configuração IP de host seguro (SHICP),
- Protocolo de transferência de arquivos SSH (SFTP),
- SCSI conectado por USB (UASP),
- Coprocessador de rede ZBOSS (ZB NCP).
- Os requisitos para o ambiente de construção (CMake 3.10) e dependências (GLib 2.50.0, Libgcrypt 1.8.0, Python 3.6.0, GnuTLS 3.5.8) foram aumentados.
Fonte: opennet.ru