12 Network Packet Analyzers til Sysadmin og sikkerhedsanalytikere

Dit netværk er rygraden i din forretningsdrift. Sørg for, at du ved, hvad der foregår dybt inde i det.

På mange måder har landskabet for digitale virksomheder oplevet en revolution eller to. Hvad startede som simpelt CGI scripts skrevet i Perl er nu blomstret op i grupperede implementeringer, der kører fuldautomatisk på Kubernetes og andre orkestreringsrammer (beklager den tunge jargon – jeg finder det slet ikke op; det er bare sådan, tingene er i disse dage!).

En typisk containeriseret, distribueret moderne webapplikation (kilde: medium.com)

Men jeg kan ikke lade være med at smile ved tanken om, at det grundlæggende stadig er det samme, som det var i 1970’erne.

Alt, hvad vi har, er abstraktioner på abstraktioner understøttet af hårde, fysiske kabler, der danner netværket (okay, der er virtuelle netværk, der er godt, men du forstår ideen). Hvis vi ønsker at blive fancy, kan vi opdele netværket i lag i henhold til OSI-modellen, men alt sagt og gjort, vi har altid, altid at gøre med TCP/IP protokoller (advarsel, tung læsning forude!), Pings, routere, som alle har ét mål til fælles – transmission af datapakker.

Så hvad er en netværkspakke?

Uanset hvad vi laver – chatter, streamer video, spil, surfer, køber ting – er det i bund og grund en udveksling af datapakker mellem to computere (netværk). En “pakke” er den mindste enhed af information, der flyder i et netværk (eller mellem netværk), og der er en veldefineret metode til at konstruere og verificere netværkspakker (ud over omfanget af denne artikel, men hvis du føler dig eventyrlysten, her er mere).

Pakkeflow i et netværk (kilde: training.ukdw.ac.id)

I simplere termer repræsenterer hver pakke et led i kæden og transmitteres korrekt ved kilden og valideres på destinationen. Selvom en enkelt pakke kommer ud eller bestiller, suspenderes processen, indtil alle pakker i den rigtige rækkefølge er modtaget, og først derefter sættes de sammen til de data, de oprindeligt repræsenterede (f.eks. et billede).

Nu hvor vi forstår, hvad et netværk er, bliver det til at forstå, hvad en netværksanalysator gør. Det er et værktøj, der giver dig mulighed for at kigge ind i individuelle pakker på dit netværk.

Men hvorfor skulle du have lyst til den ballade? Lad os diskutere det næste.

Hvorfor skal vi analysere pakker?

Det ser ud til, at pakker stort set er de grundlæggende byggesten i et netværksdataflow, ligesom atomer er grundlaget for alt stof (ja, jeg ved det, det er ikke sande fundamentale partikler, men det er en god nok analogi til vores formål) . Og når det kommer til at analysere materialer eller gasser, bekymrer vi os aldrig om, hvad et individuelt atom gør; så hvorfor bekymre sig om en enkelt netværkspakke på individuelt niveau? Hvad kan vi vide andet, end vi allerede ved?

Det er svært at sælge vigtigheden af ​​analyse på pakkeniveau, når du ikke er blevet bidt i ryggen før, men jeg prøver.

Pakkeanalyse betyder, at du bliver snavsede og rækker ned i selve VVS for at finde ud af noget. Generelt skal du analysere netværkspakker, når alt andet er fejlet. Typisk inkluderer dette tilsyneladende håbløse scenarier som følger:

  • Uforklarligt tab af hemmelige data på trods af intet åbenlyst brud
  • Diagnosticering af langsomme applikationer, når der ikke ser ud til at være nogen beviser overhovedet
  • Sørg for, at din computer/netværk ikke er blevet kompromitteret
  • Beviser eller modbeviser, at en angriber ikke er det piggybacking ud af dit WiFi
  • At finde ud af, hvorfor din server er flaskehalsen på trods af lav trafik

Alt i alt falder pakkeanalyse under visse, hårde typer af beviser. Hvis du ved, hvordan du udfører pakkeanalyse og har et øjebliksbillede, kan du redde dig selv fra uretmæssigt at blive anklaget for et hack eller blot blive beskyldt som en inkompetent udvikler eller netværksadministrator.

Det hele handler om hjernen! (kilde: dailydot.com)

