Hur man använder Wireshark på Windows. Wireshark: klassisk analys av nätverkspaket Wireshark hur man analyserar trafik

Wiresharkär en nätverkspaketanalysator. En nätverkspaketanalysator som fångar nätverkspaket och försöker visa paketdata så detaljerat som möjligt.

Du kan tänka dig en nätverkspaketsniffer som en mätenhet som används för att studera vad som händer inuti en nätverkskabel, precis som en voltmeter används av en elektriker för att studera vad som händer inuti en elkabel (men på en högre nivå förstås). ).

Vem använder WireShark och till vad?

Här är några exempel på varför människor använder Wireshark för:

  • Nätverksadministratörer använder det för att nätverksfelsökning
  • Nätverkssäkerhetsingenjörer använder det för att säkerhetskontroller
  • QA-ingenjörer använder det för att nätverksapplikationskontroller
  • Utvecklare använder det för implementering av felsökningsprotokoll
  • Folk använder det för studerar inre nätverksprotokoll

Egenskaper och funktionalitet

Nedan är några av Wiresharks många funktioner:

Men för att verkligen uppskatta dess kraft måste du börja använda den. Detta är vad vi kommer att titta på i följande artiklar.


Wireshark erbjuder ett enkelt men kraftfullt skärmfilter som låter dig skapa ganska komplexa filteruttryck. Du kan jämföra värden i batcher och även kombinera uttryck till mer specifika uttryck. Nedan finns specifika exempel och [...]

SYN-paketen som används för att ställa in en TCP-handskakningssession har ytterligare TCP-parametrar, såsom: SACK_PERM, TSval, TSecr. Dessa är alla så kallade högpresterande alternativ, som nu är utbredda eftersom alla […]

Varje rad i paketlistan motsvarar ett paket i fångstfilen. Om du väljer en rad i den här panelen kommer mer detaljerad information att visas i panelerna Batchinformation och Batchpaket. […]

Wireshark: hur man använder?

Hej kompisar! I den här artikeln ska jag försöka förklara och prata om de viktigaste sakerna du behöver veta när du använder Wireshark på Linux, och kommer att visa en analys av tre typer av nätverkstrafik. Den här manualen är även tillämplig för användning av Wireshark under Windows.

Om du är ny på informationssäkerhet och förstår mycket väl vad en sniffer (trafikanalysator) är, råder jag dig att läsa artikeln och först därefter läsa den här artikeln om hur du använder Wireshark.

Mycket populär och extremt skicklig nätverksprotokollanalysator, som utvecklades av Gerald Combs, började Wireshark i juni 2006 när Combs döpte om nätverksverktyget han också hade skapat, Ethereal, eftersom han hade bytt jobb och inte längre kunde använda det gamla namnet. Idag använder de flesta människor Wireshark, och Ethereal är historia.

Wireshark: den bästa sniffern

Du kanske undrar hur Wireshark skiljer sig från andra nätverksanalysatorer - förutom det faktum att det är gratis - och varför börjar vi inte bara främja användningen av tcpdump för paketfångning?

Den största fördelen med Wireshark är att det är en grafisk applikation. Att samla in data och kontrollera nätverkstrafik i användargränssnittet är en mycket bekväm sak, eftersom det låter dig förstå komplexa nätverksdata.

Hur använder man Wireshark?

För att en nybörjare ska förstå Wireshark måste de förstå nätverkstrafik. Om så är fallet är syftet med den här artikeln att förklara grunderna för TCP/IP för dig så att du kan dra de nödvändiga slutsatserna från nätverkstrafiken du analyserar.


TCP-paket och IP-paketformat.

Om du kör Wireshark som standardanvändare kommer du inte att kunna använda nätverksgränssnitt för att samla in data på grund av standard Unix-filbehörigheterna på nätverksgränssnitt. Det är bekvämare att köra Wireshark som root (sudo wireshark) när man samlar in data och som en vanlig användare att analysera data.

Alternativt kan du samla in nätverksdata med hjälp av kommandoradsverktyget tcpdump som root och sedan analysera det med Wireshark. Kom ihåg att insamling av data med Wireshark i ett upptaget nätverk kan göra din dator långsammare, eller ännu värre, hindra dig från att samla in den data du behöver eftersom Wireshark kräver mer systemresurser än ett kommandoradsprogram. I sådana fall är den mest rimliga lösningen för att samla in nätverkstrafikdata att använda tcpdump.

