Wireshark ip från ett annat nätverk. Wireshark filter


Wireshark är en kraftfull nätverksanalysator som kan användas för att analysera trafik som passerar genom din dators nätverksgränssnitt. Du kan behöva detta för att upptäcka och lösa nätverksproblem, felsöka dina webbapplikationer, nätverksprogram eller webbplatser. Wireshark låter dig se innehållet i ett paket fullt ut på alla nivåer, så att du bättre kan förstå hur nätverket fungerar på en låg nivå.

Alla paket fångas i realtid och tillhandahålls i ett lättläst format. Programmet stöder ett mycket kraftfullt filtreringssystem, färgmarkering och andra funktioner som hjälper dig att hitta de paket du vill ha. I den här handledningen kommer vi att titta på hur du använder Wireshark för att analysera trafik. Nyligen har utvecklarna gått vidare till att arbeta med den andra grenen av Wireshark 2.0-programmet, vilket har medfört många förändringar och förbättringar, särskilt för gränssnittet. Detta är vad vi kommer att använda i den här artikeln.

Viktiga funktioner i Wireshark

Innan du går vidare till övervägandet av trafikanalysmetoder måste du överväga vilka funktioner programmet stöder mer i detalj, vilka protokoll det kan fungera med och vad du ska göra. Här är huvudfunktionerna i programmet:

  • Fånga paket i realtid från trådbundna eller andra typer av nätverksgränssnitt, samt läsning från en fil;
  • Följande insamlingsgränssnitt stöds: Ethernet, IEEE 802.11, PPP och lokala virtuella gränssnitt;
  • Paket kan siktas med många parametrar med hjälp av filter;
  • Alla kända protokoll är markerade i listan i olika färger, till exempel TCP, HTTP, FTP, DNS, ICMP och så vidare;
  • Stöd för att fånga VoIP-samtalstrafik;
  • Stöder dekryptering av HTTPS-trafik med ett certifikat;
  • Dekryptering av WEP, WPA-trafik av trådlösa nätverk i närvaro av en nyckel och handskakning;
  • Visning av nätverksbelastningsstatistik;
  • Visa paketinnehåll för alla nätverkslager;
  • Visar tidpunkten för att skicka och ta emot paket.

Programmet har många andra funktioner, men dessa var de viktigaste som kan intressera dig.

Hur man använder Wireshark

Jag antar att du redan har programmet installerat, men om inte, så kan du installera det från de officiella arkiven. För att göra detta, skriv kommandot i Ubuntu:

$ sudo apt installera wireshark

Efter installationen kan du hitta programmet i distributionens huvudmeny. Du måste köra Wireshark med superanvändarrättigheter, för annars kommer programmet inte att kunna analysera nätverkspaket. Detta kan göras från huvudmenyn eller via terminalen med kommandot för KDE:

$ kdesu wireshark

Och för Gnome / Unity:

$ gksu wireshark

Programmets huvudfönster är uppdelat i tre delar, den första kolumnen innehåller en lista över nätverksgränssnitt som är tillgängliga för analys, den andra - alternativ för att öppna filer och den tredje - hjälp.

Nätverkstrafikanalys

För att starta analysen, välj ett nätverksgränssnitt, till exempel eth0 och klicka på knappen Start.

Därefter öppnas nästa fönster, redan med en ström av paket som passerar genom gränssnittet. Detta fönster är också uppdelat i flera delar:

  • Övre del- det här är menyer och paneler med olika knappar;
  • Paketlista- sedan visas strömmen av nätverkspaket som du kommer att analysera;
  • Paketets innehåll- precis under innehållet i det valda paketet finns, det är indelat i kategorier beroende på transportskiktet;
  • Verklig representation- längst ner visas innehållet i förpackningen i verklig form, såväl som i form av HEX.

Du kan klicka på valfritt paket för att analysera dess innehåll:

Här ser vi ett förfrågningspaket till DNS för att få sajtens ip-adress, domänen skickas i själva förfrågan, och i svarspaketet får vi vår fråga, samt svaret.

