03/29/2024

12 analizoare de pachete de rețea pentru administratori de sistem și analiști de securitate

Rețeaua dvs. este coloana vertebrală a operațiunilor dvs. de afaceri. Asigurați-vă că știți ce se întâmplă în adâncul ei.

În multe privințe, peisajul afacerilor digitale a cunoscut o revoluție sau două. Ce a început ca simplu Scripturi CGI scris în Perl a înflorit acum în implementări în cluster care rulează complet automat pe Kubernetes și alte framework-uri de orchestrare (scuze pentru jargonul greu – nu mă inventez deloc; așa stau lucrurile în zilele noastre!).

O aplicație web modernă tipică, distribuită, în containere (sursa: medium.com)

Dar nu pot să nu zâmbesc la gândul că fundamentele sunt încă aceleași ca în anii 1970.

Tot ce avem sunt abstracții pe abstracții susținute de cabluri fizice dure care formează rețeaua (bine, există rețele virtuale care sunt bine, dar înțelegi ideea). Dacă vrem să devenim fanteziste, putem împărți rețeaua în straturi conform modelului OSI, dar toate spuse și gata, avem mereu, mereu de-a face cu protocoale TCP/IP (avertisment, citire grea înainte!), ping-uri, routere, toate având un scop în comun – transmiterea pachetelor de date.

Deci, ce este un pachet de rețea?

Indiferent de ceea ce facem – chat, streaming video, jocuri, navigare, cumpărare de lucruri – este în esență un schimb de pachete de date între două computere (rețele). Un „pachet” este cea mai mică unitate de informații care circulă într-o rețea (sau între rețele) și există o metodă bine definită de construire și verificare a pachetelor de rețea (dincolo de scopul acestui articol, dar dacă vă simțiți aventuros, iată Mai mult).

Fluxul de pachete într-o rețea (sursa: training.ukdw.ac.id)

În termeni mai simpli, fiecare pachet reprezintă o verigă în lanț și este transmis corect la sursă și validat la destinație. Chiar dacă un singur pachet ajunge sau comanda, procesul este suspendat până când toate pachetele în ordinea corectă au fost primite și abia apoi sunt puse împreună pentru a forma datele pe care le-au reprezentat inițial (o imagine, de exemplu).

Acum că înțelegem ce este o rețea, devine să înțelegem ce face un analizor de rețea. Este un instrument care vă permite să aruncați o privire în pachetele individuale din rețea.

Dar de ce ai vrea să mergi la necazul ăsta? Să discutăm asta în continuare.

De ce trebuie să analizăm pachetele?

Se pare că pachetele sunt aproape elementele de bază ale fluxului de date în rețea, așa cum atomii sunt baza întregii materii (da, știu, acestea nu sunt particule fundamentale adevărate, dar este o analogie suficient de bună pentru scopurile noastre) . Și când vine vorba de analizarea materialelor sau a gazelor, nu ne deranjez niciodată ce face un atom individual; Deci, de ce să vă faceți griji pentru un singur pachet de rețea la nivel individual? Ce putem ști altfel decât știm deja?

Este greu să vinzi importanța analizei la nivel de pachet atunci când nu ai fost mușcat în spate înainte, dar voi încerca.

Analiza pachetelor înseamnă să vă murdăriți mâinile și să vă întindeți până la instalațiile sanitare pentru a afla ceva. În general, trebuie să analizați pachetele de rețea atunci când toate celelalte au eșuat. De obicei, aceasta include scenarii aparent fără speranță, după cum urmează:

  • Pierderea inexplicabilă a datelor secrete, în ciuda unei încălcări evidente
  • Diagnosticarea aplicațiilor lente atunci când pare să nu existe nicio dovadă
  • Asigurați-vă că computerul/rețeaua nu a fost compromisă
  • Demonstrarea sau infirmarea faptului că un atacator nu este piggybacking deconectat de la WiFi
  • Înțelegeți de ce serverul dvs. este blocajul în ciuda traficului redus

Una peste alta, analiza pachetelor se încadrează în anumite tipuri de dovezi dure. Dacă știți cum să efectuați analiza de pachete și să aveți un instantaneu, vă puteți salva de a fi acuzat în mod greșit de un hack sau pur și simplu de a fi acuzat ca dezvoltator sau administrator de rețea incompetent.

Totul tine de creier! (sursa: dailydot.com)

În ceea ce privește o poveste reală, cred că acest comentariu pe postarea de blog a găsit Aici este excepțional (reprodus aici pentru orice eventualitate):