Med hensyn til en rigtig historie, tror jeg, at denne kommentar til blogindlægget er fundet her er exceptionel (gengivet her for en sikkerheds skyld):

En applikation, der var kritisk for min virksomhed, udviste ydeevneproblemer, faldt på dens ansigt i kundeimplementeringer. Det var en aktieprisapplikation, der blev brugt i spidsen for ticker-fabrikker i finansielle virksomheder over hele verden. Hvis du havde en 401(k) omkring 2000, afhang det sandsynligvis af denne applikation. Jeg lavede analyser af den slags, du har beskrevet, specifikt TCP-adfærd. Jeg udpegede problemet som værende i OS-leverandørens implementering af TCP. Den buggy-adfærd var, at når afsenderstakken gik i overbelastningskontrol, blev den aldrig genoprettet. Dette resulterede i et komisk lille sendevindue, nogle gange kun et par multipla af MSS.

  Sådan opsætter du et smart garage

Det tog et stykke tid at kæmpe med kontoadministratorer og udviklersupportfolk hos OS-leverandøren, som ikke forstod problemet, min forklaring, eller at problemet *ikke* kunne være i applikationen, fordi applikationen er lykkeligt uvidende om TCP-maskineri. Det var som at tale til en væg. Jeg startede på plads et med hvert telefonmøde. Til sidst kom jeg i telefon med en fyr, som jeg kunne få en god diskussion med. Det viser sig, at han lagde RFC1323-udvidelserne i stakken! Næste dag havde jeg en patch til OS i mine hænder, og produktet fungerede perfekt fra det tidspunkt og frem.

Udvikleren forklarede, at der var en fejl, som forårsagede, at indgående ACK’er *med nyttelast* blev fejlkategoriseret som DUPACK’er, når stakken var i overbelastningskontrol.

Dette ville aldrig ske med halv-dupleks-applikationer som HTTP, men den applikation, jeg understøttede, sendte data tovejs på stikket til enhver tid.

Jeg havde ikke et væld af støtte fra ledelsen på det tidspunkt (min leder råbte endda af mig for “altid at ville bruge en sniffer” til at løse problemer), og ingen andre end mig så på OS-leverandørens TCP-implementering som kilden af problemet. At bryde rettelsen fra OS-leverandøren alene gjorde denne sejr særlig sød, skaffede mig et væld af kapital til at gøre mine egne ting og førte til, at de mest interessante problemer dukkede op på mit skrivebord.

I tilfælde af at du ikke havde lyst til at læse den tekstplade igennem, eller hvis det ikke gav meget mening, stod denne herre over for præstationsproblemer, som blev skyld i hans ansøgning, og ledelsen ydede som forventet ingen støtte . Det var kun en grundig pakkeanalyse, der viste, at problemet ikke lå i applikationen, men i hvordan operativsystemet håndterede netværksprotokollen!

Rettelsen var ikke en justering af applikationen, men en patch fra operativsystemudviklerne! 😮

Dreng, oh, dreng. . . Uden analyse på pakkeniveau, hvor tror du denne person ville være? Sandsynligvis uden arbejde. Hvis dette ikke overbeviser dig om vigtigheden af ​​pakkeanalyse (også kaldet packet sniffing), ved jeg ikke hvad der vil. 🙂

Nu hvor du ved, at pakkeanalyse er en supermagt, har jeg gode nyheder: det er ikke svært at gøre det hele!

Takket være kraftfulde, men brugervenlige værktøjer til pakkesnifning, kan det være lige så nemt at indhente information fra analysen på pakkeniveau som at læse et salgsdashboard. Når det er sagt, har du brug for lidt mere end en viden på overfladeniveau om, hvad der foregår inde i et netværk. Men så, igen, er der ingen raketvidenskab her, ingen snoet logik at mestre – bare almindelig sund fornuft.

Hvis du begynder at læse dokumentationen for et af disse værktøjer, mens du bruger dem på dit netværk, vil du snart blive en ekspert. 😀

Wireshark

Wireshark er et gammelt projekt (det startede helt tilbage i 1998), der stort set er industristandarden, når det kommer til at dykke dybt ned i netværk. Det er imponerende, når man tænker på, at det udelukkende er en frivilligt drevet organisation, bakket op af nogle generøse sponsorer. Wireshark forbliver open source (ikke på GitHub, men koden kan findes her) og har endda en teknologi konference til sit navn!