Fånga nätverksdata med Wireshark

Det enklaste sättet att börja fånga nätverkspaketdata är att välja det gränssnitt du behöver efter att ha startat Wireshark och klicka på Start. Wireshark kommer att visa nätverksdata på din skärm baserat på din nätverkstrafik. Observera att du kan välja mer än ett gränssnitt. Om du inte kan något om TCP, IP eller andra protokoll kan du tycka att resultatet är svårt att läsa och förstå.

För att stoppa datainsamlingsprocessen, välj Capture > Stop från menyn. Alternativt kan du klicka på den fjärde ikonen från vänster, den med den röda fyrkanten (förkortning av "Stoppa live datainsamling") i huvudverktygsfältet (observera att dess exakta plats kommer att variera beroende på vilken version av Wireshark du har) . Denna knapp kan endast tryckas in medan nätverksdata samlas in.

När du använder denna infångningsmetod kan du inte ändra Wiresharks standardinfångningsalternativ. Du kan se och ändra Capture Options genom att välja Capture > Options på menyn. Här kan du välja nätverksgränssnitt, visa din IP-adress, tillämpa datainsamlingsfilter, ställa in ditt nätverkskort för att ta emot alla nätverkspaket och spara insamlad data i en eller flera filer. Du kan till och med säga åt den att sluta fånga paket efter att ha nått ett visst antal nätverkspaket, eller en viss tid eller en viss mängd data (i byte).

Som standard sparar inte Wireshark den insamlade informationen, men du kan alltid spara den senare. Man tror allmänt att det är bäst att spara och sedan undersöka nätverkspaket, om du inte har någon speciell anledning att göra något annat.

Wireshark låter dig läsa och analysera redan insamlad nätverksdata från ett stort antal filformat, inklusive tcpdump, libpcap, Suns snoop, HP:s nettl, K12 textfiler, etc. Kort sagt, Wireshark kan läsa nästan alla format av insamlad nätverksdata. På samma sätt låter Wireshark dig spara insamlad data i olika format. Du kan till och med använda Wireshark för att konvertera en fil från ett format till ett annat.

Du kan också exportera en befintlig fil som en vanlig textfil från Arkiv-menyn. Det här alternativet är huvudsakligen avsett för att manuellt bearbeta nätverksdata eller lägga in det i ett annat program.

Det finns ett alternativ att skriva ut dina paket. Jag har aldrig använt det i verkligheten, men i utbildningssyfte kan det vara till stor hjälp att skriva ut paketen och deras fullständiga innehåll.

Wireshark Display Filter

Om fångstfilter används när nätverksdata samlas in, tar Wireshark inte hänsyn till nätverkstrafik som inte matchar filtret; medan visningsfilter tillämpas efter att data har samlats in och "döljer" nätverkstrafik utan att radera den. Du kan alltid inaktivera Display-filtret och få tillbaka dina dolda data.

Visningsfilter anses i princip vara mer användbara och mångsidiga än datainsamlingsfilter eftersom det är osannolikt att du i förväg vet vilken information du kommer att samla in eller bestämmer dig för att undersöka. Men att använda filter när du samlar in data sparar tid och diskutrymme, vilket är den främsta anledningen till att du använder dem.

Wireshark framhäver ett syntaktiskt korrekt filter med en ljusgrön bakgrund. Om syntaxen innehåller fel blir bakgrunden rosa.

Visningsfilter stöder jämförelseoperatorer och logiska operatorer. Visa filter http.response.code


Tre paket (SYN, SYN+ACK och ACK) med trestegs TCP-anslutning

404 && ip.addr == 192.168.1.1 visar trafik som antingen kommer från IP-adress 192.168.1.1 eller går till IP-adress 192.168.1.1, som också har en 404 (hittad ej) HTTP-svarskod. Filtret!boo1p &&!ip &&!agr utesluter BOOTP-, IP- och ARP-trafik från resultatet. Filtret eth.addr == 01:23:45:67:89:ab && tcp.port == 25 visar trafik som kommer från eller till nätverksenheten med MAC-adress 01:23:45:67:89:ab, vilket används i inkommande och utgående anslutningar är TCP-portnumret 25.

