HTTP elemzés Wireshark használatával

Http Analysis Using Wireshark



Mi az a HTTP?

Először is a HTTP teljes formája a HyperText Transfer Protocol. A HTTP egy alkalmazásréteg -protokoll ISO vagy TCP/IP modellben. Lásd az alábbi képet, hogy megtudja a HTTP -t, amely az alkalmazásréteg alatt található.







A HTTP -t a Világháló (w.w.w), és meghatározza, hogy a böngésző hogyan formázza és továbbítja az üzeneteket. Tehát a HTTP definiálja a szabályokat, hogy mit kell tenni, ha a böngésző HTTP parancsot kap. A HTTP továbbá szabályokat határoz meg a HTTP parancs továbbítására, hogy adatokat szerezzen be a szerverről.



Például, ha beír egy URL -t a böngészőbe (Internet Explorer, Chrome, Firefox, Safari stb.), Akkor valójában egy HTTP parancsot küld a szervernek. És a kiszolgáló megfelelő paranccsal válaszol.



HTTP módszerek:

Van néhány módszer a HTTP/1.1 -hez (ez a HTTP verzió)





GET, HEAD, POST, PUT, DELETE, CONNECT, OPTION és TRACE.

Nem részletezzük az egyes módszereket, hanem megismerjük azokat a módszereket, amelyeket gyakran látunk. Például



KAP: A GET kérés adatokat kér a webszervertől. Ez a fő módszer a dokumentumok visszakeresésére. Látni fogunk egy gyakorlati példát erre a módszerre.

POST: A POST módszert akkor használják, ha bizonyos adatokat el kell küldeni a szerverre.

A HTTP a Wiresahark:

Próbáljunk ki valami praktikusat a HTTP működésének megértéséhez.

Tehát ebben a példában letöltjük alice.txt (Adatfájl a kiszolgálón) tól től gaia.cs.umass.edu szerver.

Beállítások:

  1. Nyissa meg az URL -t http://gaia.cs.umass.edu/wireshark-labs/alice.txt [Tudjuk az alice.txt letöltésének teljes URL -jét] a számítógép böngészőjében.
  2. Most látjuk a letöltött fájlt a böngészőben. Itt a képernyőkép

  1. Ezzel párhuzamosan rögzítjük a csomagokat a Wiresharkban.

HTTP csomagcserék a Wiresharkban:

Mielőtt belekezdenénk a HTTP -be, tudnunk kell, hogy a HTTP a 80 -as portot és a TCP -t használja szállítási réteg protokollként [A TCP -t egy másik témavita tárgyalja].

Most nézzük meg, mi történik a hálózaton, amikor beírjuk ezt az URL -t, és megnyomjuk az enter billentyűt a böngészőben.

Itt a képernyőkép

TCP 3-utas kézfogás ——-> HTTP OK ——-> TCP adatok [alice.txt tartalma] ——->

HTTP-OK

Most nézzük meg, mi van a HTTP GET és a HTTP OK csomagokban.

Megjegyzés: A TCP cseréket egy másik témavita keretében ismertetjük.

HTTP GET:

A TCP háromirányú kézfogás [SYN, SYN+ACK és ACK csomagok] befejezése után a HTTP GET kérést elküldi a szervernek, és itt vannak a csomag fontos mezői.

1. Kérési módszer: GET ==> A csomag HTTP GET.

2. Kérés URI: /wireshark-labs/alice.txt ==> Az ügyfél az alice.txt fájlt kéri a /Wireshark-labs alatt

3. Kéréses verzió: HTTP/1.1 ==> Ez a HTTP 1.1 -es verziója

4. Elfogadás: text/html, application/xhtml+xml, image/jxr, */ * ==> Megmondja a szervernek, hogy milyen típusú fájlt tud elfogadni az [ügyféloldali böngésző]. Itt az ügyfél az alice.txt fájlt várja, ami szöveg típusú.

5. Elfogadott nyelv: hu-US ==> Elfogadott nyelvi szabvány.

6. Felhasználó-ügynök: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv: 11.0), mint a Gecko ==> Az ügyféloldali böngésző típusa. Még akkor is, ha Internet Explorer -t használtunk, de azt mindig látjuk/a maximális idő - mondja a Mozilla

7. Elfogadás-kódolás: gzip, deflate ==> Elfogadott kódolás az ügyféloldalon.

8. Host: gaia.cs.umass.edu ==> Ez a webszerver neve, ahová az ügyfél HTTP GET kérést küld.

9. Csatlakozás: Tartsd életben ==> A Kapcsolat vezérli, hogy a hálózati kapcsolat nyitva marad -e az aktuális tranzakció befejezése után. A kapcsolat típusa életben marad.

Itt található a HTTP-GET csomagmezők képernyőképe

HTTP rendben:

A TCP adatok [alice.txt tartalma] sikeres elküldése után a HTTP OK elküldésre kerül a kliensnek, és itt vannak a csomag fontos mezői.
1. Válaszverzió: HTTP / 1.1 ==> Itt a szerver a HTTP 1.1 -es verziójában is
2. Állapotkód: 200 ==> A szerver által küldött állapotkód.
3. Válaszmondat: rendben ==> Válaszmondatot küldött a szerver.

Tehát a 2 és 3 közül 200 OK -t kapunk, ami azt jelenti, hogy a kérés [HTTP GET] sikeres volt.

4. Dátum: Vasárnap, 2019. február 10., 06:24:19 GMT ==> Aktuális dátum, idő GMT -ben, amikor a HTTP GET -et fogadta a szerver.
5. Szerver: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/5.4.16 mod_perl/2.0.10 Perl/v5.16.3 ==> A szerver részleteinek és konfigurációinak verziói.
6. Utolsó módosítás : Szo, 2004. augusztus 21. 14:21:11 GMT ==> Az alice.txt fájl utoljára módosított dátuma és ideje.
7.ETag: 2524a-3e22aba3a03c0 ==> Az ETag jelzi, hogy a tartalom nem változik a gyorsítótárazás elősegítése és a teljesítmény javítása érdekében. Vagy ha a tartalom megváltozott, az etagok segítenek megakadályozni, hogy az erőforrás egyidejű frissítése felülírja egymást.
8. Elfogadási tartományok: bájtok ==> A bájt a szerverben használt tartalom.
9. Tartalom hossza: 152138 ==> Ez az alice.txt teljes hossza bájtban.
10. Tartsd életben: időtúllépés = 5, max = 100 ==> Tartsa életben a paramétereket.
11. Csatlakozás: Életben tartani ==> A kapcsolat vezérli, hogy a hálózati kapcsolat nyitva marad -e az aktuális tranzakció befejezése után. A kapcsolat típusa életben marad.
12. Tartalom típusa: szöveg/sima; karakterkészlet = UTF-8 ==> A tartalom [alice.txt] típusa szöveg, a karakterkészlet szabványa pedig UTF-8.

Itt található a képernyőkép a HTTP OK csomag különböző mezőiről.

Tehát most már tudjuk, hogy mi történik, ha bármilyen fájlt kérünk a webszerveren.

Következtetés:

A HTTP egyszerű alkalmazásprotokoll, amelyet életünk minden napján használunk. De ez nem biztonságos, ezért a HTTPS megvalósult. Ez az S a biztonságot jelenti. Ezért a maximális webszerver -név a http -vel kezdődik s: // [websitename] . Ez azt jelenti, hogy minden kommunikáció közötted és a szerver között titkosított. A jövőben külön megbeszélést folytatunk erről a HTTPS -ről.