12 nettverkspakkeanalysatorer for systemadministratorer og sikkerhetsanalytikere

Nettverket ditt er ryggraden i virksomheten din. Sørg for at du vet hva som foregår dypt inne i den.

På mange måter har landskapet for digitale virksomheter sett en revolusjon eller to. Det som startet så enkelt CGI-skript skrevet i Perl har nå blomstret opp i grupperte distribusjoner som kjører helautomatisk på Kubernetes og andre orkestreringsrammer (beklager den tunge sjargongen – jeg finner det ikke på i det hele tatt; det er bare slik ting er i disse dager!).

En typisk containerisert, distribuert moderne nettapplikasjon (kilde: medium.com)

Men jeg kan ikke la være å smile ved tanken på at det grunnleggende fortsatt er det samme som det var på 1970-tallet.

Alt vi har er abstraksjoner på abstraksjoner støttet av harde, fysiske kabler som danner nettverket (ok, det er virtuelle nettverk som er bra, men du skjønner ideen). Hvis vi ønsker å bli fancy, kan vi dele nettverket i lag i henhold til OSI-modellen, men alt sagt og gjort, vi har alltid, alltid å gjøre med TCP/IP-protokoller (advarsel, tung lesing fremover!), ping, rutere, som alle har ett mål til felles – overføring av datapakker.

Så, hva er en nettverkspakke?

Uansett hva vi gjør – chatting, videostreaming, spill, surfing, kjøp av ting – er det i hovedsak en utveksling av datapakker mellom to datamaskiner (nettverk). En «pakke» er den minste informasjonsenheten som flyter i et nettverk (eller mellom nettverk), og det er en veldefinert metode for å konstruere og verifisere nettverkspakker (utover omfanget av denne artikkelen, men hvis du føler deg eventyrlysten, her er mer).

Pakkeflyt i et nettverk (kilde: training.ukdw.ac.id)

I enklere termer representerer hver pakke et ledd i kjeden, og sendes på riktig måte ved kilden og valideres på destinasjonen. Selv om en enkelt pakke kommer ut eller bestiller, blir prosessen suspendert til alle pakkene i riktig rekkefølge er mottatt, og først da settes de sammen for å danne dataene de opprinnelig representerte (for eksempel et bilde).

Nå som vi forstår hva et nettverk er, blir det å forstå hva en nettverksanalysator gjør. Det er et verktøy som lar deg kikke inn i individuelle pakker på nettverket ditt.

Men hvorfor vil du gå til det problemet? La oss diskutere det neste.

Hvorfor må vi analysere pakker?

Det ser ut som pakker er ganske mye de grunnleggende byggesteinene i en nettverksdataflyt, omtrent som atomer er grunnlaget for all materie (ja, jeg vet, dette er ikke sanne fundamentale partikler, men det er en god nok analogi for våre formål) . Og når det gjelder å analysere materialer eller gasser, bryr vi oss aldri om hva et enkelt atom gjør; så hvorfor bekymre deg for en enkelt nettverkspakke på individuelt nivå? Hva kan vi vite annet enn vi allerede vet?

Det er vanskelig å selge viktigheten av analyse på pakkenivå når du ikke har blitt bitt i ryggen før, men jeg skal prøve.

Pakkeanalyse betyr å skitne hendene og strekke seg ned i selve rørleggeren for å finne ut av noe. Vanligvis må du analysere nettverkspakker når alt annet har feilet. Vanligvis inkluderer dette tilsynelatende håpløse scenarier som følger:

  • Uforklarlig tap av hemmelige data til tross for ikke noe åpenbart brudd
  • Diagnostisere langsomme applikasjoner når det ikke ser ut til å være noen bevis overhodet
  • Sørg for at datamaskinen/nettverket ikke er kompromittert
  • Bevise eller motbevise at en angriper ikke er det piggybacking av WiFi
  • Å finne ut hvorfor serveren din er flaskehalsen til tross for lav trafikk

Alt i alt faller pakkeanalyse under visse, harde typer bevis. Hvis du vet hvordan du utfører pakkeanalyse og har et øyeblikksbilde, kan du redde deg selv fra å feilaktig bli anklaget for et hack eller bare bli klandret som en inkompetent utvikler eller nettverksadministrator.

Alt handler om hjernen! (kilde: dailydot.com)

Angående en ekte historie, tror jeg denne kommentaren på blogginnlegget fant her er eksepsjonell (gjengitt her bare i tilfelle):

