Frigivelsen af en ny stabil gren af Wireshark 4.0 netværksanalysatoren er blevet offentliggjort. Lad os huske på, at projektet oprindeligt blev udviklet under navnet Ethereal, men i 2006, på grund af en konflikt med ejeren af Ethereal-varemærket, blev udviklerne tvunget til at omdøbe projektet Wireshark. Projektkoden distribueres under GPLv2-licensen.
Vigtigste innovationer i Wireshark 4.0.0:
- Layoutet af elementer i hovedvinduet er blevet ændret. Panelerne Yderligere pakkeoplysninger og Pakkebytes er placeret side om side under panelet Pakkeliste.
- Designet af dialogboksene "Samtale" og "Slutpunkt" er blevet ændret.
- Tilføjede muligheder til kontekstmenuer for at ændre størrelse på alle kolonner og kopiere elementer.
- Muligheden for at løsne og fastgøre faner er tilvejebragt.
- Tilføjet support til eksport i JSON-format.
- Når filtre anvendes, vises kolonner, der viser forskellene mellem pakker, der blev matchet, og dem, der ikke blev filtreret.
- Sorteringen af forskellige typer data er blevet ændret.
- Identifikatorer er knyttet til TCP- og UDP-strømme, og muligheden for at filtrere efter dem er tilvejebragt.
- Tilladt at skjule dialoger fra kontekstmenuen.
- Forbedret import af hex-dumps fra Wireshark-grænsefladen og brug af text2pcap-kommandoen.
- text2pcap giver mulighed for at optage dumps i alle formater, der understøttes af aflytningsbiblioteket.
- I text2pcap er pcapng indstillet som standardformatet, svarende til værktøjerne editcap, mergecap og tshark.
- Tilføjet understøttelse for valg af outputformatindkapslingstype.
- Tilføjet nye muligheder for logning.
- Giver mulighed for at gemme dummy IP-, TCP-, UDP- og SCTP-headere i dumps ved brug af Raw IP, Raw IPv4 og Raw IPv6-indkapsling.
- Tilføjet understøttelse til scanning af inputfiler ved hjælp af regulære udtryk.
- Funktionaliteten af text2pcap-værktøjet og "Import from Hex Dump"-grænsefladen i Wireshark er sikret.
- Ydeevnen for lokaliseringsbestemmelse ved hjælp af MaxMind-databaser er blevet væsentligt forbedret.
- Der er foretaget ændringer i syntaksen for trafikfiltreringsregler:
- Tilføjet muligheden for at vælge et specifikt lag af protokolstakken, for eksempel ved indkapsling af IP-over-IP, for at udtrække adresser fra eksterne og indlejrede pakker, kan du angive "ip.addr#1 == 1.1.1.1" og " ip.addr#2 == 1.1.1.2. XNUMX".
- Betingede sætninger understøtter nu "any" og "all" kvantifiers, for eksempel "all tcp.port > 1024" for at teste alle tcp.port-felter.
- Der er en indbygget syntaks til at specificere feltreferencer - ${some.field}, implementeret uden brug af makroer.
- Tilføjet muligheden for at bruge aritmetiske operationer ("+", "-", "*", "/", "%") med numeriske felter, der adskiller udtrykket med krøllede klammer.
- Tilføjet max(), min() og abs() funktioner.
- Det er tilladt at angive udtryk og kalde andre funktioner som funktionsargumenter.
- Tilføjet ny syntaks for at adskille literaler fra identifikatorer - en værdi, der begynder med en prik, behandles som en protokol eller et protokolfelt, og en værdi inden for vinkelparenteser behandles som en literal.
- Tilføjet bitoperator "&", for eksempel, for at ændre individuelle bits kan du angive "frame[0] & 0x0F == 3".
- Forrangen af den logiske OG-operator er nu højere end den for OR-operatoren.
- Tilføjet understøttelse til angivelse af konstanter i binær form ved hjælp af "0b" præfikset.
- Tilføjet muligheden for at bruge negative indeksværdier til rapportering fra slutningen, for eksempel for at kontrollere de sidste to bytes i TCP-headeren, kan du angive "tcp[-2:] == AA:BB".
- Det er forbudt at adskille elementer i et sæt med mellemrum; brug af mellemrum i stedet for kommaer vil nu føre til en fejl snarere end en advarsel.
- Tilføjede yderligere escape-sekvenser: \a, \b, \f, \n, \r, \t, \v.
- Tilføjet muligheden for at angive Unicode-tegn i formaterne \uNNNN og \UNNNNNNNNN.
- Tilføjet en ny sammenligningsoperator "===" ("all_eq"), som kun virker, hvis i udtrykket "a === b" alle værdier af "a" falder sammen med "b". En omvendt operator "!==" ("any_ne") er også blevet tilføjet.
- Operatoren "~=" er blevet forældet, og "!==" skal bruges i stedet.
- Det er forbudt at bruge tal med åben prik, dvs. værdier ".7" og "7." er nu ugyldige og bør erstattes af "0.7" og "7.0".
- Den regulære udtryksmotor i displayfiltermotoren er blevet flyttet til PCRE2-biblioteket i stedet for GRegex.
- Korrekt håndtering af null-bytes er implementeret i regulære udtryksstrenge og skabeloner ('\0' i en streng behandles som en null-byte).
- Ud over 1 og 0 kan booleske værdier nu også skrives som True/TRUE og False/FALSE.
- HTTP2-dissektormodulet har tilføjet understøttelse af brug af dummy-headers til at parse data, der er fanget uden tidligere pakker med headere (f.eks. ved parsing af meddelelser i allerede etablerede gRPC-forbindelser).
- Mesh Connex (MCX)-understøttelse er blevet tilføjet til IEEE 802.11-parseren.
- Midlertidig lagring (uden at gemme på disk) af adgangskoden i Extcap-dialogen er tilvejebragt, for ikke at indtaste den under gentagne lanceringer. Tilføjet muligheden for at indstille en adgangskode til extcap via kommandolinjeværktøjer såsom tshark.
- Ciscodump-værktøjet implementerer muligheden for fjernoptagelse fra enheder baseret på IOS, IOS-XE og ASA.
- Tilføjet protokolstøtte:
- Allied Telesis Loop Detection (AT LDF),
- AUTOSAR I-PDU Multiplexer (AUTOSAR I-PduM),
- DTN Bundle Protocol Security (BPSec),
- DTN Bundle Protocol Version 7 (BPv7),
- DTN TCP Convergence Layer Protocol (TCPCL),
- DVB-udvælgelsesinformationstabel (DVB SIT),
- Enhanced Cash Trading Interface 10.0 (XTI),
- Enhanced Order Book Interface 10.0 (EOBI),
- Enhanced Trading Interface 10.0 (ETI),
- FiveCo's Legacy Register Access Protocol (5co-legacy),
- Generic Data Transfer Protocol (GDT),
- gRPC Web (gRPC-Web),
- Host IP Configuration Protocol (HICP),
- Huawei GRE bonding (GREbond),
- Lokaliseringsgrænseflademodul (IDENT, KALIBRERING, PRØVER - IM1, PRØVER - IM2R0),
- Mesh Connex (MCX),
- Microsoft Cluster Remote Control Protocol (RCP),
- Åbn kontrolprotokol for OCA/AES70 (OCP.1),
- Protected Extensible Authentication Protocol (PEAP),
- REdis Serialization Protocol v2 (RESP),
- Roon Discovery (RoonDisco),
- Secure File Transfer Protocol (sftp),
- Secure Host IP Configuration Protocol (SHICP),
- SSH File Transfer Protocol (SFTP),
- USB Attached SCSI (UASP),
- ZBOSS Network Coprocessor (ZB NCP).
- Kravene til byggemiljøet (CMake 3.10) og afhængigheder (GLib 2.50.0, Libgcrypt 1.8.0, Python 3.6.0, GnuTLS 3.5.8) er blevet øget.
Kilde: opennet.ru