Blandt de mange funktioner i Wireshark er:

  • Understøttelse af hundredvis af netværksprotokoller.
  • Kompatibel med mange filformater (tcpdump (libpcap), Pcap NG, Catapult DCT2000, Cisco Secure IDS iplog, Microsoft Network Monitor, Network General Sniffer® (komprimeret og ukomprimeret), Sniffer® Pro og NetXray® og så videre).
  • Kør på stort set alle platforme derude (Linux, Windows, macOS, Solaris, FreeBSD og mere).
  • Live datalæsning fra blandt andet Ethernet, IEEE 802.11, PPP/HDLC, ATM, Bluetooth, USB, Token Ring.
  • On-the-fly gzip-dekompression.
  • Masser af dekrypteringsprotokoller understøttet (WPA/WPA2, SNMPv3 osv.)
  • Omfattende VoIP-analyse
  • Farveregler for hurtigere visuel scanning

Tjek dette fantastiske online kursus ud lære dig at mestre Wireshark.

Leder du efter Wireshark i din terminal? Ja, prøv Termshark

tcpdump

Hvis du er old school (læs hardcore kommandolinjejunkie), tcpdump er for dig.

Det er endnu et af de ikoniske Linux-værktøjer (som curl), der forbliver lige så relevante som nogensinde, så meget, at næsten alle andre “fanciere” værktøjer bygger på det. Som jeg sagde før, er der ikke et grafisk miljø, men værktøjet kompenserer mere end for det.

  Sådan får du mest muligt ud af Chrome-bogmærkelinjen

Men at installere det kan være en smerte; mens tcpdump leveres sammen med de fleste moderne Linux-distributioner, hvis din ikke gør det, vil du ende med at skulle bygge fra kilden.

tcpdump-kommandoer er korte og enkle, rettet mod at løse et bestemt problem som:

  • Viser alle tilgængelige grænseflader
  • Optager kun en af ​​grænsefladerne
  • Gemmer optagne pakker til fil
  • Optager kun mislykkede pakker

. . . og så videre.

Hvis dine behov er enkle, og du skal køre en hurtig scanning, kan tcpdump være en god mulighed at overveje (især hvis du skriver tcpdump og finder ud af, at det allerede er installeret!). Tjek dette indlæg for nogle eksempler på tcpdump-kommandoer i realtid.

Tproxy

Tproxy er et simpelt, open source-kommandolinjeværktøj til proxy TCP-forbindelser over netværket. Tproxy er skrevet i Go-programmeringssproget og er et Go-kommandolinjeværktøj og pakket som en Go-binær, så den er tilgængelig på alle moderne Linux- og macOS-platforme.

Nedenstående billede viser kommandolinjen til at overvåge Mysql-forbindelser:

Dens primære anvendelse er at proxy HTTP-forbindelser og inspicere indholdet af HTTP-anmodningen og svarene. Det kan også bruges til proxy andre protokoller, såsom SOCKS eller TCP. Den kan bruges til at proxy TCP-forbindelser mellem to værter eller til at analysere trafikken på en live-forbindelse. Det er nyttigt til fejlretning og test af applikationer, der bruger TCP som en transportprotokol, og til opbygning af TCP-proxytjenester.

Den blev skrevet med det formål at give en brugervenlig grænseflade til tcpdump-kommandolinjeværktøjet, så brugerne kan proxy TCP-forbindelser og udføre andre avancerede netværksanalyser uden at skulle forstå den underliggende TCP-protokol.

Nedenfor kommandolinjen viser gRPC-forbindelser:

Den fungerer som en TCP-proxy, der giver dig mulighed for at oprette forbindelse til fjerntjenester og applikationer, som om du var på den lokale maskine. Det giver mulighed for at bygge brugerdefinerede TCP-tjenester på fjernværter, svarende til en omvendt TCP-proxy, der giver mulighed for en række sikkerheds-, fejlfindings- og ydeevneforbedringer, når de håndterer applikationer, der bruger TCP.

Nedenfor er et par flere anvendelser af Tproxy

  • Det er nyttigt til fejlretning og optimering af TCP-forbindelser.
  • Det er også nyttigt til at forstå, hvordan andre proxy-programmer fungerer, såsom Burp Suite og ZAP.
  • Den kan bruges til at proxy-tjene TCP-forbindelser mellem to værter eller mellem en vært og en fjern-TCP-tjeneste, f.eks. en database eller webtjeneste.
  • Overvåg MySQL-forbindelser og gRPC-forbindelser og kontrollerer også forbindelsens pålidelighed med hensyn til Retrans-hastighed og RTT