För mer bekväm visning kan du öppna paketet i ett nytt fönster genom att dubbelklicka på posten:

Wireshark filter

Det är väldigt obekvämt att gå igenom paketen manuellt för att hitta de du behöver, speciellt med en aktiv stream. Därför är det bättre att använda filter för en sådan uppgift. Det finns en speciell rad under menyn för att ange filter. Du kan klicka på Expression för att öppna filterkonstruktorn, men det finns många av dem, så vi kommer att täcka de mest grundläggande:

  • ip.dst- mål-ip-adress;
  • ip.src- Avsändarens IP-adress;
  • ip.addr- avsändarens eller mottagarens ip;
  • ip.proto- protokoll;
  • tcp.dstport- Bestämmelsehamn.
  • tcp.srcport- avsändarens port;
  • ip.ttl- filtrera efter ttl, bestämmer nätverksavståndet;
  • http.request_uri- den begärda webbadressen.

Du kan använda följande operatorer för att ange förhållandet mellan ett fält och ett värde i ett filter:

  • == - lika med;
  • != - inte lika med;
  • < - mindre;
  • > - Mer;
  • <= - mindre eller lika;
  • >= - mer eller lika;
  • tändstickor- vanligt uttryck;
  • innehåller- innehåller.

För att kombinera flera uttryck kan du använda:

  • && - båda uttrycken måste vara sanna för paketet;
  • || – ett av uttrycken kan vara sant.

Låt oss nu titta närmare på flera filter med hjälp av exempel och försöka överväga alla tecken på relationer.

Låt oss först filtrera bort alla paket som skickas till 194.67.215.125 (losst.ru). Skriv en rad i filterfältet och klicka Tillämpa... För enkelhetens skull kan wireshark-filter sparas med knappen Spara:

ip.dst == 194.67.215.125

Och för att inte bara ta emot skickade paket, utan också mottagna som svar från denna nod, kan du kombinera två villkor:

ip.dst == 194.67.215.125 || ip.src == 194.67.215.125

Vi kan också välja de överförda stora filerna:

http.content_length> 5000

Efter att ha filtrerat innehållstypen kan vi välja alla bilder som laddades upp, analysera wireshark-trafiken, vars paket innehåller ordet bild:

http.content_type innehåller bild

För att rensa filtret kan du klicka på knappen Klar... Det händer att du inte alltid känner till all information som behövs för filtrering, utan du vill bara studera nätverket. Du kan lägga till vilket fält som helst i ett paket som en kolumn och se dess innehåll i det allmänna fönstret för varje paket.

Till exempel vill jag visa ttl (livstid) för ett paket som en kolumn. För att göra detta, öppna paketinformationen, hitta det här fältet i IP-sektionen. Ring sedan upp snabbmenyn och välj alternativet Använd som kolumn:

Du kan också skapa ett filter själv baserat på valfritt fält. Välj önskat fält och öppna snabbmenyn och tryck sedan på Applicera som filter eller Förbered som filter sedan Välj Vald för att endast visa de valda värdena, eller Ej valt för att ta bort dem:

Det angivna fältet och dess värde kommer att tillämpas eller, i det andra fallet, ersättas i filterfältet:

På detta sätt kan du lägga till ett fält av vilket paket eller en kolumn som helst i filtret. Det finns också detta alternativ i snabbmenyn. Du kan också använda enklare villkor för att filtrera protokoll. Låt oss till exempel analysera Wireshark-trafik för HTTP- och DNS-protokoll:

En annan intressant funktion i programmet är användningen av Wireshark för att spåra en specifik session mellan användarens dator och servern. För att göra detta, öppna snabbmenyn för paketet och välj Följ TCP-strömmen.

Då öppnas ett fönster där du hittar all data som överförts mellan servern och klienten:

Diagnostisera Wireshark-problem

Du kanske undrar hur du använder Wireshark 2 för att upptäcka nätverksproblem. För att göra detta, i det nedre vänstra hörnet av fönstret finns en rund knapp, när du klickar på den öppnas ett fönster. Expet-verktyg... I den samlar Wireshark alla felmeddelanden och nätverksproblem:

Fönstret är uppdelat i flikar som fel, varningar, meddelanden, chattar. Programmet kan filtrera och hitta många nätverksproblem och här kan du se dem väldigt snabbt. Wireshark-filter stöds också här.

Wireshark trafikanalys

Du kan mycket enkelt förstå exakt vad användarna laddade ner och vilka filer de såg om anslutningen inte var krypterad. Programmet gör ett mycket bra jobb med att extrahera innehåll.

För att göra detta måste du först sluta fånga trafik med den röda fyrkanten på panelen. Öppna sedan menyn Fil -> Exportera objekt -> HTTP:

Det är ett mycket kraftfullt verktyg som har många funktioner. Det är omöjligt att lägga all dess funktionalitet i en artikel, men den grundläggande informationen som tillhandahålls här kommer att räcka för att du ska behärska allt du behöver för dig själv.

När du felsöker ett visst problem kan du ibland behöva analysera protokolltrafiken som går ut och kommer in i din maskin. Wireshark är ett av de bästa verktygen som används för detta ändamål. I den här artikeln kommer vi att lära oss hur du använder Wireshark nätverksprotokollanalysatordisplayfilter.

1. Ladda ner och installera Wireshark

När du har laddat ner den körbara filen klickar du bara på den för att installera Wireshark.

2. Välj ett gränssnitt och starta infångningen

När du har öppnat wireshark måste du först välja ett speciellt nätverksgränssnitt för din maskin. I de flesta fall är maskinen bara ansluten till ett nätverksgränssnitt, men om det finns flera, välj sedan det gränssnitt som du vill övervaka trafiken på.

Från menyn, klicka på "Fånga -> Gränssnitt", vilket kommer att visa följande skärm:

3. Källa IP-filter

Ett källfilter kan användas för att begränsa paketvyn i wireshark till endast de paket som har käll-IP som nämns i filtret. Filtret som används i exemplet nedan är:

IP.src == 192.168.1.1

4. Destinations-IP-filter

Ett destinationsfilter kan användas för att begränsa paketvyn i wireshark till endast de paket som har destinations-IP som nämnts i filtret. Till exempel:

IP.dst == 192.168.1.1

5. Filtrera efter protokoll

Det är väldigt lätt att använda filter för ett visst protokoll. Skriv bara namnet på det protokollet i filterfliken och tryck på enter. I exemplet nedan försökte vi filtrera resultaten för http-protokoll med detta filter:

6. Använda OR Condition i filter

Detta filter hjälper till att filtrera de paket som matchar antingen det ena eller det andra villkoret.

Anta att det kan uppstå ett krav att se paket som antingen har protokollet "http" eller "arp". I så fall kan man inte använda separata filter. Så det finns filteruttrycket '||' som ELLER ger två villkor för att visa paket som matchar något eller båda villkoren. I exemplet nedan försökte vi filtrera http- eller arp-paketen med detta filter:

Http || arp

7. Tillämpa AND Condition i filter

Detta filter hjälper till att filtrera paket som matchar exakt med flera villkor.

Anta att det finns ett krav på att endast filtrera de paket som är HTTP-paket och har käll-ip som "192.168.1.4". Använd detta filter:

Http && ip.src == 192.168.1.4

8. Filtrera efter portnummer

Detta kan göras genom att använda filtret 'tcp.port eq'. Till exempel:

Tcp.port eq 80

9. Matcha paket som innehåller en viss sekvens

Filtersyntaxen som används i detta är: 'innehåller'.

Tcp innehåller 01:01:04

10. Avvisa paket baserat på källa eller destination

Filtret här är 'ip.src! =' Eller 'ip.dst! ='.

IP.dst! = 192.168.1.1

Om du gillade den här artikeln kanske du också gillar ..

- närvaron av ett inbyggt expertsystem som gör att du snabbt kan analysera bufferten efter tjänster eller typer av fel. Detta kommer avsevärt att påskynda tiden för att lokalisera problemet och arbeta med information som redan har sorterats och tidigare uppskattats åt dig. Här kan du uppmärksamma lösningar från VIAVI Solutions som heter Observer eller till ClearSight Analyzer från Netscout.

