Wireshark este unul dintre cele mai bune analizoare de pachete GUI de rețea open source disponibile astăzi. Este folosit pentru a captura pachete de rețea și pentru a afișa detaliile pachetelor de date. Wireshark și tcpdump folosesc libpcap pentru a obține date live de rețea. Este adesea mai ușor să capturați pachete folosind comanda tcpdump și să vizualizați folosind Wireshark. Acest lucru este util pentru depanarea problemelor de securitate a rețelei sau a rețelei și pentru a depana implementările de protocol. În acest articol, vom trece prin instalarea Wireshark pe Ubuntu 16.04, CentOS 7 și Arch Linux.

Instalarea pe Ubuntu 16.04

Înainte de a începe instalarea, să întâlnim dependențele:

$ sudo apt-get install build-essential checkinstall libcurl4-openssl-dev bison flex qt5-default qttools5-dev libssl-dev libgtk-3-dev libpcap-d

Odată ce toate dependențele au fost instalate, rulăm următoarele în terminal.

$ sudo add-apt-repository ppa:wireshark-dev/stable $ sudo apt-get update $ sudo apt-get install wireshark

În timpul instalării, dacă sunteți întrebat dacă utilizatorii care nu sunt superutilizatori pot captura pachete. Apăsați tasta săgeată stânga de pe tastatură pentru a selecta și apăsați Enter.

Puteți să-l lansați din liniuță sau să tastați comanda:

$ wireshark

Instalarea pe CentOS 7

Vom instala Wireshark pe CentOS 7 folosind yum. În terminal, tastați următoarele comenzi:

$ yum install gcc gcc-c++ bison flex libpcap-devel qt-devel gtk3-devel rpm-build libtool c-ares-devel qt5-qtbase-devel qt5-qtmultimedia-devel qt5-linguist desktop-file-utils $ sudo yum install wireshark wireshark-qt wireshark-gnome

Lansați-l din lansator sau tastați următoarea comandă în linia de comandă:

$ wireshark

Instalare pe Arch Linux

În terminal, tastați următoarele comenzi:

$ sudo pacman -S wireshark-qt

sau dacă preferați interfața GTK+, utilizați această comandă:

$ sudo pacman -S wireshark-gtk

Instalare din sursă

Instalarea din sursă va necesita să compilați codul sursă. Odată ce cerințele sunt îndeplinite, rulați următoarele comenzi în terminal pentru a instala codul sursă.

$ wget https://1.as.dl.wireshark.org/src/wireshark-2.4.5.tar.xz $ tar xvf wireshark-2.4.5.tar.xz $ cd wireshark-2.4.5/ $ ./ autogen.sh $ ./configure --enable-setcap-install $ sudo make $ sudo make install $ sudo ldconfig

rechinul

TShark este un instrument de linie de comandă care vine împreună cu Wireshark pentru a capta traficul în direct, precum și pentru a citi și analiza fișiere de captură. Fără opțiuni setate, TShark va funcționa la fel ca tcpdump. Va folosi biblioteca pcap pentru a capta traficul de la prima interfață de rețea disponibilă și afișează o linie rezumată pe stdout pentru fiecare pachet primit.

Tshark este automat pe CentOS 7 când instalați wireshark. Pe Ubuntu, îl puteți instala cu comanda:

$ sudo apt install tshark

Folosind Tshark

Dacă doriți să capturați pachetele care vin de la/merg către portul UDP 1812 pe eth0, puteți utiliza comanda tshark după cum urmează:

$ tshark -f „tcp port 80” -i eth0 -w capture.cap Captură pe „eth0”

Indicatorul -f este folosit pentru a specifica un filtru de captare a rețelei (mai multe despre filtre mai târziu). Pachetele care nu verifică condiția după marcajul -f nu vor fi capturate. În acest exemplu, sunt capturate numai pachetele IP care vin de la sau merg către portul UDP 1812.

Indicatorul -i este folosit pentru a specifica interfața de la care ne așteptăm să vedem pachetele RADIUS. Schimbați „eth0” în oricare ar fi numele interfeței dvs.