De fleste brugere vil opdage, at Tproxy forenkler deres arbejdsgang og giver dem mulighed for at udføre komplekse netværksanalyser og analysere webapplikationer uden at skulle ændre applikationen eller selve netværket. Værktøjet kan downloades fra GitHub.

NetworkMiner

Fremme sig selv som et retsmedicinsk netværksanalyseværktøj (FNAT), NetworkMiner er en af ​​de bedste pakke-niveau analysatorer, du vil støde på. Det er et open source-værktøj, der kan analysere et netværk passivt og kommer med en imponerende GUI-grænseflade til analyse, der kan vise individuelle billeder og andre overførte filer.

Men det er ikke alt. NetworkMiner kommer med fremragende andre funktioner såsom:

  • IPv6-understøttelse
  • Parsing af PCAP-filer
  • Uddrag X.509-certifikater fra SSL-krypteret trafik
  • Pcap-over-IP
  • Fungerer med flere typer trafik, såsom FTP, TFTP, HTTP, SMB, SMB2, SMTP, POP3 osv.
  • OS fingeraftryk
  • Geo IP lokalisering
  • Understøttelse af kommandolinjescripting

Bemærk, at nogle af disse funktioner er tilgængelige i den kommercielle version.

Violinist

I modsætning til andre passive netværkssniffere, Violinist er noget, der sidder mellem din enhed og omverdenen og derfor kræver en vis opsætning (er det derfor, de kaldte den “Fiddler”? 😉 ).

Det er et tilpasseligt (ved hjælp af FiddlerScript) gratis værktøj, der har en lang og fornem historie, så hvis dit mål er at opsnuse HTTP/HTTPS-trafik som en chef, er Fiddler vejen at gå.

Der er meget, du kan gøre med Fiddler, især hvis du er i humør til at tage hacker-hættetrøjen på:

  • Sessionsmanipulation: Åbn HTTP-headere og sessionsdata, og modificer dem på den måde, du ønsker.
  • Sikkerhedstest: Lader dig simulere man-in-the-middle-angreb og dekryptere al HTTPS-trafik for dig.
  • Ydelsestest: Analyser sideindlæsningstider (eller API-svar) og se, hvilken del af svaret der er flaskehalsen.

I tilfælde af at du føler dig fortabt, dokumentation er meget god og kan varmt anbefales.

WinDump

Hvis du savner enkelheden ved tcpdump og ønsker at bringe den til dine Windows-systemer, siger hej til WinDump. Når det er installeret, fungerer det fra kommandolinjen ved at skrive “tcpdump” på samme måde som hjælpeprogrammet fungerer på Linux-systemer.

Bemærk, at der ikke er noget at installere i sig selv; WinDump er en binær fil, der kan køres med det samme, forudsat at du har en Pcap-biblioteksimplementering installeret (npcap anbefales, da winpcap ikke længere er under udvikling).

  Sådan skriver du brøker i PowerPoint

BruteShark

BruteShark er et effektivt Network Forensic Analysis Tool (NFAT), du kan bruge til at behandle og inspicere netværkstrafikken, såsom PCAP-filer og indfange direkte fra netværksgrænseflader.

Det omfatter rekonstruering af TCP-sessioner, opbygning af netværkskort, udtrækning af hashes af stærkt krypterede adgangskoder, konvertering af hashes til et Hashcat-format for at udføre et Brute Force-angreb offline.

Hovedintentionen bag dette projekt er at hjælpe netværksadministratorer og sikkerhedsforskere med ansvar for at analysere netværkstrafik og identificere svagheder.

Der er to versioner af BruteShark tilgængelige: en grafisk brugergrænseflade (GUI) baseret applikation til Windows og et CLI-værktøj til Linux og Windows. Nogle af projekterne inkluderet i denne løsning kan endda bruges selvstændigt til at analysere netværkstrafik på Windows- og Linux-maskiner.

BruteShark kan også udføre forskellige operationer som at udtrække DNS-forespørgsler, filudskæring, udtrække VoIP-opkald (SIP, RTP), opbygge netværksdiagram for brugere og netværksknuder, udtrække autentificeringshash ved hjælp af Hashcat (NTLM, HTTP-Digest, CRAM-MD5, Kerberos, osv.), og hentning og kodning af adgangskoder og brugernavne.

