Wireshark on de-facto tööriist mitme võrguprobleemi jaoks, mis erinevad võrgu tõrkeotsingust, turbeprobleemide uurimisest, kahtlase rakenduse võrguliikluse kontrollimisest, protokollide juurutuste silumisest koos võrguprotokollide õppimise eesmärkidega jne.
Wiresharki projekt algatati 1998. aastal. Tänu ülemaailmse võrgustike eksperdi vabatahtlikule panusele jätkab ta uute tehnoloogiate ja krüptimisstandardite värskendamist. Seega on see kaugelt üks parimatest pakettanalüsaatorite tööriistadest ning seda kasutavad erinevad valitsusasutused, haridusasutused ja mittetulundusühingud tavalise kaubandusliku tööriistana.
Wiresharki tööriist koosneb rikkalikust funktsioonide kogumist. Mõned neist on järgmised:
- Mitmeplatvormiline: see on saadaval Unixi, Maci ja Windowsi süsteemidele.
- See haarab pakette erinevatest võrgukandjatest, s.t.e., Traadita kohtvõrk, Ethernet, USB, Bluetooth jne.
- See avab pakettfailid, mis on hõivatud teiste programmidega, näiteks Oracle Snoop ja Atmsnoop, Nmap, tcpdump, Microsoft Network Monitor, SNORT ja paljud teised.
- See salvestab ja eksportib hõivatud pakettandmeid erinevates vormingutes (CSV, XML, tavaline tekst jne.).
- See pakub kirjeldustuge protokollidele, sealhulgas SSL, WPA / WPA2, IPsec ja paljud teised.
- See sisaldab jäädvustamise ja kuvamise filtreid.
Kuid Wireshark ei hoiata teid pahatahtliku tegevuse eest. See aitab teil ainult oma võrgus toimuvat kontrollida ja tuvastada. Pealegi analüüsib see ainult võrguprotokolli / toiminguid ega tee muid tegevusi, näiteks pakettide saatmine / pealtkuulamine.
Selles artiklis antakse põhjalik õpetus, mis algab põhitõdedest (st.e., filtreerimine, Wiresharki võrgukihid jne.) ja viib teid liiklusanalüüsi sügavusse.
Traadihai filtrid
Wiresharkil on võimsad filtrimootorid, püüdmisfiltrid ja ekraanifiltrid, et eemaldada võrgu müra või juba hõivatud liiklus. Need filtrid kitsendavad soovimatut liiklust ja kuvavad ainult pakette, mida soovite näha. See funktsioon aitab võrguadministraatoritel olemasolevatele probleemidele veaotsingut teha.
Enne filtrite üksikasjadega tutvumist. Kui soovite teada, kuidas võrguliiklust ilma filtrita hõivata, võite vajutada klahvikombinatsiooni Ctrl + E või minna Wiresharki liidese suvandisse Capture ja klõpsata nuppu Start.
Nüüd uurime sügavuti saadaolevaid filtreid.
Jäädvusta filter
Wireshark pakub toorpakettide hõivamise suuruse vähendamiseks tuge, lubades teil kasutada hõivefiltrit. Kuid see haarab ainult filtriga sobiva pakettaliikluse ja jätab ülejäänud osa tähelepanuta. See funktsioon aitab teil võrgu abil jälgida ja analüüsida konkreetse rakenduse liiklust.
Ärge segage seda filtrit kuvafiltritega. See ei ole kuvafilter. See filter kuvatakse peaaknas, mis on vajalik seadistamiseks enne pakettide hõivamise alustamist. Pealegi ei saa seda filtrit jäädvustamise ajal muuta.
Võite minna Jäädvusta liidese valik ja valige Jäädvusta filtrid.
Teil palutakse kuvada aken, nagu hetkepildis näidatud. Filtrite loendist saate valida mis tahes filtri või lisada / luua uue filtri, klõpsates nuppu + nuppu.
Näited kasulike püüdmisfiltrite loendist:
- host ip_adress - hõivab liiklust ainult konkreetse suhtleva IP-aadressi vahel
- net 192.168.0.0/24 - hõivab liiklust IP-aadressivahemike / CIDR-ide vahel
- sadam 53 - hõivab DNS-liikluse
- tcp portrange 2051-3502 - hõivab TCP-liikluse sadamavahemikust 2051-3502
- sadam mitte 22 ega 21 - hõivata kogu liiklus, välja arvatud SSH ja FTP
Kuva filter
Kuvafiltrid võimaldavad peita mõned paketid juba hõivatud võrguliikluse eest. Neid filtreid saab lisada jäädvustatud loendi kohale ja neid saab muuta käigu pealt. Nüüd saate tarbetuid pakette varjates juhtida ja kitsendada pakette, millele soovite keskenduda.
Filtrite saate lisada ekraanifiltri tööriistaribale kohe esimese pakettide teavet sisaldava paani kohal. Seda filtrit saab kasutada pakettide kuvamiseks protokolli, allika IP-aadressi, sihtkoha IP-aadressi, pordide, väljade väärtuse ja teabe, väljade võrdluse ja palju muu põhjal.
Täpselt nii! Võite luua filtrite kombinatsiooni loogiliste operaatorite abil, näiteks ==.!=, ||, && jne.
Allpool on toodud näited ühe TCP-protokolli ja kombineeritud filtri kuvafiltritest:
Võrgukihid Wiresharkis
Peale pakettide kontrolli pakub Wireshark OSI kihte, mis aitavad tõrkeotsingus. Wireshark näitab kihte vastupidises järjekorras, näiteks:
- Füüsiline kiht
- Andmelingi kiht
- Võrgukiht
- Transpordikiht
- Rakenduskiht
Pange tähele, et Wireshark ei näita alati füüsilist kihti. Kaevame nüüd igasse kihti, et mõista pakettanalüüsi olulist aspekti ja seda, mida iga kiht Wiresharkis esitleb.
Füüsiline kiht
Füüsiline kiht, nagu on näidatud järgmises hetktõmmis, esitab kaadri füüsilise kokkuvõtte, näiteks riistvarateabe. Võrguadministraatorina ei eralda te tavaliselt sellest kihist teavet.
Andmelingi kiht
Järgmine andmesidekiht sisaldab allika ja sihtkoha võrgukaardi aadressi. See on suhteliselt lihtne, kuna see toimetab kaadri sülearvutist ainult ruuterisse või järgmisesse külgnevasse kaadrisse füüsilises keskkonnas.
Võrgukiht
Võrgukihil kuvatakse allika ja sihtkoha IP-aadressid, IP-versioon, päise pikkus, paketi kogupikkus ja palju muud teavet.
Transpordikiht
Selles kihis kuvab Wireshark teavet transpordikihi kohta, mis koosneb SRC-pordist, DST-pordist, päise pikkusest ja järjekorranumbrist, mis muutub iga paketi jaoks.
Rakenduskiht
Viimases kihis näete, millist tüüpi andmeid meediumi kaudu saadetakse ja millist rakendust kasutatakse, näiteks FTP, HTTP, SSH jne.
Liikluse analüüs
ICMP liikluse analüüs
ICMP-d kasutatakse vigade teatamiseks ja testimiseks, tehes kindlaks, kas andmed jõuavad ettenähtud sihtkohta õigeaegselt või mitte. Pingi utiliit kasutab ICMP-sõnumeid, et testida seadmetevahelise ühenduse kiirust ja teatada, kui palju aega kulub paketil sihtkohta jõudmiseks ning seejärel tagasi tulla.
Ping kasutab võrgus olevale seadmele ICMP_echo_request sõnumit ja seade vastab ICMP_echo_reply sõnumiga. Pakettide hõivamiseks Wiresharkis käivitage Wiresharki funktsioon Capture, avage terminal ja käivitage järgmine käsk:
ubuntu $ ubuntu: ~ $ ping google.comKasutage Ctrl + C pakettide püüdmise protsessi lõpetamiseks Wiresharkis. Allolevas hetkepildis võite märgata ICMP pakett saadetud = ICMP pakett vastu võetud 0% paketikaoga.
Valige Wiresharki püüdmispaanil esimene ICMP_echo_request pakett ja jälgige üksikasju, avades keskmise Wiresharki paani.
Võrgukihis saate märgata allikat Src minu ip_aadressina, samas kui sihtkoht Dst ip_address on Google'i server, samas kui IP-kiht nimetab protokolli ICMP-ks.
Nüüd suurendame ICMP-paketi üksikasju, laiendades Interneti-juhtimise sõnumiprotokolli ja dekodeerime allolevas hetkepildis esile tõstetud ruudud:
- Tüüp: 08-bitine väli seatud väärtusele 8 tähendab kaja päringusõnumit
- Kood: ICMP pakettide puhul alati null
- kontrollsumma: 0x46c8
- Identifitseerimisnumber (BE): 19797
- Identifitseerimisnumber (LE): 21837
- Järjenumber (BE): 1
- Järjenumber (LE): 256
Identifikaator ja järjekorranumbrid on sobitatud, et hõlbustada kajasoovidele vastuste tuvastamist. Samamoodi arvutatakse kontrollsumma enne pakettide edastamist väljale, et võrrelda seda vastuvõetud andmepaketi kontrollsummaga.
Nüüd märkige ICMP vastuspaketis IPv4 kihti. Lähte- ja sihtkoha aadressid on vahetatud.
Kontrollige ja võrrelge ICMP-kihis järgmisi olulisi välju:
- Tüüp: 0-bitine väli seatud väärtusele 0 tähendab kaja vastuse sõnumit
- Kood: ICMP pakettide jaoks alati 0
- kontrollsumma: 0x46c8
- Identifitseerimisnumber (BE): 19797
- Identifitseerimisnumber (LE): 21837
- Järjenumber (BE): 1
- Järjenumber (LE): 256
Võite märgata, et ICMP vastus kajastab sama päringu kontrollsummat, identifikaatorit ja järjekorranumbrit.
HTTP liikluse analüüs
HTTP on Hypertext Transfer rakenduse kihi protokoll. Seda kasutab ülemaailmne veeb ja see määratleb reeglid, kui HTTP klient / server edastab / võtab vastu HTTP käske. Kõige sagedamini kasutatavad HTTP-meetodid ae POST ja GET:
POSTITAMINE: seda meetodit kasutatakse konfidentsiaalse teabe turvaliseks saatmiseks serverile, mida URL-is ei kuvata.
Hangi: seda meetodit kasutatakse tavaliselt veebiserverilt aadressiribalt andmete hankimiseks.
Enne HTTP-pakettide analüüsi süvenemist demonstreerime kõigepealt Wiresharkis TCP kolmepoolset käepigistust.
TCP kolmepoolne käepigistus
Kolmesuunalises käepigistuses algatab klient ühenduse, saates SYN-paketi ja saades serverilt SYN-ACK-vastuse, mille klient kinnitab. TCP käepigistuse illustreerimiseks kasutame kliendi ja serveri vahel käsku Nmap TCP connect scan.
ubuntu $ ubuntu: ~ $ nmap -sT google.comKerige Wiresharki pakettide hõivamise paanil akna ülaossa, et märgata konkreetse pordi põhjal loodud erinevaid kolmepoolseid käepigistusi.
Kasuta tcp.port == 80 filter, et näha, kas ühendus on loodud pordi 80 kaudu. Võite märgata täielikku kolmepoolset käepigistust, st.e., SYN, SYN-ACK, ja ACK, pildi ülaosas esile tõstetud, mis illustreerib usaldusväärset ühendust.
HTTP pakettide analüüs
HTTP-pakettanalüüsi jaoks minge oma brauserisse ja kleepige Wiresharki dokumentatsiooni URL: http: // www.vahvliküpsetaja.com ja laadige alla kasutusjuhendi PDF. Vahepeal peab Wireshark kõiki pakette hõivama.
Rakendage HTTP-filter ja otsige HTTP GET kliendi poolt serverile saadetud päring. HTTP-paketi vaatamiseks valige see ja laiendage keskmisel paanil rakenduskihti. Taotluses võib olla palju päiseid, olenevalt ka veebisaidist ja brauserist. Analüüsime allpool olevas hetkepildis meie taotluses sisalduvaid päiseid.
- Taotluse meetod: HTTP-päringumeetod on GET
- Host: tuvastab serveri nime
- Kasutaja agent: informeerib kliendipoolset brauseritüüpi
- Nõustu, aktsepteeri-kodeeri, aktsepteeri keelt: teavitab serverit failitüübist, aktsepteeritud kodeerimisest kliendipoolel, s.t.e., gzip jne., ja aktsepteeritud keel
- Vahemälu juhtimine: näitab, kuidas soovitud teave on vahemällu salvestatud
- Pragma: näitab küpsise nime ja väärtusi, mida brauser veebisaidi jaoks hoiab
- Ühendus: päis, mis kontrollib, kas ühendus jääb pärast tehingut avatuks
Aastal HTTP OK serverist kliendini, näitab hüpertekstiedastusprotokolli kihis olevat teavet200 OK". See teave näitab tavalist edukat ülekannet. HTTP OK paketis saate jälgida erinevaid päiseid võrreldes HTTP GET pakett. Need päised sisaldavad teavet taotletud sisu kohta.
- Vastuse versioon: teavitab HTTP versioonist
- Olekukood, vastuse fraas: serveri saadetud
- Kuupäev: aeg, mil server sai HTTP GET paketi
- Server: serveri üksikasjad (Nginx, Apache jne.)
- Sisu tüüp: sisu tüüp (json, txt / html jne.)
- Sisu pikkus: sisu kogupikkus; meie fail on 39696 baiti
Selles jaotises olete õppinud, kuidas HTTP töötab ja mis juhtub alati, kui me veebis sisu taotleme.
Järeldus
Wireshark on populaarseim ja võimsaim võrgusepistamise ja analüüsimise tööriist. Seda kasutatakse laialdaselt pakettide analüüsi igapäevastes ülesannetes erinevates organisatsioonides ja instituutides. Selles artiklis oleme uurinud mõnda Ubuntu Wiresharki algaja ja keskmise taseme teemat. Oleme õppinud Wiresharki pakettanalüüsi jaoks pakutavate filtrite tüüpi. Oleme Wiresharkis kajastanud võrgukihi mudelit ja teinud põhjaliku ICMP ja HTTP pakettanalüüsi.
Selle tööriista erinevate aspektide õppimine ja mõistmine on aga pikk raske teekond. Seetõttu on saadaval palju muid veebiloenguid ja õpetusi, mis aitavad teil Wiresharki teatud teemadel ringi liikuda. Võite jälgida Wiresharki veebisaidil olevat ametlikku kasutusjuhendit. Veelgi enam, kui olete protokollianalüüsi põhiteadmised üles ehitanud, on soovitatav kasutada ka sellist tööriista nagu Varonis, mis juhatab teid potentsiaalsele ohule, ja seejärel parema mõistmise huvides uurimiseks Wiresharki.