Kom ihåg att visningsfilter inte magiskt löser problem. När de används på rätt sätt är dessa extremt användbara verktyg, men du måste fortfarande tolka resultaten, hitta problemet och hitta rätt lösning själv.

Artikeln fortsätter på nästa sida. För att gå till nästa sida, klicka på knapp 2 som finns under knapparna för det sociala nätverket.

Wireshark är en kraftfull nätverksanalysator som kan användas för att analysera trafiken som passerar genom din dators nätverksgränssnitt. Du kan behöva den 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 rätt paket. I den här handledningen kommer vi att titta på hur du använder Wireshark för att analysera trafik. Nyligen började utvecklarna arbeta på den andra grenen av Wireshark 2.0-programmet, många förändringar och förbättringar gjordes i det, speciellt för gränssnittet. Detta är vad vi kommer att använda i den här artikeln.

Innan du går vidare till att överväga sätt att analysera trafik måste du överväga vilka funktioner programmet stöder mer i detalj, vilka protokoll det kan fungera med och vad det kan 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äs från en fil;
  • Följande insamlingsgränssnitt stöds: Ethernet, IEEE 802.11, PPP och lokala virtuella gränssnitt;
  • Paket kan filtreras baserat på 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;
  • Dekryptering av HTTPS-trafik stöds om ett certifikat är tillgängligt;
  • Dekryptering av WEP- och WPA-trafik för trådlösa nätverk med nyckel och handskakning;
  • Visar 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 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 den inte att kunna analysera nätverkspaket. Detta kan göras från huvudmenyn eller via terminalen med kommandot för KDE:

Och för Gnome/Unity:

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 analys, välj ett nätverksgränssnitt, till exempel eth0, och klicka på knappen Start.

Efter detta öppnas följande 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;
  • Lista över paket- sedan visas flödet av nätverkspaket som du kommer att analysera;
  • paket innehåll- precis nedanför är innehållet i det valda paketet, det är indelat i kategorier beroende på transportnivå;
  • Verklig prestation- Längst ner visas förpackningens innehåll i verklig form, såväl som i HEX-form.

Du kan klicka på vilket paket som helst för att analysera dess innehåll:

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

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

Wireshark filter

Att manuellt gå igenom paket för att hitta de du behöver är väldigt obekvämt, speciellt med en aktiv tråd. Därför är det bättre att använda filter för denna uppgift. Det finns en speciell rad under menyn för att ange filter. Du kan klicka Uttryck för att öppna filterdesignern, men det finns många av dem, så vi ska titta på de mest grundläggande:

  • ip.dst- mål-IP-adress;
  • ip.src- avsändarens IP-adress;
  • ip.addr- IP för avsändaren eller mottagaren;
  • ip.proto- protokoll;
  • tcp.dstport- Bestämmelsehamn.
  • tcp.srcport- avsändarport;
  • ip.ttl- TTL-filter, bestämmer nätverksavståndet;
  • http.request_uri- den begärda webbadressen.

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

  • == - lika med;
  • != - inte jämnlikt;
  • < - 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 förstå alla tecken på relationer.

Låt oss först filtrera alla paket som skickas till 194.67.215. Skriv en sträng i filterfältet och klicka på 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å de som tas emot 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 överförda stora filer:

http.content_length > 5000

Genom att filtrera innehållstypen kan vi välja alla bilder som har laddats upp; Låt oss analysera Wireshark-trafik, paket som innehåller ordbilden:

http.content_type innehåller bild

För att rensa filtret kan du trycka på knappen Klar. Det händer att du inte alltid känner till all information som behövs för filtrering, utan bara vill utforska 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 (time to live) 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:

På samma sätt kan du skapa ett filter baserat på vilket fält som helst. Välj den och ta fram snabbmenyn och klicka sedan Applicera som filter eller Förbered som filter, välj sedan 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, infogas i filterfältet:

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

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.

