„Wireshark“

HTTP analizė naudojant „Wireshark“

HTTP analizė naudojant „Wireshark“

Kas yra HTTP?

Pirma, visa HTTP forma yra „HyperText Transfer Protocol“. HTTP yra taikomojo sluoksnio protokolas pagal ISO arba TCP / IP modelį. Žiūrėkite žemiau esančiame paveikslėlyje, kad sužinotumėte HTTP, kuris yra programos sluoksnyje.

HTTP naudoja pasaulinis internetas (w.w.w) ir jis apibrėžia, kaip pranešimai formatuojami ir perduodami naršyklėje. Taigi HTTP nustato, kokius veiksmus reikia atlikti, kai naršyklė gauna HTTP komandą. Be to, HTTP apibrėžia HTTP komandos perdavimo taisykles norint gauti duomenis iš serverio.

Pvz., Kai įvedate URL naršyklėje („Internet Explorer“, „Chrome“, „Firefox“, „Safari“ ir kt.), Jis iš tikrųjų siunčia HTTP komandą į serverį.Ir serveris atsako naudodamas tinkamą komandą.

HTTP metodai:

Yra keletas HTTP / 1 metodų rinkinių.1 (tai yra HTTP versija)

GAUTI, GALVOTI, PASKELBTI, ĮDĖTI, IŠTRINTI, PRIJUNGTI, PASIRINKTI ir PASEKTI.

Mes nenagrinėsime kiekvieno metodo, o mes sužinosime apie gana dažnai matomus metodus.Toks kaip

GAUTI: GET užklausa prašo duomenų iš žiniatinklio serverio. Tai yra pagrindinis naudojamas dokumento grąžinimo metodas. Pamatysime vieną praktinį šio metodo pavyzdį.

PAŠTAS: POST metodas naudojamas, kai jo reikia norint išsiųsti duomenis į serverį.

HTTP yra „Wiresahark“:

Išbandykime ką nors praktiško, kad suprastume, kaip veikia HTTP ?

Taigi šiame pavyzdyje mes atsisiųsime „Alisa.txt “(Duomenų failas yra serveryje) nuo „Gaia.cs.umass.edu “ serverio.

Komplektai:

  1. Atidarykite URL http: // gaia.cs.umass.edu / wireshark-labs / alice.txt [Mes žinome visą URL, skirtą atsisiųsti „alice“.txt] kompiuterio naršyklėje.
  2. Dabar naršyklėje matome atsisiųstą failą. Čia yra ekrano kopija

  1. Lygiagrečiai mes fiksuojame paketus „Wireshark“.

HTTP paketų mainai „Wireshark“:

Prieš eidami į HTTP turėtume žinoti, kad HTTP naudoja 80 prievadą ir TCP kaip transporto sluoksnio protokolą [TCP paaiškinsime kitoje temos diskusijoje].

Dabar pažiūrėkime, kas nutiks tinkle, kai įdėsime tą URL ir paspausime „Enter“ naršyklėje.

Čia yra ekrano kopija

TCP 3 krypčių rankos paspaudimas -> HTTP OK -> TCP duomenys [alice turinys.txt] ->

HTTP-OK

Dabar pažiūrėkime, kas yra HTTP GET ir HTTP OK paketuose.

Pastaba: TCP mainus paaiškinsime kitoje temos diskusijoje.

HTTP GAUTI:

Atlikus TCP 3 krypčių paspaudimą [SYN, SYN + ACK ir ACK paketai], HTTP GET užklausa siunčiama į serverį, o čia yra svarbūs paketo laukai.

1.Prašymo metodas: GAUTI ==> Paketas yra HTTP GET .

2.Užklausa URI: / wireshark-labs / alice.txt ==> Klientas prašo failo alice.txt pateikiama / Wireshark-labs

3.Prašyti versijos: HTTP / 1.1 ==> Tai 1 HTTP versija.1

4.Priimti: text / html, application / xhtml + xml, image / jxr, * / * ==> Nurodo serveriui apie failo, kurį jis gali priimti [kliento naršyklė], tipą. Čia klientas laukia Alice.txt, kuris yra teksto tipas.

5.Priimti kalbą: lt-JAV ==> Priimtas kalbos standartas.

6.Vartotojo atstovas: „Mozilla“ / 5.0 („Windows NT 10“.0; WOW64; Tridentas / 7.0; rv: 11.0) kaip Gecko ==> Kliento pusės naršyklės tipas. Net jei mes naudojome „Internet Explorer“, bet matome tai visada / maksimalus laikas, sako „Mozilla“