En applikasjon som var kritisk for firmaet mitt, viste ytelsesproblemer, falt på ansiktet i kundedistribusjoner. Det var en aksjeprisapplikasjon som ble brukt i spissen for ticker-anlegg i finansselskaper over hele verden. Hvis du hadde en 401(k) rundt 2000, var det sannsynligvis avhengig av denne applikasjonen. Jeg gjorde analyser av den typen du har beskrevet, spesielt TCP-atferd. Jeg påpekte at problemet var i OS-leverandørens implementering av TCP. Den buggy-adferden var at hver gang sendestabelen gikk inn i overbelastningskontroll, ble den aldri gjenopprettet. Dette resulterte i et komisk lite sendevindu, noen ganger bare noen få multipler av MSS.

  Hvordan installere MongoDB Compass på Ubuntu

Det tok en stund å kjempe med kontoadministratorer og utviklerstøttefolk hos OS-leverandøren som ikke forsto problemet, min forklaring, eller at problemet *ikke* kunne ligge i applikasjonen fordi applikasjonen er lykkelig uvitende om TCP-maskineri. Det var som å snakke til en vegg. Jeg begynte på første plass med hver telefonkonferanse. Til slutt kom jeg på telefon med en fyr som jeg kunne ha en god diskusjon med. Det viser seg at han la RFC1323-utvidelsene i stabelen! Dagen etter hadde jeg en oppdatering til operativsystemet i hendene, og produktet fungerte perfekt fra det tidspunktet og fremover.

Utvikleren forklarte at det var en feil som førte til at innkommende ACK-er *med nyttelast* ble feilkategorisert som DUPACK-er når stabelen var i overbelastningskontroll.

Dette ville aldri skje med halvdupleksapplikasjoner som HTTP, men applikasjonen jeg støttet sendte data toveis på kontakten til enhver tid.

Jeg hadde ikke massevis av støtte fra ledelsen på den tiden (lederen min ropte til og med på meg for at jeg «alltid ville bruke en sniffer» for å fikse problemer), og ingen andre enn meg så på OS-leverandørens TCP-implementering som kilden av problemet. Å bryte løsningen fra OS-leverandøren alene gjorde denne seieren spesielt søt, skaffet meg massevis av kapital til å gjøre mine egne ting, og førte til at de mest interessante problemene dukket opp på skrivebordet mitt.

I tilfelle du ikke hadde lyst til å lese gjennom den teksten, eller hvis det ikke ga mye mening, sto denne herren overfor ytelsesproblemer som ble klandret på søknaden hans, og ledelsen, som forventet, ga null støtte . Det var kun en grundig pakkeanalyse som viste at problemet ikke lå i applikasjonen, men i hvordan operativsystemet håndterte nettverksprotokollen!

Reparasjonen var ikke en justering av applikasjonen, men en oppdatering fra operativsystemutviklerne! 😮

Gutt, å, gutt. . . Uten analyse på pakkenivå, hvor tror du denne personen ville vært? Sannsynligvis uten jobb. Hvis dette ikke overbeviser deg om viktigheten av pakkeanalyse (også kalt pakkesniffing), vet jeg ikke hva som vil gjøre det. 🙂

Nå som du vet at pakkeanalyse er en superkraft, har jeg gode nyheter: det er ikke vanskelig å gjøre det!

Takket være kraftige, men brukervennlige pakkesniffverktøy, kan det være like enkelt å hente informasjon fra pakkenivåanalysen som å lese et salgsdashbord. Når det er sagt, vil du trenge litt mer enn kunnskap på overflatenivå om hva som foregår i et nettverk. Men så, igjen, det er ingen rakettvitenskap her, ingen vridd logikk å mestre – bare ren sunn fornuft.

Hvis du begynner å lese gjennom dokumentasjonen til et av disse verktøyene mens du bruker dem på nettverket ditt, vil du snart bli en ekspert. 😀

Wireshark

Wireshark er et gammelt prosjekt (det startet helt tilbake i 1998) som stort sett er industristandarden når det kommer til å dykke dypt inn i nettverk. Det er imponerende når man tenker på at det kun er en frivillig drevet organisasjon, støttet av noen sjenerøse sponsorer. Wireshark forblir åpen kildekode (ikke på GitHub, men koden kan bli funnet her) og har til og med en teknologi konferanse til navnet sitt!