Indicatorul -w este folosit pentru a specifica un fișier în care traficul capturat va fi salvat pentru procesare ulterioară.

Dacă primiți o eroare „Permisiune refuzată” când rulați wireshark ca utilizator local, îl puteți porni cu privilegii root sau puteți adăuga contul de utilizator la grupul wireshark folosind următoarea comandă:

$ sudo usermod -a -G nume de utilizator wireshark

În acest articol, am învățat să instalăm wireshark pe Ubuntu, CentOS și Arch Linux. De asemenea, am învățat cum să compilam din sursă pentru orice distribuție Linux. Spuneți-ne dacă ați întâmpinat provocări în timpul instalării și vă vom ajuta să le remediați.

rechinul- un puternic analizor de trafic pentru interfața de linie de comandă, care face parte din binecunoscutul utilitar Wireshark. Funcționează în mod similar, dar datorită unui număr mare de decodoare și filtre, vă permite să analizați informații din protocoale de diferite niveluri și să le afișați în diverse forme și formate.

rechinul poate fi folosit pentru a analiza traficul în timp real sau din fișierele pcap/pcapng și vă permite să eliminați și să preveniți în timp util eventualele probleme și amenințări de securitate.

rechinul este o aplicație de linie de comandă care are toate caracteristicile Wireshark, dar fără interfață grafică. Acest lucru este foarte util atunci când sunt necesare sarcini automate, cum ar fi sniffing programat de pachete în cron, trimiterea de date către , perl, o bază de date sau e-mail.

Instalarea Tshark

După cum sa menționat deja, utilitarul este inclus în pachetul Wireshark. Îl puteți instala folosind managerul de pachete sau .

Pe Centos/RedHat

yum instalează wireshark

apt-get install wireshark

Capturarea, citirea și salvarea pachetelor

Când rulați fără parametri Tshark ca tcpdump va începe să intercepteze tot traficul de rețea pe toate interfețele.

# rechin

Dacă mașina dvs. are mai multe interfețe, poate fi necesar să specificați care dintre ele trebuie utilizată. Pentru a obține o listă de interfețe disponibile, specificați opțiunea -D:

Tshark-D

După selectarea interfeței dorite, specificați numele sau numărul acesteia folosind opțiunea -i, de exemplu:

tshark -i eth0 tshark -i 1

Acum că am învățat cum să captăm pachetele, este posibil să fie nevoie să le salvăm pentru studii suplimentare. Pentru a face acest lucru, utilizați opțiunea -w. Următoarea comandă va captura pachete din interfața eth0 și le va salva în fișierul /tmp/traffic.pcap:

Tshark -i eth0 -w /tmp/traffic.pcap

Pentru a analiza pachete dintr-un fișier salvat anterior în loc să le capturați din interfață, specificați numele fișierului cu opțiunea -r. Citirea din fișiere nu necesită privilegii de superutilizator.

Tshark -r /tmp/traffic.pcap

Trebuie remarcat faptul că utilitarul citește și analizează și fișierele capturate de tcpdump.

În mod implicit, Tshark rezolvă numele. Pentru a înțelege mai bine de unde a venit pachetul și unde a fost trimis, îl puteți dezactiva folosind opțiunea -n. Apoi, în loc de nume de domenii, depozitul de trafic va conține adrese IP.

Rechinul -n

Filtre

La munca rechinulîntr-o rețea foarte încărcată, rezultatele pot apărea prea repede și pot supraaglomera ecranul, ceea ce face dificilă citirea. Pentru a rezolva această problemă, Tshark are două tipuri de filtre.

Filtre de captare

Acestea sunt filtre tradiționale pcap/bpf care determină ce pachete vor fi capturate pe interfață. Filtrele sunt similare cu filtrele tcpdump, așa că nu le vom lua în considerare în detaliu în acest articol. Cei interesați pot citi despre ele în articolul despre

Capturați pachete legate de gazda 192.168.1.100 pe porturile 80 sau 53.