O aplicație critică pentru compania mea a prezentat probleme de performanță, a căzut pe față în implementările clienților. Era o aplicație de stabilire a prețului acțiunilor, folosită la șefia fabricilor de ticker din companiile financiare din întreaga lume. Dacă ai avut un 401(k) în jurul anului 2000, probabil că depindea de această aplicație. Am făcut o analiză de tipul pe care l-ați descris, în special comportamentul TCP. Am identificat problema ca fiind în implementarea TCP de către furnizorul de sistem de operare. Comportamentul cu erori a fost că ori de câte ori stiva de trimitere a intrat în controlul congestiei, nu și-a revenit niciodată. Acest lucru a dus la o fereastră de trimitere comică mică, uneori doar câțiva multipli de MSS.

  Gestionarea conductei de vânzări este ușoară cu Bigin [+ 3 Alternatives]

A durat ceva timp să luptăm cu managerii de cont și cu oamenii de asistență pentru dezvoltatori de la furnizorul de sistem de operare care nu au înțeles problema, explicația mea sau că problema *nu putea* să fie în aplicație, deoarece aplicația nu cunoaște în mod fericit mașinațiunile TCP. Era ca și cum ai vorbi cu un perete. Am început din punctul unu cu fiecare apel conferință. Până la urmă am luat la telefon cu un tip cu care aș putea avea o discuție bună. Se pare că a pus extensiile RFC1323 în stivă! A doua zi am avut un patch pentru sistemul de operare în mâini și produsul a funcționat perfect din acel moment înainte.

Dezvoltatorul a explicat că a existat o eroare care a făcut ca ACK-urile primite *cu încărcături utile* să fie clasificate greșit ca DUPACK-uri atunci când stiva era în controlul congestiei.

Acest lucru nu s-ar întâmpla niciodată cu aplicațiile half-duplex, cum ar fi HTTP, dar aplicația pe care o suportam a trimis date bidirecționale pe socket în orice moment.

Nu aveam o mulțime de sprijin din partea conducerii la acea vreme (managerul meu chiar a țipat la mine că „vreau întotdeauna să folosesc un sniffer” pentru a remedia problemele) și nimeni în afară de mine nu se uita la implementarea TCP a furnizorului de sistem de operare ca sursă. a problemei. Luptând singur cu soluția de la furnizorul de sisteme de operare, această victorie a făcut ca această victorie să fie deosebit de dulce, mi-a câștigat o tonă de capital pentru a-mi face treaba și a dus la apariția celor mai interesante probleme pe birou.

În cazul în care nu aveai chef să citești acea bucată de text sau dacă nu avea prea mult sens, acest domn se confrunta cu probleme de performanță care erau puse pe seama cererii sale, iar conducerea, așa cum era de așteptat, nu acorda sprijin. . A fost doar o analiză amănunțită a pachetelor care a demonstrat că problema nu era în aplicație, ci în modul în care sistemul de operare gestiona protocolul de rețea!

Remedierea nu a fost o îmbunătățire a aplicației, ci un patch de la dezvoltatorii sistemului de operare! 😮

Băiete, o, băiete. . . Fără analiză la nivel de pachet, unde credeți că ar fi această persoană? Probabil că nu-i slujește. Dacă acest lucru nu vă convinge de importanța analizei pachetelor (numită și sniffing de pachete), nu știu ce va face. 🙂

Acum că știi că analiza pachetelor este o superputere, am o veste bună: nu este deloc dificil să faci asta!

Datorită instrumentelor puternice, dar simplu de utilizat, de detectare a pachetelor, culegere de informații din analiza la nivel de pachet poate fi la fel de ușoară ca citirea unui tablou de bord de vânzări. Acestea fiind spuse, veți avea nevoie de puțin mai mult decât o cunoaștere la nivel de suprafață a ceea ce se întâmplă în interiorul unei rețele. Dar, din nou, nu există nicio știință-rachetă aici, nicio logică întortocheată de stăpânit – pur și simplu bun simț.

Dacă începeți să citiți documentația unuia dintre aceste instrumente pe măsură ce le utilizați în rețeaua dvs., destul de curând, veți fi un expert. 😀

Wireshark

Wireshark este un proiect vechi (a început în 1998) care este aproape standardul industriei atunci când vine vorba de scufundare adânc în rețele. Este impresionant când consideri că este o organizație pur și simplu condusă de voluntari, susținută de niște sponsori generoși. Wireshark rămâne open-source (nu pe GitHub, dar codul poate fi găsit Aici) și chiar are o tehnologie conferinţă la numele lui!