Blant de mange egenskapene til Wireshark er:

  • Støtte for hundrevis av nettverksprotokoller.
  • Interoperabel med mange filformater (tcpdump (libpcap), Pcap NG, Catapult DCT2000, Cisco Secure IDS iplog, Microsoft Network Monitor, Network General Sniffer® (komprimert og ukomprimert), Sniffer® Pro og NetXray®, og så videre).
  • Kjør på praktisk talt alle plattformer der ute (Linux, Windows, macOS, Solaris, FreeBSD og mer).
  • Live datalesing fra blant annet Ethernet, IEEE 802.11, PPP/HDLC, ATM, Bluetooth, USB, Token Ring.
  • On-the-fly gzip-dekompresjon.
  • Massevis av dekrypteringsprotokoller som støttes (WPA/WPA2, SNMPv3, etc.)
  • Omfattende VoIP-analyse
  • Fargeregler for raskere visuell skanning

Sjekk ut dette fantastiske nettkurset for å lære deg å mestre Wireshark.

Ser du etter Wireshark i terminalen din? Klart, prøv Termshark

tcpdump

Hvis du er gammeldags (les hardcore kommandolinjejunkie), tcpdump er til deg.

Det er et annet av de ikoniske Linux-verktøyene (som curl) som forblir like relevante som alltid, så mye at nesten alle andre «fanciere» verktøy bygger på det. Som jeg sa før, det er ikke et grafisk miljø, men verktøyet veier mer enn opp for det.

Men å installere det kan være en smerte; mens tcpdump kommer sammen med de fleste moderne Linux-distribusjoner, hvis din ikke gjør det, vil du ende opp med å måtte bygge fra kilden.

  Hvordan mørk modus kan forlenge batterilevetiden på OLED-telefoner

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

  • Viser alle tilgjengelige grensesnitt
  • Fanger bare ett av grensesnittene
  • Lagrer fangede pakker til fil
  • Fanger kun mislykkede pakker

. . . og så videre.

Hvis dine behov er enkle og du trenger å kjøre en rask skanning, kan tcpdump være et flott alternativ å vurdere (spesielt hvis du skriver tcpdump og finner ut at det allerede er installert!). Sjekk ut dette innlegget for noen sanntidseksempler på tcpdump-kommandoer.

Tproxy

Tproxy er et enkelt, åpen kildekode, kommandolinjeverktøy for å proxy-tjene TCP-tilkoblinger over nettverket. Tproxy er skrevet på Go-programmeringsspråket og er et Go-kommandolinjeverktøy, og pakket som en Go-binær, slik at den er tilgjengelig på alle moderne Linux- og macOS-plattformer.

Bildet nedenfor viser kommandolinjen for å overvåke Mysql-tilkoblinger:

Dens primære brukstilfelle er å proxy-tjene HTTP-tilkoblinger og inspisere innholdet i HTTP-forespørselen og svarene. Den kan også brukes til å proxy-tjene andre protokoller, som SOCKS eller TCP. Den kan brukes til å proxy-tjene TCP-forbindelser mellom to verter, eller til å analysere trafikken på en direkteforbindelse. Det er nyttig for feilsøking og testing av applikasjoner som bruker TCP som en transportprotokoll, og for å bygge TCP proxy-tjenester.

Den ble skrevet med mål om å gi et brukervennlig grensesnitt til tcpdump-kommandolinjeverktøyet, slik at brukere kan proxy TCP-tilkoblinger og utføre andre avanserte nettverksanalyser uten å måtte forstå den underliggende TCP-protokollen.

Under kommandolinjen viser gRPC-tilkoblinger:

Den fungerer som en TCP-proxy, som lar deg koble til eksterne tjenester og applikasjoner som om du var på den lokale maskinen. Det gjør det mulig å bygge tilpassede TCP-tjenester på eksterne verter, lik en omvendt TCP-proxy som gir mulighet for en rekke sikkerhets-, feilsøkings- og ytelsesforbedringer når du arbeider med applikasjoner som bruker TCP.

Nedenfor er noen flere bruksområder for Tproxy

  • Det er nyttig for feilsøking og optimalisering av TCP-tilkoblinger.
  • Det er også nyttig for å forstå hvordan andre proxy-programmer fungerer, for eksempel Burp Suite og ZAP.
  • Den kan brukes til proxy TCP-forbindelser mellom to verter, eller mellom en vert og en ekstern TCP-tjeneste, som en database eller webtjeneste.
  • Overvåk MySQL-tilkoblinger og gRPC-tilkoblinger og kontrollerer også tilkoblingens pålitelighet når det gjelder Retrans-hastighet og RTT