Tshark -i 2 -f „gazdă 192.168.1.100 și (portul dst 53 sau 80)”

Ignorați pachetele multicast și broadcast:

Tshark -i eth3 -f „nu se difuzează și nu se difuzează în multiplu”

Afișează filtre

Filtrele de afișare sunt specificate cu opțiunea -Y. Sintaxa lor este aceeași ca în programul de grafică wireshark. Luați în considerare cel mai popular

Vizualizați toate conexiunile de la adresa 192.168.1.1

Tshark -i eth0 -Y "ip.addr==192.168.1.1"

Maparea solicitărilor HTTP pe portul TCP 8800

Tshark -i eth0 -Y „tcp.port== 8800 și http.request”

Excludeți afișarea pachetelor ICMP și ARP:

Tshark -i eth0 -Y „nu arp sau icmp”

Retransmiterea pachetelor (retransmisie)

Tshark -i eth0 -Y „tcp.analysis.retransmission”

Formatare

Uneori doriți să afișați informații mai mult sau mai puțin detaliate despre pachete. rechinul vă permite să determinați unde și cum să afișați aceste informații. Următoarele opțiuni sunt utilizate pentru aceasta.

Opțiune -V folosit pentru modul verbose rechinulși afișarea de informații cum ar fi numărul de cadru, câmpul de protocol, datele sau steagurile de pachete.

Opțiune -O asemănătoare -V, dar afișează informații despre un anumit protocol.

Tshark -i eth2 -O icmp

Opțiunea -T este folosită pentru a scoate date într-un format diferit, acest lucru poate fi util dacă aveți nevoie de informații strict definite, de exemplu, când trimiteți date Tshark într-o bază de date.

Tshark -i wlan0 -O icmp -T câmpuri -e frame.number -e date

Când selectați câmpuri pentru opțiunea -T, trebuie să specificați cel puțin o dată opțiunea -e, care specifică câmpurile care urmează să fie afișate. Poate fi folosit de mai multe ori pentru a afișa mai multe câmpuri.

Tshark -r nmap_OS_scan_succesful -Y "tcp.ack" -T câmpuri -e frame.number -e ip.src -e tcp.seq -e tcp.ack -e tcp.flags.str -e tcp.flags -e tcp. analiză.acks_frame

O listă completă a câmpurilor posibile de afișat cu indicatorul -e poate fi obținută cu opțiunea -G:

Câmpuri Tshark -G | Mai puțin

Cu steagul -E formatare suplimentară. Puteți afișa/ascunde titluri, puteți seta ghilimele etc. De exemplu, următoarea comandă setează aceste opțiuni și pune rezultatul într-un fișier CSV:

Tshark -r captured.cap -T câmpuri -e frame.number -e frame.encap_type -e frame.protocols -e frame.len -e ip.addr -E separator=, -E quote=d > outfile.csv

Ieșirea datelor statistice

Pentru a crea rapoarte statistice, utilizați opțiunea -z urmat de tipul de raport.

Raport privind protocoalele SMB, DNS și IP:

Tshark -i ens1 -z smb,srt -z dns,tree -z http,tree -z gazde

Conexiuni sigure

De asemenea, Tshark vă permite să analizați conexiunile criptate, cum ar fi SSL. Următorul exemplu arată o conexiune HTTP prin SSL.

Afișăm pachete de la portul TCP 443, spunându-i lui Tshark să imprime informații detaliate despre protocolul HTTP, să efectueze segmentarea pentru SSL, să caute cheia privată în fișierul server-x.key în format PEM și să salveze informațiile de depanare în debug-ssl .fișier jurnal.

Tshark -r encrypted-packets.pcap -Y "tcp.port == 443" -O http \ -o "ssl.desegment_ssl_records: TRUE" \ -o "ssl.desegment_ssl_application_data: TRUE" \ -o "ssl.keys_list: 1270. .0.1,443,http,server-x.key" \ -o "ssl.debug_file: debug-ssl.log"