Ett fönster öppnas 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.0 för att upptäcka problem i ditt nätverk. För att göra detta finns det en rund knapp i det nedre vänstra hörnet av fönstret 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å vad användare 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 stoppa trafikfångst med den röda fyrkanten på panelen. Öppna sedan menyn Fil -> Exportera objekt -> HTTP:

Introduktion

Problem uppstår ibland i driften av ett datornätverk och nätverksstacken av noder, vars orsaker är svåra att upptäcka av välkända statistikinsamlingsverktyg (som netstat) och standardapplikationer baserade på ICMP-protokollet (ping, traceroute/ tracert, etc.). I sådana fall, för att diagnostisera problem, är det ofta nödvändigt att använda mer specifika verktyg som låter dig visa (lyssna på) nätverkstrafik och analysera den på nivån för överföringsenheter för individuella protokoll ( "nosar", sniffar).

Nätverksprotokollanalysatorer eller "sniffer"är extremt användbara verktyg för att studera beteendet hos nätverksnoder och identifiera nätverksproblem. Naturligtvis, som alla verktyg, till exempel en vass kniv, kan en sniffer vara både en välsignelse i händerna på en systemadministratör eller informationssäkerhetsingenjör och ett brottsvapen i händerna på en dataangripare.

Sådan specialiserad programvara använder vanligtvis "promiskuöst" (promiscuos) driftsätt för nätverksadapternövervaka dator (särskilt för att fånga upp trafik från ett nätverkssegment, switchport eller router). Som ni vet är kärnan i detta läge att bearbeta alla ramar som kommer till gränssnittet, och inte bara de som är avsedda för MAC-adressen för nätverkskortet och broadcast, som händer i normalt läge.

Produkten som diskuteras i den här artikeln Wiresharkär ett välkänt verktyg för att avlyssna och interaktivt analysera nätverkstrafik, faktiskt en standard inom industri och utbildning. TILL Viktiga funktioner i Wireshark kan inkludera: flera plattformar (Windows, Linux, Mac OS, FreeBSD, Solaris, etc.); förmåga att analysera hundratals olika protokoll; stöd för både grafiskt driftläge och kommandoradsgränssnitt (tshark-verktyget); kraftfullt trafikfiltersystem; exportera arbetsresultat till XML, PostScript, CSV-format, etc.

Ett annat viktigt faktum är att Wireshark är programvara med öppen källkod. distribueras under GNU GPLv2-licensen, det vill säga du är fri att använda denna produkt som du vill.

Installerar Wireshark

Den senaste versionen av Wireshark för operativsystemen Windows och OS X, samt källkoden, är tillgänglig ladda ner från projektets webbplats. För Linux-distributioner och BSD-system är den här produkten vanligtvis tillgänglig i standard- eller ytterligare förråd. Skärmbilderna som publiceras i den här artikeln är hämtade från version 1.6.2 av Wireshark för Windows. Tidigare versioner av programmet, som finns i arkiven för Unix-liknande operativsystem, kan också användas framgångsrikt, eftersom Wireshark länge har varit en stabil och funktionell produkt.

Wireshark är baserat på Pcap-biblioteket (Packet Capture)., som tillhandahåller ett applikationsprogrammeringsgränssnitt för att implementera lågnivåfunktioner för interaktion med nätverksgränssnitt (särskilt avlyssning och generering av godtyckliga överföringsenheter av nätverksprotokoll och lokala nätverksprotokoll). Pcap-biblioteket är också grunden för så välkända nätverksverktyg som tcpdump, snort, nmap, kismet, etc. För Unix-liknande system finns Pcap vanligtvis i standardprogramvaruförråd. För Windows-familjen av operativsystem finns det en version av Pcap som heter Winpcap. Du kan ladda ner från projektets webbplats. Detta är dock vanligtvis inte nödvändigt, eftersom Winpcap-biblioteket ingår i installationspaketet Wireshark för Windows.

Processen att installera programmet är inte svårt för något operativsystem, naturligtvis anpassat för detaljerna för plattformen du använder. Till exempel är Wireshark på Debian/Ubuntu installerat så att oprivilegierade användare som standard inte har rätt att avlyssna paket, så programmet måste startas med hjälp av sudo användar-ID-mekanismen (eller utföra nödvändiga manipulationer enligt dokumentationen av standarden DEB-paket).