De fleste brukere vil oppleve at Tproxy forenkler arbeidsflyten deres og lar dem utføre komplekse nettverksanalyser og analysere webapplikasjoner uten å måtte endre applikasjonen eller selve nettverket. Verktøyet kan lastes ned fra GitHub.

NetworkMiner

Fremme seg selv som et rettsmedisinsk nettverksanalyseverktøy (FNAT), NetworkMiner er en av de beste analysatorene på pakkenivå du kommer over. Det er et åpen kildekode-verktøy som kan analysere et nettverk passivt og kommer med et imponerende GUI-grensesnitt for analyse som kan vise individuelle bilder og andre filer som er overført.

Men det er ikke alt. NetworkMiner kommer med utmerkede andre funksjoner som:

  • IPv6-støtte
  • Parsing av PCAP-filer
  • Trekk ut X.509-sertifikater fra SSL-kryptert trafikk
  • Pcap-over-IP
  • Fungerer med flere typer trafikk, som FTP, TFTP, HTTP, SMB, SMB2, SMTP, POP3, etc.
  • OS fingeravtrykk
  • Geo IP-lokalisering
  • Støtte for kommandolinjeskripting

Vær oppmerksom på at noen av disse funksjonene er tilgjengelige i den kommersielle versjonen.

Spelemann

I motsetning til andre passive nettverkssniffere, Spelemann er noe som sitter mellom enheten din og omverdenen og derfor krever litt oppsett (er det derfor de kalte den «Fiddler»? 😉 ).

Det er et tilpassbart (ved hjelp av FiddlerScript) gratisverktøy som har en lang og fremtredende historie, så hvis målet ditt er å snuse HTTP/HTTPS-trafikk som en sjef, er Fiddler veien å gå.

Det er mye du kan gjøre med Fiddler, spesielt hvis du er i humør til å ta på deg hacker-hettegenseren:

  • Sesjonsmanipulering: Ripp HTTP-hoder og øktdata åpne, og modifiser dem slik du vil.
  • Sikkerhetstesting: Lar deg simulere mann-i-midten-angrep og dekryptere all HTTPS-trafikk for deg.
  • Ytelsestesting: Analyser sideinnlasting (eller API-respons) tider og se hvilken del av svaret som er flaskehalsen.

I tilfelle du føler deg fortapt, dokumentasjon er veldig bra og anbefales på det varmeste.

WinDump

Hvis du savner enkelheten til tcpdump og ønsker å bringe den til Windows-systemene dine, sier hei til WinDump. Når det er installert, fungerer det fra kommandolinjen ved å skrive «tcpdump» på samme måte som verktøyet fungerer på Linux-systemer.

Merk at det ikke er noe å installere i seg selv; WinDump er en binærfil som kan kjøres umiddelbart, forutsatt at du har installert en Pcap-bibliotekimplementering (npcap anbefales siden winpcap ikke lenger er under utvikling).

  Fiks fatal Paramount Plus-feilkode

BruteShark

BruteShark er et effektivt Network Forensic Analysis Tool (NFAT) du kan bruke til å behandle og inspisere nettverkstrafikken som PCAP-filer og fange direkte fra nettverksgrensesnitt.

Det inkluderer å rekonstruere TCP-økter, bygge nettverkskart, trekke ut hashes av sterkt krypterte passord, konvertere hashes til et Hashcat-format for å utføre et Brute Force-angrep offline.

Hovedintensjonen bak dette prosjektet er å hjelpe nettverksadministratorer og sikkerhetsforskere med ansvar for å analysere nettverkstrafikk og identifisere svakheter.

Det er to versjoner av BruteShark tilgjengelig: et grafisk brukergrensesnitt (GUI) basert applikasjon for Windows og et CLI-verktøy for Linux og Windows. Noen av prosjektene som er inkludert i denne løsningen kan til og med brukes uavhengig for å analysere nettverkstrafikk på Windows- og Linux-maskiner.

BruteShark kan også utføre ulike operasjoner som å trekke ut DNS-spørringer, filutskjæring, trekke ut VoIP-anrop (SIP, RTP), bygge nettverksdiagram for brukere og nettverksnoder, trekke ut autentiseringshasher ved hjelp av Hashcat (NTLM, HTTP-Digest, CRAM-MD5, Kerberos, etc.), og henting og koding av passord og brukernavn.