Concluzie

Ne-am uitat la utilizarea Tshark pentru a captura pachete în rețea. Acest utilitar este foarte util pentru a afla sursele problemelor, depanarea serviciilor de rețea, analiza securității și a sănătății generale a rețelei. Tshark este foarte puternic, dar am acoperit cele mai importante și tipice exemple. Pentru studii suplimentare și obținerea celor mai detaliate informații despre acest utilitar, puteți consulta documentația oficială.

Dacă găsiți o eroare, evidențiați o bucată de text și faceți clic Ctrl+Enter.

Wireshark este un analizor de pachete de rețea. Captează fiecare pachet care intră sau iese dintr-o interfață de rețea și le arată într-un text frumos formatat. Este folosit de inginerii de rețea din întreaga lume.

Wireshark este multiplatformă și este disponibil pentru Linux, Windows și Mac OS. Obțineți aceeași experiență de utilizator în orice sistem de operare pe care îl utilizați.

Pentru a afla mai multe despre Wireshark, vizitați site-ul oficial al Wireshark la https://www.wireshark.org

În acest articol, voi face cum tu cum se instalează Wireshark pe Ubuntu și cum se folosește. Folosesc Ubuntu 18.04 LTS pentru demonstrație. Dar ar trebui să funcționeze pe orice versiune LTS a Ubuntu încă acceptată la momentul scrierii acestui articol. Să începem.

Instalați Wireshark:

Wireshark este disponibil în depozitul oficial de pachete al Ubuntu 14.04 LTS și mai târziu. Deci este foarte ușor de instalat.

Mai întâi actualizați memoria cache a depozitului de pachete APT cu următoarea comandă:

$ sudo apt update

Cache-ul depozitului de pachete APT ar trebui să fie actualizat.

Acum, rulați următoarea comandă pentru a instala Wireshark pe mașina dvs. Ubuntu:

$ sudo apt install wireshark

Acum apăsați yși apoi apăsați .

În mod implicit, Wireshark trebuie pornit ca rădăcină(se poate face și cu sudo) privilegii pentru a lucra. Dacă doriți să rulați Wireshark fără rădăcină privilegii sau fără sudo, apoi selectați și apăsați .

Ar trebui instalat Wireshark.

Acum, dacă ați ales în secțiunea anterioară pentru a rula Wireshark fără acces root, apoi rulați următoarea comandă pentru a adăuga utilizatorul dvs. la wireshark grup:

$ sudo usermod -aG wireshark $(whoami )

În cele din urmă, reporniți computerul cu următoarea comandă:

$ sudo repornire

Pornirea Wireshark:

Acum că Wireshark este instalat, puteți porni Wireshark din Meniul aplicației de Ubuntu.

De asemenea, puteți rula următoarea comandă pentru a porni Wireshark de la terminal:

$ wireshark

Dacă nu ați activat Wireshark să ruleze fără rădăcină privilegii sau sudo, atunci comanda ar trebui să fie:

$ sudo wireshark

Wireshark ar trebui să pornească.

Capturarea pachetelor folosind Wireshark:

Când porniți Wireshark, veți vedea o listă de interfețe din care puteți captura pachete.

Există multe tipuri de interfețe pe care le puteți monitoriza folosind Wireshark, de exemplu, Cablat, Fără fir, USB și multe dispozitive externe. Puteți alege să afișați anumite tipuri de interfețe în ecranul de bun venit din secțiunea marcată a capturii de ecran de mai jos.

Aici, am enumerat doar Cablat interfețe de rețea.

Acum, pentru a începe capturarea pachetelor, trebuie doar să selectați interfața (în cazul meu, interfața ens33) și faceți clic pe Începeți să capturați pachete pictograma așa cum este marcată în captura de ecran de mai jos. De asemenea, puteți face dublu clic pe interfața din care doriți să capturați pachete pentru a începe capturarea pachetelor pe acea interfață anume.