7.Priimti-koduoti: gzip, ištuštinkite ==> Priimta koduotė kliento pusėje.

8.Šeimininkas: gaia.cs.umass.edu ==> Tai yra žiniatinklio serverio pavadinimas, į kurį klientas siunčia HTTP GET užklausą.

9.Ryšys: „Keep-Alive“ ==> Ryšys kontroliuoja, ar pasibaigus dabartinei operacijai tinklo ryšys lieka atidarytas. Ryšio tipas yra gyvas.

Čia pateikiama HTTP-GET paketų laukų ekrano kopija

HTTP gerai:

Po TCP duomenų [alice turinys.txt] sėkmingai išsiųstas Klientui siunčiamas HTTP OK ir čia yra svarbūs paketo laukai.
1. Atsakymo versija: HTTP / 1.1 ==> Čia serveris taip pat 1 HTTP versijoje.1
2.Būsenos kodas: 200 ==> Serverio atsiųstas būsenos kodas.
3.Atsakymo frazė: Gerai ==> Serverio atsiųsta atsakymo frazė.

Taigi nuo 2 iki 3 gauname 200 OK, o tai reiškia, kad užklausa [HTTP GET] pavyko.

4.Data: 2019 m. Vasario 10 d., Sekmadienis, 06:24:19 GMT ==> Dabartinė data, laikas GMT, kai serveris gavo HTTP GET.
5.Serveris: Apache / 2.4.6 („CentOS“) „OpenSSL / 1“.0.2 tūkst. Kadrų PHP / 5.4.16 mod_perl / 2.0.10 Perl / v5.16.3 ==> Išsami serverio informacija ir konfigūracijų versijos.
6.Paskutinį kartą keistas: Šeštadienis, 2004 m. Rugpjūčio 21 d. 14:21:11 GMT ==> Paskutinė failo „alice“ data ir laikas.txt “.
7.ETag: „2524a-3e22aba3a03c0“ ==> ETag rodo, kad turinys nėra pakeistas, kad būtų lengviau išsaugoti talpyklą ir pagerinti našumą. Arba, jei turinys pasikeitė, etagai yra naudingi, kad būtų išvengta tuo pačiu metu atnaujinamų išteklių perrašymo.
8. Priimti diapazonus: baitai ==> Baitas yra serveryje naudojamas turinio vienetas.
9.Turinio ilgis: 152138 ==> Tai yra bendras alisų ilgis.txt baitais.
10. Išlaikyti gyvą: skirtasis laikas = 5, maks. = 100 ==> Palaikykite gyvus parametrus.
11.Ryšys: Išlaikyti gyvą ==> Ryšys kontroliuoja, ar pasibaigus dabartinei operacijai tinklo ryšys lieka atidarytas. Ryšio tipas yra gyvas.
12.Turinio tipas: tekstas / paprastas; simbolis = UTF-8 ==> Turinys [alice.txt] tipas yra tekstas, o simbolių rinkinys yra UTF-8.

Čia pateikiama įvairių HTTP OK paketo laukų ekrano kopija.

Taigi dabar mes žinome, kas nutinka, kai prašome bet kokio failo, esančio žiniatinklio serveryje.

Išvada:

HTTP yra paprastas programos protokolas, kurį naudojame kiekvieną dieną savo gyvenime. Bet tai nėra saugu, todėl buvo įdiegtas HTTPS. Tas „S“ reiškia saugumą. Štai kodėl maksimalus žiniatinklio serverio vardas prasideda nuo https: // [žiniatinklio vardas]. Tai reiškia, kad visas ryšys tarp jūsų ir serverio yra užšifruotas. Ateityje turėsime atskirą diskusiją apie šį HTTPS.

5 geriausios žaidimų fiksavimo kortos
Visi mes matėme ir pamėgome srautinius žaidimus „YouTube“. „PewDiePie“, „Jakesepticye“ ir „Markiplier“ yra tik vieni iš geriausių žaidėjų, kurie uždir...
Kaip sukurti žaidimą „Linux“
Prieš dešimtmetį nedaugelis „Linux“ vartotojų numatė, kad jų mėgstama operacinė sistema vieną dieną bus populiari komercinių vaizdo žaidimų žaidimų pl...
Atvirojo kodo komercinių žaidimų variklių uostai
Nemokami atvirojo kodo ir įvairių platformų žaidimų varikliai gali būti naudojami žaidžiant senus ir kai kuriuos gana naujus žaidimų pavadinimus. Šiam...