Printre multele capabilități ale Wireshark se numără:

  • Suport pentru sute de protocoale de rețea.
  • Interoperabil cu multe formate de fișiere (tcpdump (libpcap), Pcap NG, Catapult DCT2000, Cisco Secure IDS iplog, Microsoft Network Monitor, Network General Sniffer® (comprimat și necomprimat), Sniffer® Pro și NetXray® și așa mai departe).
  • Rulați pe aproape toate platformele existente (Linux, Windows, macOS, Solaris, FreeBSD și multe altele).
  • Citirea datelor live de la Ethernet, IEEE 802.11, PPP/HDLC, ATM, Bluetooth, USB, Token Ring, printre altele.
  • Decompresie gzip din mers.
  • Sunt acceptate o mulțime de protocoale de decriptare (WPA/WPA2, SNMPv3 etc.)
  • Analiză VoIP extinsă
  • Reguli de colorare pentru o scanare vizuală mai rapidă

Consultați acest fantastic curs online pentru să te învețe să stăpânești Wireshark.

Cauți Wireshark în terminalul tău? Sigur, încearcă Termshark

tcpdump

Dacă sunteți vechi de școală (citiți drogat hardcore din linia de comandă), tcpdump este pentru tine.

Este un alt dintre acele utilitare Linux iconice (cum ar fi curl) care rămâne la fel de relevant ca întotdeauna, atât de mult încât aproape toate celelalte instrumente „mai fanteziste” se bazează pe el. După cum am spus mai devreme, nu există un mediu grafic, dar instrumentul compensează mai mult.

Dar instalarea acestuia poate fi o durere; în timp ce tcpdump vine la pachet cu majoritatea distribuțiilor Linux moderne, dacă a ta nu este, atunci va trebui să construiești din sursă.

  Obțineți site WordPress pe Google Cloud în mai puțin de 8 minute folosind Cloudways

Comenzile tcpdump sunt scurte și simple, menite să rezolve o anumită problemă, cum ar fi:

  • Se afișează toate interfețele disponibile
  • Captură doar una dintre interfețe
  • Salvarea pachetelor capturate în fișier
  • Captură numai pachete eșuate

. . . si asa mai departe.

Dacă nevoile dvs. sunt simple și trebuie să rulați o scanare rapidă, tcpdump poate fi o opțiune excelentă de luat în considerare (mai ales dacă introduceți tcpdump și descoperiți că este deja instalat!). Consultați această postare pentru câteva exemple de comandă tcpdump în timp real.

Proxy

Proxy este un instrument simplu, open-source, de linie de comandă pentru a proxy conexiunile TCP prin rețea. Tproxy este scris în limbajul de programare Go și este un instrument de linie de comandă Go și este ambalat ca un binar Go, astfel încât este disponibil pe toate platformele moderne Linux și macOS.

Imaginea de mai jos arată linia de comandă pentru a monitoriza conexiunile Mysql:

Cazul său de utilizare principal este să proxy conexiunile HTTP și să inspecteze conținutul solicitării HTTP și răspunsurile. Poate fi folosit și pentru a proxy alte protocoale, cum ar fi SOCKS sau TCP. Poate fi folosit pentru a trimite conexiuni TCP între două gazde sau pentru a analiza traficul pe o conexiune live. Este util pentru depanarea și testarea aplicațiilor care utilizează TCP ca protocol de transport și pentru construirea de servicii proxy TCP.

A fost scris cu scopul de a oferi o interfață ușor de utilizat utilitarului de linie de comandă tcpdump, permițând utilizatorilor să proxy conexiuni TCP și să efectueze alte analize avansate de rețea fără a fi nevoie să înțeleagă protocolul TCP de bază.

Mai jos linia de comandă afișează conexiunile gRPC:

Acesta acționează ca un proxy TCP, permițându-vă să vă conectați la servicii și aplicații de la distanță ca și cum ați fi pe mașina locală. Permite construirea de servicii TCP personalizate pe gazde la distanță, similar unui proxy TCP invers, care permite o varietate de îmbunătățiri de securitate, depanare și performanță atunci când se lucrează cu aplicații care utilizează TCP.

Mai jos sunt câteva utilizări suplimentare ale Tproxy

  • Este util pentru depanarea și optimizarea conexiunilor TCP.
  • De asemenea, este util pentru înțelegerea modului în care funcționează alte programe proxy, cum ar fi Burp Suite și ZAP.
  • Poate fi folosit pentru a proxy conexiuni TCP între două gazde sau între o gazdă și un serviciu TCP la distanță, cum ar fi o bază de date sau un serviciu web.
  • Monitorizează conexiunile MySQL și conexiunile gRPC și, de asemenea, verifică fiabilitatea conexiunii în ceea ce privește rata Retrans și RTT

