Wireshark ir de-facto pārejas rīks vairākām tīkla problēmām, kas atšķiras no tīkla problēmu novēršanas, drošības problēmu pārbaudes, aizdomīgas lietojumprogrammas tīkla trafika pārbaudes, protokolu ieviešanas atkļūdošanas, kā arī tīkla protokolu mācīšanās mērķiem utt.
Wireshark projekts tika uzsākts 1998. gadā. Pateicoties globālā tīkla eksperta brīvprātīgajam ieguldījumam, tas turpina atjaunināt jaunās tehnoloģijas un šifrēšanas standartus. Tādējādi tas neapšaubāmi ir viens no labākajiem pakešu analizatora rīkiem, un to kā standarta komerciālu rīku izmanto dažādas valsts aģentūras, izglītības institūti un bezpeļņas organizācijas.
Wireshark rīks sastāv no bagātīga funkciju kopuma. Daži no tiem ir šādi:
- Daudzplatforma: tā ir pieejama Unix, Mac un Window sistēmām.
- Tas uztver paketes no dažādiem tīkla nesējiem, t.i.e., Bezvadu LAN, Ethernet, USB, Bluetooth utt.
- Tas atver pakešu failus, kurus tver citas programmas, piemēram, Oracle snoop un atmsnoop, Nmap, tcpdump, Microsoft Network Monitor, SNORT un daudzi citi.
- Tas saglabā un eksportē tvertos pakešdatus dažādos formātos (CSV, XML, vienkāršā teksta utt.).).
- Tas nodrošina aprakstu atbalstu protokoliem, tostarp SSL, WPA / WPA2, IPsec un daudziem citiem.
- Tas ietver uztveršanas un attēlošanas filtrus.
Tomēr Wireshark nebrīdinās jūs par jebkādu ļaunprātīgu darbību. Tas tikai palīdzēs jums pārbaudīt un noteikt, kas notiek jūsu tīklā. Turklāt tas analizēs tikai tīkla protokolu / darbības un neveiks citas darbības, piemēram, pakešu sūtīšanu / pārtveršanu.
Šajā rakstā ir sniegta padziļināta apmācība, kas sākas ar pamatiem (t.i.e., filtrēšana, Wireshark tīkla slāņi utt.) un jūs aizvedīs uz satiksmes analīzes dziļumu.
Wireshark filtri
Wireshark ir aprīkots ar jaudīgiem filtru dzinējiem, uztveršanas filtriem un displeja filtriem, lai noņemtu tīkla troksni vai jau uztverto trafiku. Šie filtri sašaurina nevajadzīgo datplūsmu un parāda tikai tās paketes, kuras vēlaties redzēt. Šī funkcija palīdz tīkla administratoriem novērst radušās problēmas.
Pirms iedziļināties filtru detaļās. Gadījumā, ja jums rodas jautājums, kā tvert tīkla trafiku bez filtra, varat nospiest taustiņu kombināciju Ctrl + E vai Wireshark saskarnē pāriet uz Capture opciju un noklikšķiniet uz Sākt.
Tagad iedziļināsimies pieejamos filtros.
Uzņemšanas filtrs
Wireshark nodrošina atbalstu neapstrādātu pakešu tveršanas izmēru samazināšanai, ļaujot izmantot tveršanas filtru. Bet tas uztver tikai pakešu trafiku, kas atbilst filtram, un neņem vērā pārējo filtru. Šī funkcija palīdz jums uzraudzīt un analizēt konkrētas lietojumprogrammas trafiku, izmantojot tīklu.
Nejauciet šo filtru ar displeja filtriem. Tas nav displeja filtrs. Šis filtrs parādās galvenajā logā, kas nepieciešams, lai iestatītu pirms pakešu tveršanas sākšanas. Turklāt jūs nevarat modificēt šo filtru uzņemšanas laikā.
Jūs varat doties uz Uzņemt saskarnes opciju un atlasiet Tveriet filtrus.
Jums tiks piedāvāts logs, kā parādīts momentuzņēmumā. Jūs varat izvēlēties jebkuru filtru no filtru saraksta vai pievienot / izveidot jaunu filtru, noklikšķinot uz + pogu.
Noderīgu uztveršanas filtru saraksta piemēri:
- resursdatora ip_adrese - uztver trafiku, tikai starp konkrēto sazinoties IP adresi
- neto 192.168. lpp.0.0/24 - uztver trafiku starp IP adrešu diapazoniem / CIDR
- 53. osta - uztver DNS trafiku
- tcp portrange 2051-3502 - uztver TCP trafiku no ostas diapazona 2051-3502
- osta nav 22 un 21 - tver visu trafiku, izņemot SSH un FTP
Displeja filtrs
Displeja filtri ļauj paslēpt dažas paketes no jau notvertā tīkla trafika. Šos filtrus var pievienot virs uzņemto sarakstu, un tos var modificēt, veicot lidojumu. Tagad jūs varat kontrolēt un sašaurināt paketes, kurām vēlaties koncentrēties, slēpjot nevajadzīgās paketes.
Filtrus displeja filtru rīkjoslā var pievienot tieši virs pirmās rūts, kurā ir informācija par pakešu informāciju. Šo filtru var izmantot, lai parādītu paketes, pamatojoties uz protokolu, avota IP adresi, galamērķa IP adresi, portiem, lauku vērtību un informāciju, lauku salīdzinājumu un daudz ko citu.
Pareizi! Izmantojot loģiskos operatorus, piemēram, ==, varat izveidot filtru kombināciju.!=, ||, && utt.
Daži viena TCP protokola un kombinētā filtra displeja filtru piemēri ir parādīti zemāk:
Tīkla slāņi Wireshark
Izņemot pakešu pārbaudi, Wireshark piedāvā OSI slāņus, kas palīdz traucējummeklēšanas procesā. Wireshark parāda slāņus apgrieztā secībā, piemēram:
- Fiziskais slānis
- Datu saites slānis
- Tīkla slānis
- Transporta slānis
- Lietojuma slānis
Ņemiet vērā, ka Wireshark ne vienmēr parāda fizisko slāni. Tagad mēs rakīsimies katrā slānī, lai saprastu svarīgo pakešu analīzes aspektu un to, ko katrs slānis parāda Wireshark.
Fiziskais slānis
Fiziskais slānis, kā parādīts nākamajā momentuzņēmumā, parāda kadra fizisko kopsavilkumu, piemēram, informāciju par aparatūru. Kā tīkla administrators jūs parasti neiegūstat informāciju no šī slāņa.
Datu saites slānis
Nākamais datu saites slānis satur avota un mērķa tīkla kartes adresi. Tas ir salīdzinoši vienkāršs, jo tas rāmi no klēpjdatora piegādā tikai maršrutētājam vai nākamajam blakus esošajam rāmim fiziskajā vidē.
Tīkla slānis
Tīkla slānis parāda avota un galamērķa IP adreses, IP versiju, galvenes garumu, kopējo pakešu garumu un citas informācijas daudzumu.
Transporta slānis
Šajā slānī Wireshark parāda informāciju par transporta slāni, kas sastāv no SRC porta, DST porta, galvenes garuma un kārtas numura, kas mainās katrai paketei.
Lietojuma slānis
Pēdējā slānī varat redzēt, kāda veida dati tiek sūtīti pa datu nesēju un kura lietojumprogramma tiek izmantota, piemēram, FTP, HTTP, SSH utt.
Satiksmes analīze
ICMP trafika analīze
ICMP tiek izmantots kļūdu ziņošanai un testēšanai, nosakot, vai dati laikā sasniedz paredzēto galamērķi. Lietojumprogramma Ping izmanto ICMP ziņojumus, lai pārbaudītu savienojuma ātrumu starp ierīcēm un ziņotu, cik ilgi pakete nonāk, lai sasniegtu galamērķi, un pēc tam atgrieztos.
Pingam tīklā esošajai ierīcei tiek izmantots ICMP_echo_request ziņojums, un ierīce atbild ar ziņojumu ICMP_echo_reply. Lai tvertu Wireshark paketes, sāciet Wireshark funkciju Capture, atveriet termināli un izpildiet šādu komandu:
ubuntu $ ubuntu: ~ $ ping google.comIzmantot Ctrl + C lai izbeigtu pakešu uztveršanas procesu Wireshark. Zemāk esošajā momentuzņēmumā varat pamanīt ICMP pakete nosūtīta = saņemta ICMP pakete ar 0% pakešu zudumu.
Wireshark uztveršanas rūtī atlasiet pirmo ICMP_echo_request paketi un novērojiet informāciju, atverot vidējo Wireshark rūti.
Tīkla slānī varat pamanīt avotu Src kā manu ip_adresi, turpretim galamērķi Dst ip_address ir Google servera, savukārt IP slānis protokolu min kā ICMP.
Tagad mēs tuvināmies ICMP pakešu detaļām, paplašinot interneta vadības ziņojumu protokolu un atšifrējot iezīmētos lodziņus zemāk esošajā momentuzņēmumā:
- Tips: 08 bitu lauks, kas iestatīts uz 8, nozīmē Echo pieprasījuma ziņojumu
- Kods: ICMP paketēm vienmēr ir nulle
- kontrolsumma: 0x46c8
- Identifikācijas numurs (BE): 19797
- Identifikācijas numurs (LE): 21837
- Secības numurs (BE): 1
- Secības numurs (LE): 256
Identifikators un kārtas numuri tiek saskaņoti, lai palīdzētu noteikt atbildes uz atbalss pieprasījumiem. Līdzīgi pirms paketes pārsūtīšanas kontrolsumma tiek aprēķināta un pievienota laukam, lai salīdzinātu ar saņemtā datu paketes kontrolsummu.
Tagad ICMP atbildes paketē ievērojiet IPv4 slāni. Avota un mērķa adreses ir mainītas.
ICMP slānī pārbaudiet un salīdziniet šādus svarīgos laukus:
- Tips: 08 bitu lauks, kas iestatīts uz 0, nozīmē atbalss atbildes ziņojumu
- Kods: ICMP paketēm vienmēr ir 0
- kontrolsumma: 0x46c8
- Identifikācijas numurs (BE): 19797
- Identifikācijas numurs (LE): 21837
- Secības numurs (BE): 1
- Secības numurs (LE): 256
Jūs varat pamanīt, ka ICMP atbilde atkārto to pašu pieprasījuma kontrolsummu, identifikatoru un kārtas numuru.
HTTP trafika analīze
HTTP ir hiperteksta pārsūtīšanas lietojumprogrammas slāņa protokols. To izmanto tīmeklis un definē noteikumus, kad HTTP klients / serveris pārsūta / saņem HTTP komandas. Visbiežāk izmantotās HTTP metodes, piemēram, POST un GET:
POST: šo metodi izmanto, lai droši nosūtītu serverim konfidenciālu informāciju, kas neparādās URL.
GŪT: šo metodi parasti izmanto, lai izgūtu datus no adreses joslas no tīmekļa servera.
Pirms iedziļināties HTTP pakešu analīzē, vispirms īsi parādīsim TCP trīsvirzienu rokasspiedienu Wireshark.
TCP trīsvirzienu rokasspiediens
Trīsvirzienu rokasspiediena laikā klients sāk savienojumu, nosūtot SYN paketi un saņemot no servera SYN-ACK atbildi, kuru klients apstiprina. Mēs izmantosim komandu Nmap TCP connect scan, lai ilustrētu TCP rokasspiedienu starp klientu un serveri.
ubuntu $ ubuntu: ~ $ nmap -sT google.comWireshark pakešu uztveršanas rūtī ritiniet līdz loga augšdaļai, lai pamanītu dažādus trīs veidu rokasspiedienus, kas izveidoti, pamatojoties uz konkrētām ostām.
Izmantojiet tcp.osta == 80 filtru, lai redzētu, vai savienojums ir izveidots, izmantojot 80. portu. Jūs varat pamanīt pilnīgu trīsvirzienu rokasspiedienu, t.i.e., SYN, SYN-ACK, un ACK, momentuzņēmuma augšdaļā, kas ilustrē uzticamu savienojumu.
HTTP pakešu analīze
Lai veiktu HTTP pakešu analīzi, dodieties uz savu pārlūkprogrammu un ielīmējiet Wireshark dokumentācijas URL: http: // www.vafeļu ražotājs.lv un lejupielādējiet lietotāja rokasgrāmatas PDF. Tikmēr Wireshark ir jāaptver visas paketes.
Lietojiet HTTP filtru un meklējiet HTTP IEGŪT pieprasījumu, ko klients nosūtīja serverim. Lai skatītu HTTP paketi, atlasiet to un vidējā rūtī izvērsiet lietojumprogrammas slāni. Pieprasījumā var būt daudz galvenes, atkarībā no vietnes un pārlūkprogrammas. Mēs analizēsim mūsu pieprasījumā esošās galvenes zemāk esošajā momentuzņēmumā.
- Pieprasījuma metode: HTTP pieprasījuma metode ir GET
- Saimnieks: identificē servera nosaukumu
- Lietotāja aģents: informē par klienta puses pārlūka veidu
- Pieņemt, pieņemt-kodēt, pieņemt valodu: informē serveri par faila tipu, pieņemto kodējumu klienta pusē, t.e., gzip utt., un pieņemtā valoda
- Kešatmiņas vadība: parāda, kā pieprasītā informācija tiek saglabāta kešatmiņā
- Pragma: parāda sīkfaila nosaukumu un vērtības, kuras pārlūkprogramma saglabā vietnei
- Savienojums: galvene, kas kontrolē, vai savienojums paliek atvērts pēc darījuma
Iekš HTTP OK paketi no servera uz klientu, novērojot informāciju hiperteksta pārsūtīšanas protokola slānī, tiek parādīts200 OK“. Šī informācija norāda uz normālu veiksmīgu pārsūtīšanu. HTTP OK paketē varat novērot dažādas galvenes, salīdzinot ar HTTP IEGŪT paciņa. Šajās galvenēs ir informācija par pieprasīto saturu.
- Atbildes versija: informē par HTTP versiju
- Statusa kods, atbildes frāze: nosūta serveris
- Datums: laiks, kad serveris saņēma HTTP GET paketi
- Serveris: servera informācija (Nginx, Apache utt.)
- Satura veids: satura veids (json, txt / html utt.)
- Satura garums: kopējais satura garums; mūsu fails ir 39696 baiti
Šajā sadaļā jūs uzzinājāt, kā darbojas HTTP un kas notiek ikreiz, kad mēs pieprasām saturu tīmeklī.
Secinājums
Wireshark ir vispopulārākais un spēcīgākais tīkla sniffer un analīzes rīks. To plaši izmanto ikdienas pakešu analīzes uzdevumos dažādās organizācijās un institūtos. Šajā rakstā mēs esam izpētījuši dažas iesācēju un vidēja līmeņa Wireshark tēmas Ubuntu. Mēs esam iemācījušies Wireshark piedāvāto filtru veidu pakešu analīzei. Mēs esam iekļāvuši tīkla slāņa modeli Wireshark un veikuši padziļinātu ICMP un HTTP pakešu analīzi.
Tomēr dažādu šī rīka aspektu apguve un izpratne ir ilgs grūts ceļojums. Tādējādi ir pieejamas daudzas citas tiešsaistes lekcijas un apmācības, kas palīdzēs jums atrast konkrētas Wireshark tēmas. Jūs varat sekot oficiālajai lietotāja rokasgrāmatai, kas pieejama Wireshark vietnē. Turklāt, kad esat izveidojis pamata izpratni par protokola analīzi, ieteicams izmantot arī tādu rīku kā Varonis, kas norāda uz iespējamiem draudiem, un pēc tam izmantojiet Wireshark, lai labāk izprastu.