Alle projekterne er implementeret gennem .Net Standard og .Net Core for cross-platform og moderne support. Denne løsning tilbyder en tre-lags arkitektur og inkluderer et eller flere projekter, inklusive PL, BLL og DAL på hvert lag.

Gennem DAL (Data Access Layer) hjælper projektet med at læse rå-filer af PCAP ved hjælp af drivere som WinPcap, libpcap og wrapper-biblioteker som SharpPcap. På samme måde er BLL (Business Logic Layer) ansvarlig for netværksinformationsanalyse (TCP, pakke osv.), og PL anvender et tværgående projekt og refererer til både BLL- og DAL-lag.

OmniPeek

For større netværk, der har tonsvis af MB data, der flyder gennem dem hvert sekund, kan de værktøjer, alle andre bruger, løbe tør for damp. Hvis du står over for det samme, OmniPeek kan være et kig værd.

Det er et ydelses-, analyse- og efterforskningsværktøj til at analysere netværk, især når du har brug for både lavniveau-kapaciteter og omfattende dashboards.

Kilde: sniffwifi.com

Capsa

Hvis alt du er bekymret for er Windows-platformen, Capsa er også en seriøs udfordrer. Den kommer i tre versioner: gratis, standard og virksomhed, hver med forskellige muligheder.

Når det er sagt, understøtter selv den gratis version over 300 protokoller og har interessante funktioner som advarsler (udløses, når visse betingelser er opfyldt). Standardtilbuddet er et hak over, understøtter 1000+ protokoller og giver dig mulighed for at analysere samtaler og rekonstruere pakkestrømme.

Alt i alt en solid mulighed for Windows-brugere.

EtherApe

Hvis kraftfulde visualiseringer og open source er, hvad du leder efter, EtherApe er en god mulighed. Mens forudbyggede binære filer kun er tilgængelige for en håndfuld Linux-distros, er kilden tilgængelig (på både SourceForge og GitHub), så det er en mulighed at bygge den på egen hånd.

Her er hvad der efter min mening gør EtherApe fantastisk:

  • Multi-node, farvekodet overvågning.
  • Understøttelse af et væld af pakkeformater såsom ETH_II, 802.2, 803.3, IP, IPv6, ARP, X25L3, REVARP, ATALK, AARP, IPX, VINES, TRAIN, LOOP, VLAN osv. (faktisk mange, mange, flere) .
  • Læs data live fra “wiren” eller fra en tcpdump-fil.
  • Understøtter standard navneopløsning
  • Fra de seneste versioner er GUI’en blevet flyttet til GTK3, hvilket resulterer i en mere behagelig oplevelse.

CommView

Hvis du er en Windows-eksklusiv butik og værdsætter bekvemmeligheden ved prioriteret support, CommView anbefales. Det er en kraftfuld netværkstrafikanalysator med avancerede funktioner som VoIP-analyse, fjernsporing osv., indbygget.

Det, der imponerede mig mest, er dets evne til at eksportere data til formater, der bruges af flere åbne og proprietære formater, såsom Sniffer®, EtherPeek™, AiroPeek™, Observer®, NetMon, Wireshark/Tcpdump og Wireshark/pcapng, og endda almindelige hex-dumps .

Wifi Explorer

Sidst på listen er Wifi Explorer, som har en gratis version til Windows og en standardversion til Windows og macOS. Hvis WiFi-netværksanalyse er alt, hvad du har brug for (hvilket stort set er standarden i disse dage), så vil Wifi Explorer gøre livet nemt.

Det er et smukt designet og funktionsrigt værktøj til at skære direkte til hjertet af netværket.

Hæderlig omtale: Det ville være en bjørnetjeneste at lukke dette indlæg uden at nævne en macOS-eksklusiv netværksanalysator, jeg faldt over – Lille Snitch. Den har en indbygget firewall, så den kommer med den ekstra fordel, at den straks giver dig mulighed for at kontrollere al trafikken perfekt (hvilket kan se ud til at være en smerte, men er en massiv gevinst i det lange løb).

Hvad er det næste?

Du bør også udforske disse netværksovervågningssoftware for bedre infrastruktursynlighed. Hvis du ønsker at opbygge en karriere inden for netværk og sikkerhed, så tjek nogle af de bedste online kurser her.