Majoritatea utilizatorilor vor descoperi că Tproxy le simplifică fluxul de lucru și le permite să efectueze analize complexe de rețea și să analizeze aplicații web fără a fi nevoie să modifice aplicația sau rețeaua în sine. Instrumentul poate fi descărcat de pe GitHub.

NetworkMiner

Promovându-se ca instrument de analiză criminalistică a rețelei (FNAT), NetworkMiner este unul dintre cele mai bune analizoare la nivel de pachete pe care le veți întâlni. Este un instrument open-source care poate analiza pasiv o rețea și vine cu o interfață GUI impresionantă pentru analiză care poate afișa imagini individuale și alte fișiere transferate.

Dar asta nu este tot. NetworkMiner vine cu alte caracteristici excelente, cum ar fi:

  • Suport IPv6
  • Analiza fișierelor PCAP
  • Extrageți certificatele X.509 din traficul criptat SSL
  • Pcap-over-IP
  • Funcționează cu mai multe tipuri de trafic, cum ar fi FTP, TFTP, HTTP, SMB, SMB2, SMTP, POP3 etc.
  • Amprentarea sistemului de operare
  • Localizare geografică IP
  • Suport pentru scripturi de linie de comandă

Rețineți că unele dintre aceste caracteristici sunt disponibile în versiunea comercială.

Lăutar

Spre deosebire de alte sniffer de rețea pasive, Lăutar este ceva care se află între dispozitivul tău și lumea exterioară și, prin urmare, necesită o anumită configurare (de aceea l-au numit „Fiddler”? 😉 ).

Este un instrument gratuit personalizabil (folosind FiddlerScript) care are o istorie lungă și distinsă, așa că dacă scopul tău este să adulmeci traficul HTTP/HTTPS ca un șef, Fiddler este calea de urmat.

Puteți face multe cu Fiddler, mai ales dacă aveți chef să vă îmbrăcați hanoracul hacker:

  • Manipularea sesiunii: extrageți anteturile HTTP deschise și datele sesiunii, modificându-le în orice mod doriți.
  • Testare de securitate: vă permite să simulați atacuri de tip man-in-the-middle și să decriptați tot traficul HTTPS pentru dvs.
  • Testarea performanței: analizați timpii de încărcare a paginii (sau răspunsul API) și vedeți care parte a răspunsului este blocajul.

În cazul în care te simți pierdut, documentație este foarte bun si este foarte recomandat.

WinDump

Dacă vă este dor de simplitatea tcpdump și doriți să o aduceți în sistemele dvs. Windows, salutați WinDump. Odată instalat, funcționează din linia de comandă tastând „tcpdump” la fel cum funcționează utilitarul pe sistemele Linux.

Rețineți că nu există nimic de instalat în sine; WinDump este un binar care poate fi rulat imediat, cu condiția să aveți instalată o implementare a bibliotecii Pcap (npcap este recomandat deoarece winpcap nu mai este în dezvoltare).

  6 lucruri pe care le puteți face dacă numele de domeniu pe care îl doriți nu este disponibil

BruteShark

BruteShark este un instrument eficient de analiză criminalistică de rețea (NFAT) pe care îl puteți utiliza pentru a procesa și inspecta traficul de rețea, cum ar fi fișierele PCAP și pentru a captura direct din interfețele de rețea.

Include reconstruirea sesiunilor TCP, construirea de hărți de rețea, extragerea hashurilor de parole puternic criptate, conversia hashurilor într-un format Hashcat pentru a efectua un atac Brute Force offline.

Principala intenție din spatele acestui proiect este de a ajuta administratorii de rețea și cercetătorii de securitate responsabili cu analiza traficului de rețea și identificarea punctelor slabe.

Există două versiuni de BruteShark disponibile: o aplicație bazată pe interfața grafică de utilizator (GUI) pentru Windows și un instrument CLI pentru Linux și Windows. Unele dintre proiectele incluse în această soluție pot fi chiar folosite independent pentru a analiza traficul de rețea pe mașinile Windows și Linux.

BruteShark poate efectua, de asemenea, diverse operațiuni, cum ar fi extragerea de interogări DNS, tăierea fișierelor, extragerea apelurilor VoIP (SIP, RTP), construirea diagramei de rețea pentru utilizatori și noduri de rețea, extragerea hashurilor de autentificare folosind Hashcat (NTLM, HTTP-Digest, CRAM-MD5, Kerberos, etc.), precum și preluarea și codificarea parolelor și a numelor de utilizator.