Grunderna för att arbeta med Wireshark

Wiresharks användargränssnitt är byggt på GTK+-biblioteket(GIMP Toolkit). Huvudprogramfönstret innehåller följande element: meny, verktygsfält och visningsfilter, en lista över paket, en detaljerad beskrivning av det valda paketet, visning av paketbytes (i hexadecimal och text) och en statusrad:

Det bör noteras att programmets användargränssnitt är väldesignat, ganska ergonomiskt och ganska intuitivt, vilket gör att användaren kan koncentrera sig på att studera nätverksprocesser utan att distraheras av bagateller. Dessutom beskrivs alla funktioner och detaljer för att använda Wireshark i detalj i användarmanual. Därför fokuserar den här artikeln på funktionaliteten hos produkten i fråga, dess funktioner i jämförelse med andra sniffers, till exempel med det välkända konsolverktyget tcpdump.

Så, Wiresharks ergonomi återspeglar ett mångskiktigt tillvägagångssätt för att tillhandahålla nätverksinteraktioner. Allt görs på ett sådant sätt att användaren, genom att välja ett nätverkspaket från listan, har möjlighet att se alla rubriker (lager), samt fältvärdena för varje lager i nätverkspaketet, med start från kl. omslaget - Ethernet-ramen, själva IP-huvudet, transportlagerhuvudet och applikationsdataprotokollet som finns i paketet.

Rådata för bearbetning kan erhållas av Wireshark i realtid eller importeras från en nätverkstrafikdumpfil, och flera dumpar för analysuppgifter kan kombineras till en i farten.

Problemet med att hitta de nödvändiga paketen i stora volymer av avlyssnad trafik är löst två typer av filter: trafikinsamling (fångningsfilter) och honom visa filter. Wireshark samlingsfilter är baserade på Pcap bibliotekets filterspråk, dvs. Syntaxen i det här fallet liknar syntaxen för tcpdump-verktyget. Ett filter är en serie primitiver kombinerade, om nödvändigt, med logiska funktioner (och, eller, inte). Ofta använda filter kan sparas i profil för återanvändning.

Bilden visar profilen för Wireshark samlingsfilter:

Wireshark Network Packet Analyzer har också sin egen enkla men funktionsrik visa filterspråk. Värdet för varje fält i pakethuvudet kan användas som filtreringskriterier(till exempel är ip.src käll-IP-adressen i nätverkspaketet, frame.len är längden på Ethernet-ramen, etc.). Med hjälp av jämförelseoperationer kan fältvärden jämföras med angivna värden(till exempel frame.len och kombinera flera uttryck med logiska operatorer (till exempel: ip.src==10.0.0.5 och tcp.flags.fin). En bra assistent i processen att konstruera uttryck är fönster för att ställa in visningsregler (Filter Expression):

Nätverkspaketanalysverktyg

Medan anslutningslösa protokoll kan studeras genom att helt enkelt titta på individuella paket och beräkna statistik, förenklas studier av anslutningsorienterade protokolls funktion avsevärt genom tillgången på ytterligare möjligheter för att analysera framstegen för nätverksinteraktioner.

En av de användbara funktionerna i Wireshark är "Följ TCP Stream"(bokstavligen "Följ TCP-ström") analysundermeny "Analysera", som låter dig extrahera applikationsprotokolldata från TCP-segmenten i strömmen som det valda paketet tillhör:

Ett annat intressant objekt i analysundermenyn är "Expert info sammansatt", som öppnar ett fönster i det inbyggda Wireshark-expertsystemet, som kommer att försöka upptäcka fel och kommentarer i paket, automatiskt välja enskilda anslutningar från dumpen och karakterisera dem. Denna modul är under utveckling och förbättras från version till version av programmet.

I undermenyn för statistik "Statistik" alternativ har samlats in som låter dig beräkna alla typer av statistiska egenskaper för trafiken som studeras, bygga grafer över intensiteten i nätverksflöden, analysera svarstiden för tjänster, etc. Ja, poäng "Protokollhierarki" visar statistik i form av en hierarkisk lista över protokoll som indikerar procentandelen av den totala trafiken, antalet paket och bytes som överförs av ett givet protokoll.

Fungera "Slutpunkt" tillhandahåller statistik på flera nivåer om inkommande/utgående trafik för varje nod. Paragraf "Konversationer"(bokstavligen "konversationer") låter dig bestämma trafikvolymerna för olika protokoll (länk-, nätverks- och transportlager i den öppna systemets sammankopplingsmodell) som överförs mellan noder som interagerar med varandra. Fungera "Paketlängder" visar fördelningen av paket efter deras längd.

Paragraf "Flödesdiagram..." representerar paketflöden grafiskt. I det här fallet, när du väljer ett element på diagrammet, blir motsvarande paket i listan i huvudprogramfönstret aktivt:

En separat undermeny i de senaste versionerna av Wireshark är tillägnad IP-telefoni. I undermenyn "Verktyg" finns ett objekt "ACL-regler för brandvägg", kommer att försöka skapa en brandväggsregel för det valda paketet (version 1.6.x stöder Cisco IOS, IP Filter, IPFirewall, Netfilter, Packet Filter och Windows Firewall-format).

Programmet har även en inbyggd lättviktstolk Lua programmeringsspråk. Med Lua kan du skapa dina egna protokollavkodare och händelsehanterare i Wireshark.

Istället för en slutsats

Wireshark-nätverkspaketanalysatorn är ett exempel på en Opensource-produkt som är framgångsrik både inom Unix/Linux-plattformen och populär bland Windows- och Mac OS X-användare Naturligtvis, förutom Wireshark, finns det tunga, omfattande intelligenta lösningar på området av nätverkstrafikforskning, vars funktionalitet är mycket bredare. Men för det första kostar de mycket pengar, och för det andra är de svåra att lära sig och driva; för det tredje måste du förstå att allt inte kan automatiseras och inget expertsystem kan ersätta en bra specialist. Så om du står inför uppgifter som kräver att analysera nätverkstrafik, då är Wireshark verktyget för dig. Och fans av kommandoraden kan använda verktyget tshark - konsolversion av Wireshark.

Ibland när man använder Internet uppstår situationer där trafikläckor eller oväntad förbrukning av systemresurser uppstår. För att snabbt analysera och upptäcka källan till problemet används speciella nätverksverktyg. En av dem, WireShark, kommer att diskuteras i artikeln.

allmän information

Innan du använder WireShark måste du bekanta dig med dess omfattning, funktionalitet och möjligheter. Kort sagt: programmet låter dig fånga paket i realtid i trådbundna och trådlösa nätverksanslutningar. Används i Ethernet, IEEE 802.11, PPP och liknande protokoll. Du kan också använda VoIP-samtalstrafikavlyssning.

Programmet distribueras under GNU GPL-licensen, vilket betyder att det är gratis och öppen källkod. Du kan köra den på många Linux-distributioner, MacOS, och det finns också en version för Windows-operativsystemet.

Hur använder man WireShark?

För det första bör du först installera det på systemet. Eftersom en av de mest använda Linux-distributionerna är Ubuntu, kommer alla exempel att visas i den.

För att installera, skriv bara kommandot i konsolen:

sudo apt-get installera wireshark

Efter detta kommer programmet att visas i huvudmenyn. Du kan starta den därifrån. Men det är bättre att göra detta från terminalen, eftersom hon behöver superanvändarrättigheter. Detta kan göras så här:

Utseende

Programmet har ett bekvämt grafiskt gränssnitt. Användaren kommer att se ett vänligt fönster uppdelat i 3 delar. Den första är direkt relaterad till infångning, den andra handlar om att öppna filer och prover, och den tredje är hjälp och support.

Capture-blocket innehåller en lista över nätverksgränssnitt som är tillgängliga för infångning. När du till exempel väljer eth0 och klickar på Start-knappen kommer avlyssningsprocessen att starta.

Fönstret med avlyssnade data är också logiskt uppdelat i flera delar. Längst upp finns en kontrollpanel med olika element. Nedan följer en lista över paket. Den presenteras i form av en tabell. Här kan du se paketets sekvensnummer, tidpunkten för det avlyssnade, sändnings- och mottagningsadressen. Du kan också ta bort data om använda protokoll, längd och annan användbar information.

Nedanför listan finns ett fönster med innehållet i tekniska data för det valda paketet. Och ännu lägre finns en display i hexadecimal form.

Varje vy kan utökas till ett större fönster för enklare läsning av data.

Använda filter

Medan programmet körs kommer dussintals eller till och med hundratals paket alltid att passera framför användaren. Att sålla bort dem manuellt är ganska svårt och tidskrävande. Därför rekommenderar de officiella WireShark-instruktionerna att du använder filter.

Det finns ett speciellt fält för dem i programfönstret - Filter. För att konfigurera filtret mer exakt finns det en Uttrycksknapp.

Men i de flesta fall räcker en standarduppsättning filter:

  • ip.dst — paketdestinations-ip-adress;
  • ip.src — avsändaradress;
  • ip.addr - vilken ip som helst;
  • ip.proto - protokoll.

Använda filter i WireShark - instruktioner

För att prova hur programmet fungerar med filter måste du ange ett visst kommando. Till exempel kommer en sådan uppsättning - ip.dst == 172.217.23.131 - att visa alla flygande paket till Googles webbplats. För att se all trafik - både inkommande och utgående - kan du kombinera två formler - ip.dst == 172.217.23.131 || ip.src == 172.217.23.131. Det visade sig alltså använda två villkor på en rad samtidigt.

Du kan använda andra villkor, till exempel ip.ttl< 10. Данная команда выведет все пакеты с длительностью жизни меньше 10. Чтобы выбрать данные по их размеру, можно применить такой подход — http.content_length > 5000.

Ytterligare egenskaper

För enkelhetens skull har WireShark ett sätt att snabbt välja paketparametrar som det fält som ska analyseras. I ett fält med tekniska data kan du till exempel högerklicka på önskat objekt och välja Använd som kolumn. Vad innebär det att överföra det till fältområdet som en kolumn.

På samma sätt kan du välja vilken parameter som helst som filter. För att göra detta finns det ett Använd som filter i snabbmenyn.

Separat session

Du kan använda WireShark som en monitor mellan två nätverksnoder, till exempel en användare och en server. För att göra detta, välj det paket du är intresserad av, ta fram snabbmenyn och klicka på Följ TCP-ström. Ett nytt fönster kommer att visa hela loggen för utbytet mellan de två noderna.

Diagnostik

WireShark har ett separat verktyg för att analysera nätverksproblem. Det heter Expertverktyg. Du hittar den i det nedre vänstra hörnet, i form av en rund ikon. Om du klickar på den öppnas ett nytt fönster med flera flikar - Fel, Varningar och andra. Med deras hjälp kan du analysera i vilka noder fel uppstår, paket inte kommer fram och upptäcka andra problem med nätverket.

Rösttrafik

Som redan nämnts kan WireShark också avlyssna rösttrafik. En hel Telefoni-meny är tillägnad detta. Detta kan användas för att hitta problem i VoIP och åtgärda dem snabbt.

Alternativet VoIP-samtal i Telefoni-menyn låter dig se avslutade samtal och lyssna på dem.

Exportera objekt

Detta är förmodligen den mest intressanta funktionen i programmet. Det låter dig använda WireShark som en interceptor av filer som överförs över nätverket. För att göra detta måste du stoppa avlyssningsprocessen och exportera HTTP-objekt till Arkiv-menyn. Fönstret som öppnas visar en lista över alla filer som överförts under sessionen, som kan sparas på en lämplig plats.

Till sist

Tyvärr kommer det att vara svårt att hitta den nuvarande versionen av WireShark på ryska på Internet. Den mest tillgängliga och ofta använda är på engelska.

Detsamma gäller med detaljerade instruktioner för WireShark på ryska. Den officiella från utvecklaren presenteras på engelska. Det finns många korta, korta WireShark-tutorials online för nybörjare.

Men för dem som har arbetat inom IT-området under lång tid kommer förståelsen av programmet inte att innebära några särskilda svårigheter. Och stora möjligheter och rik funktionalitet kommer att lysa upp alla svårigheter att lära sig.

Det är värt att notera att i vissa länder kan det vara olagligt att använda en sniffer som WireShark.