Alle prosjektene er implementert gjennom .Net Standard og .Net Core for tverrplattform og moderne support. Denne løsningen tilbyr en tre-lags arkitektur og inkluderer ett eller flere prosjekter, inkludert PL, BLL og DAL i hvert lag.

Gjennom DAL (Data Access Layer) hjelper prosjektet med å lese råfiler av PCAP ved å bruke drivere som WinPcap, libpcap og wrapper-biblioteker som SharpPcap. På samme måte er BLL (Business Logic Layer) ansvarlig for nettverksinformasjonsanalyse (TCP, pakke, etc.), og PL bruker et tverrgående prosjekt og refererer til både BLL- og DAL-lag.

OmniPeek

For større nettverk som har tonnevis av MB med data som strømmer gjennom dem hvert sekund, kan verktøyene alle andre bruker gå tom for damp. Hvis du står overfor det samme, OmniPeek kan være verdt en titt.

Det er et ytelses-, analyse- og etterforskningsverktøy for å analysere nettverk, spesielt når du trenger både funksjoner på lavt nivå og omfattende dashboards.

Kilde: sniffwifi.com

Capsa

Hvis alt du er bekymret for er Windows-plattformen, Capsa er også en seriøs utfordrer. Den kommer i tre versjoner: gratis, standard og bedrift, hver med forskjellige funksjoner.

Når det er sagt, støtter til og med gratisversjonen over 300 protokoller og har interessante funksjoner som varsler (utløses når visse betingelser er oppfylt). Standardtilbudet er et hakk over, og støtter 1000+ protokoller og lar deg analysere samtaler og rekonstruere pakkestrømmer.

Alt i alt et solid alternativ for Windows-brukere.

EtherApe

Hvis kraftige visualiseringer og åpen kildekode er det du er ute etter, EtherApe er et flott alternativ. Mens forhåndsbygde binærfiler er tilgjengelige for bare en håndfull Linux-distroer, er kilden tilgjengelig (på både SourceForge og GitHub), så å bygge den på egen hånd er et alternativ.

Her er det som gjør EtherApe flott etter min mening:

  • Multi-node, fargekodet overvåking.
  • Støtte for massevis av pakkeformater som ETH_II, 802.2, 803.3, IP, IPv6, ARP, X25L3, REVARP, ATALK, AARP, IPX, VINES, TRAIN, LOOP, VLAN, etc. (faktisk mange, mange, flere) .
  • Les data direkte fra «wire» eller fra en tcpdump-fil.
  • Støtter standard navneoppløsning
  • Fra de siste versjonene har GUI blitt flyttet til GTK3, noe som resulterer i en mer behagelig opplevelse.

CommView

Hvis du er en Windows-eksklusiv butikk og verdsetter fordelen med prioritert støtte, CommView er anbefalt. Det er en kraftig nettverkstrafikkanalysator med avanserte funksjoner som VoIP-analyse, fjernsporing osv., innebygd.

Det som imponerte meg mest er dens evne til å eksportere data til formater som brukes av flere åpne og proprietære formater, som Sniffer®, EtherPeek™, AiroPeek™, Observer®, NetMon, Wireshark/Tcpdump og Wireshark/pcapng, og til og med vanlige hex-dumps .

Wifi Explorer

Sist på listen er Wifi Explorer, som har en gratisversjon for Windows og en standardversjon for Windows og macOS. Hvis WiFi-nettverksanalyse er alt du trenger (som stort sett er standard i disse dager), vil Wifi Explorer gjøre livet enkelt.

Det er et vakkert designet og funksjonsrikt verktøy for å kutte rett til hjertet av nettverket.

Hederlig omtale: Det ville være en bjørnetjeneste å lukke dette innlegget uten å nevne en macOS-eksklusiv nettverksanalysator jeg snublet over – Lille Snitch. Den har en brannmur innebygd, så den kommer med den ekstra fordelen at du umiddelbart lar deg kontrollere all trafikken perfekt (noe som kan se ut til å være en smerte, men er en enorm gevinst i det lange løp).

Hva blir det neste?

Du bør også utforske disse nettverksovervåkingsprogramvarene for bedre infrastruktursynlighet. Hvis du ønsker å bygge en karriere innen nettverk og sikkerhet, så sjekk ut noen av de beste nettkurs her.