De asemenea, puteți captura pachete către și de la mai multe interfețe în același timp. Doar apăsați și mențineți apăsat și faceți clic pe interfețele pe care doriți să capturați pachete către și de la și apoi faceți clic pe Începeți să capturați pachete pictograma așa cum este marcată în captura de ecran de mai jos.

Folosind Wireshark pe Ubuntu:

Capturez pachete pe ens33 interfață de rețea cu fir, așa cum puteți vedea în captura de ecran de mai jos. Momentan, nu am niciun pachet capturat.

Am dat ping pe google.com din terminal și după cum puteți vedea, multe pachete au fost capturate.

Acum puteți face clic pe un pachet pentru a-l selecta. Selectarea unui pachet ar afișa multe informații despre acel pachet. După cum puteți vedea, sunt listate informații despre diferitele niveluri ale protocolului TCP/IP.

De asemenea, puteți vedea datele RAW ale aceluiași pachet.

De asemenea, puteți face clic pe săgeți pentru a extinde pachetele de date pentru un anumit nivel de protocol TCP/IP.

Filtrarea pachetelor folosind Wireshark:

Într-o rețea ocupată, mii sau milioane de pachete vor fi capturate în fiecare secundă. Deci lista va fi atât de lungă încât va fi aproape imposibil să derulați prin listă și să căutați un anumit tip de pachet.

Lucrul bun este că în Wireshark, puteți filtra pachetele și puteți vedea numai pachetele de care aveți nevoie.

Pentru a filtra pachetele, puteți introduce direct expresia de filtrare în caseta de text, așa cum este marcată în captura de ecran de mai jos.

De asemenea, puteți filtra pachetele capturate de Wireshark grafic. Pentru a face acest lucru, faceți clic pe expresie... butonul așa cum este marcat în captura de ecran de mai jos.

Ar trebui să se deschidă o nouă fereastră, așa cum se arată în captura de ecran de mai jos. De aici puteți crea expresii de filtru pentru a căuta pachete foarte specific.

În numele domeniului secțiunea aproape toate protocoalele de rețea sunt listate. Lista este uriașă. Puteți introduce ce protocol căutați în Căutare caseta de text și numele domeniului secțiunea ar arăta pe cele care se potrivesc.

În acest articol, voi filtra toate pachetele DNS. Așa că am ales DNS numele domeniului de la numele domeniului listă. De asemenea, puteți face clic pe săgeată pe orice protocol

Și faceți selecția dvs. mai specifică.

De asemenea, puteți utiliza operatori relaționali pentru a testa dacă un câmp este egal cu, nu este egal cu, mai mare decât sau mai mic decât o anumită valoare. Am căutat toate DNS IPv4 adresa care este egală cu 192.168.2.1 după cum puteți vedea în captura de ecran de mai jos.

Expresia filtrului este afișată și în secțiunea marcată a capturii de ecran de mai jos. Aceasta este o modalitate excelentă de a învăța cum să scrieți expresii de filtru în Wireshark.

După ce ați terminat, faceți clic pe O.K.

Acum faceți clic pe pictograma marcată pentru a aplica filtrul.

După cum puteți vedea, sunt afișate doar pachetele de protocol DNS.

Oprirea capturii pachetelor în Wireshark:

Puteți face clic pe pictograma roșie așa cum este marcată în captura de ecran de mai jos pentru a opri capturarea pachetelor Wireshark.

Salvarea pachetelor capturate într-un fișier:

Puteți face clic pe pictograma marcată pentru a salva pachetele capturate într-un fișier pentru utilizare ulterioară.

Acum selectați un folder de destinație, introduceți numele fișierului și faceți clic pe Salvați.

Fișierul ar trebui salvat.

Acum puteți deschide și analiza oricând pachetele salvate. Pentru a deschide fișierul, accesați Fişier > deschis de la Wireshark sau presa + o

Apoi selectați fișierul și faceți clic pe deschis.

Pachetele capturate ar trebui să fie încărcate din fișier.

Așa instalezi și folosești Wireshark pe Ubuntu. Mulțumesc că ai citit acest articol.


închide