Om budgeten inte fördelas, men det finns problem, så återstår det att fylla på med tålamod och kaffe och. I överföringsnätverk fylls data med hastigheter på 1 Gbit/s och över trafikfångningsbufferten omedelbart och en ganska stor datamatris erhålls vid utgången. Denna datamatris, som förstår interaktionen mellan olika enheter i nätverket, kan filtreras med olika parametrar. För detta har Wireshark flera alternativ:

    Färgkodning av felaktiga paket - kan anpassas. Paket som innehåller ett fel kommer att markeras i bufferten med en speciell färg.

    Filtrera genom filtersträngen. Du har erfarenhet av Wireshark och protokoll, och du kan själv gå in i filtret. Ett stort urval av filter finns.

    Välj valfritt område i partiet, högerklicka och "Använd som filter". Metod för nybörjare: mycket bekvämt, eftersom du inte behöver tappa hjärnan.

Vilka är huvudfiltren för att visa trafik?

Wireshark filtrera efter protokoll

Det räcker med att ange namnet på protokollet i filterraden och trycka på enter. Skärmen kommer att visa paket som tillhör det nödvändiga protokollet. Så filtret ser ut så här:

Om infångningsbufferten behöver filtreras av flera protokoll är det nödvändigt att lista alla önskade protokoll och separera dem med tecknet ||. Till exempel:

arp || http || icmp

Wireshark-filtrera efter IP-adress och filtrera efter MAC

Filtret kommer att skilja sig något beroende på trafikriktningen. Till exempel vill vi filtrera efter avsändarens IP-adress 50.116.24.50:

ip.src == 10.0.10.163

För mottagaren kommer filtret att se ut som ip.dst == x.x.x.x, och om vi vill se paket oavsett trafikriktning, skriv bara in:

ip.addr == 50.116.24.50

Om vi ​​behöver utesluta någon adress från urvalsfältet måste vi lägga till! =. Exempel:

ip.src! = 80.68.246.17

Om vi ​​analyserar trafik inom det lokala nätverket och känner till användarens MAC-adress, kan vi ange hans MAC-adress som ett Wireshark-filter, till exempel:

eth.addr == AA: BB: CC: DD: EE: FF

Wireshark filtrera efter portnummer

När vi analyserar trafik kan vi konfigurera ett filter efter portnumret genom vilket ett visst protokoll överför trafik. Numren på alla registrerade portar kan hittas Exempel:

Förutom med IP- och MAC-adresser kan vi separat filtrera efter mottagningsportar eller avgångsportar tcp. srcport och tcp. dstport. Förutom att ange portnummer ger Wireshark ett utmärkt tillfälle att filtrera bufferten efter flaggor i TCP-protokollet. Om vi ​​till exempel vill se TCP-paket med SYN-flaggan (upprättar en anslutning mellan enheter), anger vi i sökfältet:

Populära filter

Tabellen nedan listar de mest populära filtren för att visa innehållet i fångstbufferten:

Filter för visning

Beskrivning

Ett exempel på att skriva

Avsändarens eller mottagarens MAC-adress

eth.addr == 00: 1a: 6b: ce: fc: bb

Avsändarens MAC-adress

eth.src == 00: 1a: 6b: ce: fc: bb

Mottagarens MAC-adress

eth.dst == 00: 1a: 6b: ce: fc: bb

ARP-protokoll - destinations MAC-adress

arp.dst.hw_mac == 00: 1a: 6b: ce: fc: bb

arp.dst.proto_ipv4

ARP - Mottagarens IP version 4

arp.dst.proto_ipv4 == 10.10.10.10

ARP-protokoll - Avsändarens MAC-adress

arp.src.hw_mac == 00: 1a: 6b: ce: fc: bb

arp.src.proto_ipv4

ARP - Sender IP Version 4

arp.src.proto_ipv4 == 10.10.10.10

VLAN ID

IP version 4-adress för mottagaren eller avsändaren

