వైర్‌షార్క్ ఉపయోగించి HTTP విశ్లేషణ

Http Analysis Using Wireshark



HTTP అంటే ఏమిటి?

ముందుగా HTTP యొక్క పూర్తి రూపం హైపర్ టెక్స్ట్ ట్రాన్స్‌ఫర్ ప్రోటోకాల్. HTTP అనేది ISO లేదా TCP/IP మోడల్‌లోని అప్లికేషన్ లేయర్ ప్రోటోకాల్. అప్లికేషన్ లేయర్ కింద ఉండే HTTP ని తెలుసుకోవడానికి క్రింది చిత్రాన్ని చూడండి.







HTTP ఉపయోగించబడుతుంది అంతర్జాలం (w.w.w) మరియు బ్రౌజర్ ద్వారా సందేశాలు ఎలా ఫార్మాట్ చేయబడతాయి మరియు ప్రసారం చేయబడుతుందో ఇది నిర్వచిస్తుంది. కాబట్టి బ్రౌజర్ HTTP ఆదేశాన్ని స్వీకరించినప్పుడు ఎలాంటి చర్యలు తీసుకోవాలో HTTP నిర్వచించింది. సర్వర్ నుండి డేటాను పొందడానికి HTTP ఆదేశాన్ని ప్రసారం చేయడానికి నియమాలను కూడా HTTP నిర్వచిస్తుంది.



ఉదాహరణకు, మీరు బ్రౌజర్‌లో ఒక ఇంటర్నెట్‌ని నమోదు చేసినప్పుడు (ఇంటర్నెట్ ఎక్స్‌ప్లోరర్, క్రోమ్, ఫైర్‌ఫాక్స్, సఫారీ మొదలైనవి) అది సర్వర్‌కు HTTP ఆదేశాన్ని పంపుతుంది. మరియు సర్వర్ తగిన ఆదేశంతో ప్రత్యుత్తరం ఇస్తుంది.



HTTP పద్ధతులు:

HTTP/1.1 కోసం కొన్ని పద్ధతులు ఉన్నాయి (ఇది HTTP వెర్షన్)





పొందండి, హెడ్, పోస్ట్, పుట్, డిలీట్, కనెక్ట్, ఆప్షన్ మరియు ట్రేస్.

మేము ప్రతి పద్ధతి యొక్క వివరాలకు వెళ్లము, బదులుగా తరచుగా కనిపించే పద్ధతుల గురించి తెలుసుకుంటాము



పొందండి: GET అభ్యర్థన వెబ్ సర్వర్ నుండి డేటాను అడుగుతుంది. డాక్యుమెంట్ రిట్రీవల్ ఉపయోగించే ప్రధాన పద్ధతి ఇది. మేము ఈ పద్ధతి యొక్క ఒక ఆచరణాత్మక ఉదాహరణను చూస్తాము.

పోస్ట్: కొంత డేటాను సర్వర్‌కు పంపాల్సిన అవసరం వచ్చినప్పుడు POST పద్ధతి ఉపయోగించబడుతుంది.

HTTP అనేది Wiresahark:

HTTP ఎలా పనిచేస్తుందో అర్థం చేసుకోవడానికి ఆచరణాత్మకమైనదాన్ని ప్రయత్నిద్దాం?

కాబట్టి ఈ ఉదాహరణలో మేము డౌన్‌లోడ్ చేస్తాము alice.txt (సర్వర్‌లో ఉన్న డేటా ఫైల్) నుండి gaia.cs.umass.edu సర్వర్

సెట్లు:

  1. URL ని తెరవండి http://gaia.cs.umass.edu/wireshark-labs/alice.txt కంప్యూటర్ బ్రౌజర్‌లో alice.txt డౌన్‌లోడ్ చేయడానికి మాకు పూర్తి url తెలుసు.
  2. ఇప్పుడు మనం డౌన్‌లోడ్ చేసిన ఫైల్‌ను బ్రౌజర్‌లో చూస్తాము. ఇక్కడ స్క్రీన్ షాట్ ఉంది

  1. సమాంతరంగా మేము వైర్‌షార్క్‌లో ప్యాకెట్లను సంగ్రహించాము.

వైర్‌షార్క్‌లో HTTP ప్యాకెట్ల మార్పిడి:

మేము HTTP లోకి వెళ్లే ముందు, HTTP పోర్ట్ 80 మరియు TCP ని ట్రాన్స్‌పోర్ట్ లేయర్ ప్రోటోకాల్‌గా ఉపయోగిస్తుందని తెలుసుకోవాలి [మేము TCP ని మరొక టాపిక్ డిస్కషన్‌లో వివరిస్తాము].

ఇప్పుడు మనం ఆ URL ని ఉంచి బ్రౌజర్‌లో ఎంటర్ నొక్కినప్పుడు నెట్‌వర్క్‌లో ఏమి జరుగుతుందో చూద్దాం.

ఇక్కడ స్క్రీన్ షాట్ ఉంది

TCP 3-మార్గం హ్యాండ్‌షేక్ ——-> HTTP సరే ——-> TCP డేటా [కంటెంట్ alice.txt] ——->

HTTP- సరే

ఇప్పుడు HTTP GET మరియు HTTP OK ప్యాకెట్లలో ఏమి ఉందో చూద్దాం.

గమనిక: మేము TCP ఎక్స్ఛేంజీలను మరొక టాపిక్ డిస్కషన్‌లో వివరిస్తాము.

HTTP పొందండి:

TCP 3-మార్గం హ్యాండ్‌షేక్ [SYN, SYN+ACK మరియు ACK ప్యాకెట్లు] పూర్తయిన తర్వాత HTTP GET అభ్యర్థన సర్వర్‌కు పంపబడుతుంది మరియు ఇక్కడ ప్యాకెట్‌లోని ముఖ్యమైన ఫీల్డ్‌లు ఉన్నాయి.

1. అభ్యర్థన పద్ధతి: పొందండి ==> ప్యాకెట్ ఒక HTTP GET.

2. URI ని అభ్యర్థించండి: /wireshark-labs/alice.txt ==> /Wireshark-labs కింద ఉన్న ఫైల్ alice.txt కోసం క్లయింట్ అడుగుతున్నారు

3. అభ్యర్థన వెర్షన్: HTTP/1.1 ==> ఇది HTTP వెర్షన్ 1.1

4. అంగీకరించు: టెక్స్ట్/html, అప్లికేషన్/xhtml+xml, ఇమేజ్/jxr, */ * ==> [క్లయింట్ సైడ్ బ్రౌజర్] ఆమోదించగల ఫైల్ రకం గురించి సర్వర్‌కు తెలియజేస్తుంది. ఇక్కడ క్లయింట్ టెక్స్ట్ టైప్ అయిన alice.txt ని ఆశిస్తున్నారు.

5. అంగీకారం-భాష: en-US ==> ఆమోదించబడిన భాషా ప్రమాణం.

6. వినియోగదారు-ఏజెంట్: మొజిల్లా/5.0 (విండోస్ NT 10.0; WOW64; ట్రైడెంట్/7.0; rv: 11.0) గెక్కో ==> క్లయింట్ సైడ్ బ్రౌజర్ రకం. మేము ఇంటర్నెట్ ఎక్స్‌ప్లోరర్‌ను ఉపయోగించినప్పటికీ, మేము దానిని ఎల్లప్పుడూ/గరిష్టంగా చూస్తాము అని మొజిల్లా చెబుతుంది

7. అంగీకారం-ఎన్‌కోడింగ్: gzip, డీఫ్లేట్ ==> క్లయింట్ వైపు ఎన్కోడింగ్ ఆమోదించబడింది.

8. అతి: gaia.cs.umass.edu ==> ఇది క్లయింట్ HTTP GET అభ్యర్థనను పంపుతున్న వెబ్ సర్వర్ పేరు.

9. కనెక్షన్: సజీవంగా ఉంచు ==> ప్రస్తుత లావాదేవీ పూర్తయిన తర్వాత నెట్‌వర్క్ కనెక్షన్ తెరిచి ఉందో లేదో కనెక్షన్ నియంత్రిస్తుంది. కనెక్షన్ రకం సజీవంగా ఉంచడం.

HTTP-GET ప్యాకెట్ ఫీల్డ్‌ల స్క్రీన్‌షాట్ ఇక్కడ ఉంది

HTTP సరే:

TCP డేటా [alice.txt యొక్క కంటెంట్] విజయవంతంగా పంపిన తర్వాత HTTP OK క్లయింట్‌కు పంపబడింది మరియు ఇక్కడ ప్యాకెట్‌లో ముఖ్యమైన ఫీల్డ్‌లు ఉన్నాయి.
1. ప్రతిస్పందన వెర్షన్: HTTP / 1.1 ==> ఇక్కడ సర్వర్ కూడా HTTP వెర్షన్ 1.1 లో ఉంది
2. స్టేటస్ కోడ్: 200 ==> స్థితి కోడ్ సర్వర్ ద్వారా పంపబడింది.
3. ప్రతిస్పందన పదబంధం: అలాగే ==> సర్వర్ పంపిన ప్రతిస్పందన పదబంధం.

కాబట్టి 2 మరియు 3 నుండి మనకు 200 సరే వస్తుంది అంటే అర్ధం [HTTP GET] విజయవంతమైంది.

4. తేదీ: సూర్యుడు, 10 ఫిబ్రవరి 2019 06:24:19 GMT ==> ప్రస్తుత తేదీ, GMT లో HTTP GET సర్వర్ ద్వారా అందుకున్న సమయం.
5. సర్వర్: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/5.4.16 mod_perl/2.0.10 పెర్ల్/v5.16.3 ==> సర్వర్ వివరాలు మరియు కాన్ఫిగరేషన్ వెర్షన్‌లు.
6. చివరిగా సవరించబడింది : శని, 21 ఆగస్టు 2004 14:21:11 GMT ==> alice.txt ఫైల్ కోసం చివరిగా సవరించిన తేదీ మరియు సమయం.
7.ఈట్యాగ్: 2524a-3e22aba3a03c0 ==> కాషింగ్‌కు సహాయపడటానికి మరియు పనితీరును మెరుగుపరచడానికి కంటెంట్ మార్చబడలేదని ETag సూచిస్తుంది. లేదా కంటెంట్ మారినట్లయితే, ఒక రిసోర్స్ యొక్క ఏకకాల అప్‌డేట్‌లను ఒకదానిపై మరొకటి రాసుకోకుండా నిరోధించడానికి ఎటాగ్‌లు ఉపయోగపడతాయి.
8. అంగీకరించు-పరిధులు: బైట్లు ==> బైట్ అనేది కంటెంట్ కోసం సర్వర్‌లో ఉపయోగించే యూనిట్.
9. కంటెంట్-పొడవు: 152138 ==> ఇది బైస్‌లోని alice.txt యొక్క మొత్తం పొడవు.
10. సజీవంగా ఉంచండి: గడువు ముగిసింది = 5, గరిష్టంగా = 100 ==> సజీవ పారామితులను ఉంచండి.
11. కనెక్షన్: ప్రాణాలతో ఉండనివ్వండి ==> ప్రస్తుత లావాదేవీ పూర్తయిన తర్వాత నెట్‌వర్క్ కనెక్షన్ తెరిచి ఉందో లేదో కనెక్షన్ నియంత్రిస్తుంది. కనెక్షన్ రకం సజీవంగా ఉంచడం.
12. కంటెంట్-రకం: టెక్స్ట్/సాదా; charset = UTF-8 ==> కంటెంట్ [alice.txt] రకం టెక్స్ట్ మరియు చార్‌సెట్ స్టాండర్డ్ UTF-8.

HTTP OK ప్యాకెట్ యొక్క వివిధ ఫీల్డ్‌ల స్క్రీన్‌షాట్ ఇక్కడ ఉంది.

వెబ్ సర్వర్‌లో ఉన్న ఏదైనా ఫైల్ కోసం మేము అభ్యర్థించినప్పుడు ఏమి జరుగుతుందో ఇప్పుడు మాకు తెలుసు.

ముగింపు:

HTTP అనేది మన జీవితంలో ప్రతిరోజూ ఉపయోగించే సాధారణ అప్లికేషన్ ప్రోటోకాల్. కానీ ఇది సురక్షితం కాదు కాబట్టి HTTPS అమలు చేయబడింది. ఆ S అంటే సురక్షితమైనది. అందుకే మీరు గరిష్టంగా వెబ్ సర్వర్ పేరు http తో ప్రారంభించండి s: // [వెబ్‌సైట్ పేరు] . దీని అర్థం మీకు మరియు సర్వర్‌కు మధ్య అన్ని కమ్యూనికేషన్‌లు గుప్తీకరించబడ్డాయి. భవిష్యత్తులో మేము ఈ HTTPS పై ప్రత్యేక చర్చను నిర్వహిస్తాము.