Toate proiectele sunt implementate prin .Net Standard și .Net Core pentru suport multiplatform și modern. Această soluție oferă o arhitectură cu trei straturi și include unul sau mai multe proiecte, inclusiv PL, BLL și DAL la fiecare strat.

Prin DAL (Data Access Layer), proiectul ajută la citirea fișierelor brute ale PCAP utilizând drivere precum WinPcap, libpcap și biblioteci wrapper precum SharpPcap. În mod similar, BLL (Business Logic Layer) este responsabil pentru analiza informațiilor de rețea (TCP, pachet, etc.), iar PL utilizează un proiect transversal și se referă atât la straturile BLL, cât și la DAL.

OmniPeek

Pentru rețelele mai mari, care au tone de MB de date care curg prin ele în fiecare secundă, instrumentele pe care le folosesc toți ceilalți se pot epuiza. Dacă te confrunți cu același lucru, OmniPeek ar putea merita o privire.

Este un instrument de performanță, analiză și criminalistică pentru analiza rețelelor, mai ales atunci când aveți nevoie atât de capabilități de nivel scăzut, cât și de tablouri de bord cuprinzătoare.

Sursa: sniffwifi.com

Capsa

Dacă tot ce vă îngrijorează este platforma Windows, Capsa este, de asemenea, un candidat serios. Vine în trei versiuni: gratuită, standard și enterprise, fiecare cu capacități diferite.

Acestea fiind spuse, chiar și versiunea gratuită acceptă peste 300 de protocoale și are caracteristici interesante precum alerte (declanșate atunci când sunt îndeplinite anumite condiții). Oferta standard este cu un pas mai sus, acceptând peste 1000 de protocoale și permițându-vă să analizați conversațiile și să reconstruiți fluxurile de pachete.

Una peste alta, o opțiune solidă pentru utilizatorii de Windows.

EtherApe

Dacă urmăriți vizualizări puternice și open source, EtherApe este o opțiune grozavă. În timp ce binarele prefabricate sunt disponibile doar pentru o mână de distribuții Linux, sursa este disponibilă (atât pe SourceForge, cât și pe GitHub), astfel încât să o construiți pe cont propriu este o opțiune.

Iată ce face EtherApe grozav în opinia mea:

  • Monitorizare cu mai multe noduri, cu coduri de culori.
  • Suport pentru o mulțime de formate de pachete, cum ar fi ETH_II, 802.2, 803.3, IP, IPv6, ARP, X25L3, REVARP, ATALK, AARP, IPX, VINES, TRAIN, LOOP, VLAN etc. (de fapt, multe, multe, mai multe) .
  • Citiți datele în direct din „fir” sau dintr-un fișier tcpdump.
  • Acceptă rezoluția standard de nume
  • Începând cu cele mai recente versiuni, GUI a fost mutat la GTK3, rezultând o experiență mai plăcută.

CommView

Dacă sunteți un magazin exclusiv pentru Windows și apreciați confortul asistenței prioritare, CommView este recomandat. Este un puternic analizator de trafic de rețea, cu funcții avansate precum analiza VoIP, urmărirea de la distanță etc., încorporate.

Ceea ce m-a impresionat cel mai mult este capacitatea sa de a exporta date în formate utilizate de mai multe formate deschise și proprietare, cum ar fi Sniffer®, EtherPeek™, AiroPeek™, Observer®, NetMon, Wireshark/Tcpdump și Wireshark/pcapng și chiar și depozite hexadecimale simple. .

Wifi Explorer

Ultimul pe listă este Wifi Explorer, care are o versiune gratuită pentru Windows și o versiune Standard pentru Windows și macOS. Dacă analiza rețelei WiFi este tot ceea ce aveți nevoie (care este aproape standardul în zilele noastre), atunci Wifi Explorer vă va ușura viața.

Este un instrument frumos conceput și bogat în funcții pentru a trece direct în inima rețelei.

Mențiune onorabilă: ar fi un deserviciu să închid această postare fără a menționa un analizor de rețea exclusiv macOS pe care m-am lovit – Micul Snitch. Are un firewall încorporat, deci vine cu avantajul suplimentar de a vă permite imediat să controlați perfect tot traficul (ceea ce poate părea a fi o durere, dar este un câștig masiv pe termen lung).

Ce urmeaza?

De asemenea, ar trebui să explorați aceste software de monitorizare a rețelei pentru o mai bună vizibilitate a infrastructurii. Dacă doriți să vă construiți o carieră în domeniul rețelelor și securității, atunci consultați câteva dintre acestea cele mai bune cursuri online aici.