ip.addr == 10.10.10.10

IP version 4 adress för mottagaren

ip.addr == 10.10.10.10

Avsändarens IP version 4

ip.src == 10.10.10.10

IP-protokoll (decimal)

IP version 6-adress för mottagaren eller avsändaren

ipv6.addr == 2001 :: 5

Avsändarens IP version 6

ipv6.addr == 2001 :: 5

IP version 6 adress för mottagaren

ipv6.dst == 2001 :: 5

Mottagarens eller sändarens TCP-port

Destination TCP-port

tcp.dstport == 80

Avsändarens TCP-port

tcp.srcport == 60234

UDP-destination eller avsändarport

Destination UDP-port

udp.dstport == 513

Avsändarens UDP-port

udp.srcport == 40000

vtp.vlan_info.vlan_name

vtp.vlan_info.vlan_name == TEST

bgp.originator_id

BGP ID (IPv4-adress)

bgp.originator_id == 192.168.10.15

Next Hop BGP (IPv4-adress)

bgp.next_hop == 192.168.10.15

RIP IPv4-adress

rip.ip == 200.0.2.0

OSPF Router ID

ospf.advrouter == 192.168.170.8

EIGRP autonoma systemnummer

HSRP virtuell IP-adress

hsrp.virt_ip == 192.168.23.250

Virtuell IP-adress med VRRP-protokoll

vrrp.ip_addr == 192.168.23.250

Wi-Fi-sändare eller mottagares MAC-adress

wlan.addr == 00: 1a: 6b: ce: fc: bb

Wi-Fi-avsändarens MAC-adress

wlan.sa == 00: 1a: 6b: ce: fc: bb

Wi-Fi destinations MAC-adress

wlan.da == 00: 1a: 6b: ce: fc: bb

Vilka filter använder du oftast i ditt arbete?

Nåväl, jag hoppas att de tidigare lektionerna har gått uppåt. Jag kommer att fortsätta vidare. Anta att vi tog tag i ett gäng paket, nu måste vi hitta viss data bland setet.

Jag påminner dig om att du kan ladda ner Wireshark

Först och främst, låt oss öppna ett exempel på trafik (eller ta våra paket). Förresten, här är ett bibliotek med trafikexempel, du kan säkert ladda ner det för studier: http://wiki.wireshark.org/SampleCaptures

Det finns förresten exempel på trafik från infekterade datorer, spår av trojaner och andra olyckor. + Jag har också en samling trafikfiler, om det är intressant - jag lägger upp det i arkivet, de väger lite. Man kan förresten själv infektera en dator med någon form av infektion (en virtuell maskin) och fånga trafik, det här tycker jag är väldigt intressant. Och om du redan har fångat ett virus på en riktig bil, kontakta proffsen: datorhjälp Kiev. Nåväl, låt oss köra vidare.

Så jag laddade ner ett exempel på http-trafik, det allra första på listan:

Vi öppnar sökrutan och ser:


Så här söker du efter paket med specifik data.

Nåväl, låt oss nu prata om skönheter, nämligen raskarska.

För att öppna färgguiden, välj Visa-> Färgregler från menyn

Detta fönster öppnas här:


Lägg till ett nytt element med knappen NYTT:


Till exempel ska jag nu skapa en höjdpunktsregel:

DNS-protokoll, Svarsnamn innehåller "google", skriv till filtret: dns.resp.name, välj "contains" och ange värdet "google". Jag tillämpar regeln, jag gör en blå bakgrund och ett svart typsnitt.


Vår regel är markerad med en understruken linje.

Introduktion

När man undersöker nätverksinteraktioner på nivån för enskilda paket, datagram, segment och meddelanden på programnivå, är det ofta nödvändigt att lösa trafikfiltreringsproblem. Kärnan i att tillämpa filter är att hitta och lyfta fram grupper, såväl som enskilda överföringsenheter som är av intresse för vidare analys. Denna funktion är extremt användbar i verktyg som är utformade för att avlyssna och studera nätverkstrafik (sniffer), och hjälper en systemadministratör eller informationssäkerhetsspecialist att hitta en bit användbar information i de intensiva informationsflödena i moderna nätverk.

Den öppna multiplattformen som behandlas i den här artikeln innehåller två filterundersystem: trafikavlyssningstid (fångningsfilter) och visningsfilter (visningsfilter). Som ni vet är det första delsystemet baserat på Pcap (Packet Capture) biblioteksregelspråk. Att "rensa" trafik under insamlingen minskar i synnerhet antalet uppfångade paket, vilket sparar utrymme i minnet eller på hårddisken. När det gäller visningsfiltren är de, eftersom de är en inbyggd Wireshark-funktion, designade för att "anpassa" redan uppfångad trafik i programmets grafiska gränssnitt.


Om filterspråk

Möjligheten att avlyssna trafik för övervaknings- och felsökningsändamål finns i nätverksstacken i alla operativsystem. Det utförs med hjälp av det så kallade paketfiltret, som är en del av systemkärnan och tar emot mottagna/sända paket från nätverkskortets drivrutin. De mest kända paketfiltren för Unix-liknande operativsystem är BPF (Berkeley Packet Filter) och LSF (Linux Socket Filter).

Så, ett urval av trafik enligt de angivna kriterierna i BPF implementerat i form av ett speciellt fallorienterat primitivt maskinspråk, för vilket paketfiltret faktiskt fungerar som tolk. Program på detta språk kan extrahera fragment från paket, jämföra mottagna data med givna värden, kontrollera enskilda bitar, utföra aritmetiska operationer och sedan acceptera eller kassera paket beroende på resultaten av alla dessa tester. "Lågnivå"-metoden är användbar för programmerare som utvecklar bibliotek med nätverksfunktioner och olika verktyg.

Vanliga användare tenderar att använda filterspråk på "hög nivå". Ett typiskt applikationsspråk som används i en sniffer för att beskriva trafikregler tillåter en att konstruera uttrycksprimitiver baserat på individuella meddelandefält i olika protokoll. I det här fallet kan förhållandet mellan fältvärdet och ett visst värde (lika, större, mindre), sammanträffandet av värdet med mallen eller helt enkelt närvaron av fältet i meddelandet fungera som ett kriterium. Primitiver kan kombineras till ett komplext uttryck med hjälp av logiska funktioner ("och", "eller", "inte", etc.).

I världen med öppen källkod är de facto standarden för ett filterspråk syntaxen som används i Pcap-biblioteket. Det är grunden inte bara för Wireshark, utan även för andra verktyg med öppen källkod, som till exempel tcpdump-konsolsniffaren, välkänd i Unix-världen. Egentligen är Pcap och tcpdump ett gemensamt projekt. Det populära Snort-intrångsdetekteringssystemet använder också Pcap-formatet för att definiera trafikfiltreringsregler i paketfångstläge.


Grunderna i Pcap-filter

Så, filtret inkluderar en eller flera primitiver... En primitiv består vanligtvis av ett objekt (nummer eller namn) och en eller flera specifikationer som definierar protokollet (eter, fddi, tr, wlan, ip, ip6, arp, rarp, decnet, tcp, udp), riktning (src, dst , någon och etc.) och objekttypen (värd, nät, port, etc.). Till exempel, för att fånga upp paket där den utgående IP-adressen är 192.168.56.102, bör du använda ett filter så här:

Ip src-värd 192.168.56.102

Eller för att spela in ARP-trafik som involverar värdar på nätverket 192.168.56.0:

Arp netto 192.168.56

Ofta använda kvalificerare är tabellerade (valfria komponenter betecknas -, alternativ - |, objekt -< >). En komplett lista finns i Pcap-dokumentationen (på Linux, tillgänglig i användarmanualen med kommandot man pcap-filter).

För att kombinera flera primitiver till ett uttryck används logiska funktioner: "och" (betecknas med nyckelordet och eller &&), "eller" (eller eller ||), "inte" (inte eller!). Till exempel, för att avlyssna trafik av SSH-protokollet för värden 192.168.56.102, är följande konstruktion lämplig:

Tcp-port 22 och värd 192.168.56.102

Använd parenteser för mycket komplexa uttryck. Till exempel:

Net 192.168.56.0/24 och (tcp-port 21 eller tcp-port 22)

Obegränsade Pcap-filter

För dem som är vana vid att leva efter sina egna regler ger Pcap-biblioteket slumpmässig tillgång till innehållet i nätverkspaket, med full kraft från OS-paketfiltret. Detta görs med en ganska enkel syntax:

Proto [exp: storlek]

där protoparametern är ett av de protokoll som stöds av Wireshark; exp är förskjutningen i byte från början av lagret som anges i proto, och storlek är antalet byte som ska hämtas.

Med tanke på att i primitiver är det möjligt att använda jämförelseoperationer i notationen för programmeringsspråket C (>, =,

Exemplet har dock bara metodologisk betydelse, eftersom detta protokoll lätt filtreras av standardregeln icmp.

Men att välja HTTP-förfrågningar gjorda med GET-metoden från trafik i farten är inte så lätt för Pcap. Och lösningen som föreslås i dokumentationen hävdar att den är original:

Port 80 och tcp [((tcp & 0xf0) >> 2): 4] = 0x47455420

Detta filter söker efter byte "G", "E", "T" och "" (hexvärden 47, 45, 54 och 20) omedelbart efter TCP-huvudet, vars längd beräknas med uttrycket " tcp & 0xf0) >> 2".

Som du kan se från det sista exemplet, förutom jämförelseoperationer, är binära operatorer C (+, -, *, /, &, |,>) också tillgängliga för användaren direkt i primitiverna.


Om visningsfilter

Om vi ​​pratar om skillnaderna visa filter från Pcap-filter, då förutom formatet för att skriva specifikationer (protokollfälten ser ut som. lika, le - mindre än eller lika) och binära operatorer (och, eller, xor, inte), samt stöd för delsträngar.

Att hämta delsträngar i fält liknar att extrahera godtyckliga byte från ett paket i Pcap-filter, men det har en mer flexibel syntax. Till exempel kommer ett uttryck som detta att kontrollera de första 4 byten i det ursprungliga MAC-adressfältet för en Ethernet-ram (motsvarande):

Eth.src [: 4] == 00: 1d: 72: 01

Naturligtvis är skillnaden mellan filter att Pcap-regler används vid avlyssning av trafik; i det grafiska gränssnittet konfigureras de i dialogrutan "Fångstalternativ" (förresten, det är möjligt att memorera ofta använda uttryck). Visningsfilter fungerar med paket som finns i listan i huvudprogramfönstret:

Wiresharks inbyggda filtreringsundersystem är mycket mer användarvänligt. I synnerhet finns det inget behov av att komma ihåg detaljerna i meddelandeformatet (offset, fältstorlekar, etc.). Det obligatoriska meddelandefältet för detta protokoll kan lätt hittas i Filter Expression-fönstret, och du kan också välja ett villkor och ett fördefinierat värde från listan för detta fält, eller ange ditt eget. För något av de många protokoll som stöds av Wireshark kan du konfigurera ett visningsfilter på detta enkla sätt.

Ett nästan akademiskt exempel på att bestämma när ett buffertspill av TCP-segment bestäms med hjälp av följande mappningsregel är mycket avslöjande:

Tcp.window_size == 0 && tcp.flags.reset! = 1

Slutsats

Wireshark-protokollanalysatorn har ett kraftfullt paketfiltreringssystem, som gör det möjligt att skapa komplexa regler med logiska funktioner och binära operatorer. Insamlingstidsfilter är standard och kommer att vara bekanta för användare som har använt Pcap-baserade nätverksverktyg som tcpdump. Reglerna för att visa paket är lätta att lära sig och använda, tack vare funktionerna i det grafiska gränssnittet för programmet i fråga. I allmänhet låter Wireshark-filtreringssystemets funktionalitet dig dra fördel av lågnivåpaketfiltret ganska effektivt.







2021 gtavrl.ru.