1. Informasjonskapsler og pakkefangst. 2. Grunnleggende datakommunikasjon



Like dokumenter
Introduksjon til nettverksteknologi

Kap 3: Anvendelser av Internett

1. Sikkerhet i nettverk

6107 Operativsystemer og nettverk

6105 Windows Server og datanett

6105 Windows Server og datanett

Prosjektet SAMKOM2016

Kapittel 4: Transportlaget

Dette er en demonstrasjonsside som vi skal bruke for å se litt nærmere på HTTP protokollen. Eksemplet vil også illustrere et par ting i PHP.

6107 Operativsystemer og nettverk

Hva består Internett av?

6105 Windows Server og datanett

6105 Windows Server og datanett

Huldt & Lillevik Ansattportal. - en tilleggsmodul til Huldt & Lillevik Lønn. Teknisk beskrivelse

Obligatorisk oppgave nr 2 i datakommunikasjon. Høsten Innleveringsfrist: 04. november 2002 Gjennomgås: 7. november 2002

2EOLJDWRULVNRSSJDYHQU L GDWDNRPPXQLNDVMRQ + VWHQ.,QQOHYHULQJVIULVWRNWREHU *MHQQRPJnVWRUVGDJRNWREHU

Høgskolen i Telemark EKSAMEN Operativsystem og nettverk inkludert denne forsiden og vedlegg. Merknader:

Gjennomgang av kap Kommunikasjonsformer Typer av nettverk Adressering og routing Ytelse Protokoller

Mangelen på Internett adresser.

EKSAMENSFORSIDE Skriftlig eksamen med tilsyn

Oppsummering: Linjesvitsjing kapasiteten er reservert, og svitsjing skjer etter et fast mønster. Linjesvitsj

Høgskolen i Telemark EKSAMEN Operativsystem og nettverk inkludert denne forsiden og vedlegg. Merknader:

TDT4110 IT Grunnkurs: Kommunikasjon og Nettverk. Læringsmål og pensum. Hva er et nettverk? Mål. Pensum

6107 Operativsystem og nettverk

6107 Operativsystem og nettverk

Høgskolen i Telemark EKSAMEN Operativsystem og nettverk inkludert denne forsiden og vedlegg. Merknader:

NorskInternett Brukermanual. Sist oppdatert Side 1/30

JSP - 2. Fra sist. Hvordan fungerer web? Tjenerside script HTML. Installasjon av Web-tjener Et enkelt JSP-script. Ønsker dynamiske nettsider:

Kommunikasjonsnett. Et kommunikasjonsnett er utstyr (maskinvare og programvare) for utveksling av informasjon

Kapittel 5 Nettverkslaget

Krishna Tateneni Jost Schenck Oversetter: Bjørn Steensrud

Kursdeltakere som ønsker å bruke leksjonene f.eks til undervisning eller kursformål må ta direkte kontakt med forfatter for nærmere avtale.

Løsningsforslag Gruppeoppgaver mars 2003

6105 Windows Server og datanett

Steg 1: Installasjon. Steg 2: Installasjon av programvare. ved nettverkstilkoblingen på baksiden av kameraet. Kameraet vil rotere og tilte automatisk.

Forelesning Oppsummering

TTM4175: Etisk hacking. Lab E5: Nettverkssniffing

Lagene spiller sammen

Vanlige spørsmål. GallupPanelet. TNS Panel-app. TNS Juni 2015 v.1.3

Sikkerhet og internett. Kan vi være vi trygge? Kan vi beskytte oss? Bør vi slå av nettet

Tjenester i Internett. E-post, HTTP, FTP, Telnet

Løsninger på påloggingsproblemer

KTN1 - Design av forbindelsesorientert protokoll

Lek 01 Grunnprinsipper

Vemma Europes personvernerklæring

Installere JBuilder Foundation i Windows XP

Brukerveiledning - secure.nhh.no og secure.privnett.nhh.no

IT for medisinsk sekretær Fredrikstad Kai Hagali

Innledende Analyse Del 1: Prosjektbeskrivelse (versjon 2)

Innledende Analyse Del 1.2

Brukerveiledning Privatisering av datamaskinen For avgangselever våren 2017

Policy vedrørende informasjonskapsler og annen tilsvarende teknologi

JANUAR 2016 FIBERBREDBÅND BRUKERVEILEDNING

Sikkerhet og internett

Side 1. Sniggabo CMS brukermanual rev. 2

1. Hent NotaPlan Online Backup på 2. Trykk på Download i menyen og på Download i linjen med Notaplan Backup

Notater: INF Datakommunikasjon

Dersom du har noen spørsmål eller kommentarer, ikke nøl med å kontakte oss ved «Kontakt».

Installere JBuilder Foundation i Mandrake Linux 10.0

1. Intro om SharePoint 2013

Side 1 av 5. post@infolink.no. Infolink Datatjenester AS Ensjøveien 14, 0655 Oslo. Telefon Telefax

VMware Horizon View Client. Brukerveiledning for nedlasting, installasjon og pålogging for fjerntilgang

6107 Operativsystemer og nettverk

Programmering, oppsett og installasjonsløsninger av LIP-8000 serien IP apparater

BAAN IVc. BAAN Data Navigator - Brukerhåndbok

Brukerdokumentasjon Promed Online Booking

Blant de mest omtalte Internett tilpassningene i dag er brannmurer og virtuelle private nett (VPN).

Datateknikk TELE1004-A 13H HiST-AFT-EDT. Oppgåve: Protokollanalysatoren Wireshark. Delemne digitalteknikk og datakommunikasjon Øving 7; løysing

BRUKERMANUAL. Telsys Online Backup

Remote Desktop Services

Kom i gang med E-Site - Med E-Site er det enkelt og trygt å redigere dine websider

6105 Windows Server og datanett

Tjenestebeskrivelse Internett Ruter Innhold

Landåstorget Seniornett klubb

Innstillinger. Endre Personalia

En filserver på Internett tilgjengelig når som helst, hvor som helst. Enkelt, trygt og rimelig

KOM I GANG MED WORDPRESS En enkel guide for å hjelpe deg gjennom det grunnleggende i Wordpress

AirLink 2400ac FAQ. Side 2 Side 2 Side 3 Side 4 Side 6 Side 7 Side 9 Side 11 Side 12 Side 13 Side 14 Side 14 Side 15 Side 16 Side 17

Kjøre Wordpress på OSX

Memoz brukerveiledning

En enkel lærerveiledning

Kapittel 8: Nettverk i praksis

Veileder for bruk av tynne klienter

Hvordan man kobler til printeren, laster ned CardPresso, installerer skrifttypen og får kommet i gang med produktet.

EN PRAKTISK INNFØRING I KRYPTERT E-POST FRA UDI

Teori om sikkerhetsteknologier

Bruk av NetBeans i JSP-delen av Web-applikasjoner med JSP og JSF

6105 Windows Server og datanett

PC som hjelpemiddel i grunnskolen i Bærum kommune - informasjon til elever og foresatte

Konfigurasjon av nettverksløsning for Eldata 8.0 basert på PostgreSQL databasesystem.

Lab 1: Installasjon av Virtualiseringsløsning (VMWare Server ESXi 6.5) med en Virtuell Linux maskin (Cent OS 7 64-bit)

KONTOR påloggingsguide / Oppsett av Outlook 2010

Installasjonsveiledning PowerOffice SQL

Velkomment til å installere BAS21

Brukerveiledning. Searchdaimon AS phone: Østensjøveien 34 fax:

Bruk av Spark. ikke til dytting og sitting. Universitetet i Tromsø 22. mars Torbein Kvil Gamst Bruk av Spark, Side 1

LAB-L SETTE OPP MICROSOFT SERVER 2003

Denne brukerhåndboken gjelder for følgende modeller:

6105 Windows Server og datanett

Denne brukermanualen gjelder for følgende modeller:

Transkript:

Informasjonskapsler og pakkefangst Olav Skundberg Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget 1. Informasjonskapsler og pakkefangst Denne leksjonen har tre hovedtema. To av dem er informasjonskapsler og pakkefangst. Men begge deler forutsetter en viss forståelse av datakommunikasjon, noe som ikke er en forutsetning for dette faget. Datakommunikasjon er også grunnlag for å forstå brannmurer og sikkerhet på nettet som omhandles seinere i faget. Leksjonen starter derfor med en forklaring på grunnleggende prinsipper i datakommunikasjon. 2. Grunnleggende datakommunikasjon Grunnleggende datakommunikasjon bygger på kapittel 2.4 i boka Innføring i datakommunikasjon. Dette kapittelet er åpent tilgjengelig på web [datakom-kap2.4]. Det er ikke egne læringsutbytter som går direkte på datakommunikasjon, men temaet er allikevel et viktig grunnlag for å forstå forskjellige sikkerhetsmekanismer. Hvorfor er datakommunikasjon bygd opp etter en lagdelt modell? Det vanligste argumentet er at for å gjøre oppgaven løsbar, må den deles den opp i mindre oppgaver som kan håndteres hver for seg. Men den helt essensielle effekten av dette er at hvert lag kan tilpasses det behovet man har, uten å måtte endre på de øvrige lagene. For eksempel kan man fritt velge kablet eller trådløst lokalnett, det vil si utskifting på lenkelaget, uten å måtte installere nytt operativsystem. Det måtte man kanskje ha gjort dersom kommunikasjonsprogrammet var en stor pakke. Videre kan man fra hvert lag fritt velge hvilke tjenester man skal benytte fra underliggende lag. For eksempel kan en applikasjonen bruke pålitelig overføring (web) eller upålitelig overføring (multimedia) uten at man trenger endringer i kommunikasjonsprogrammet. Hva er en tjeneste, en protokoll og en applikasjon? Protokoller opererer mellom likestilte parter (egentlig programmer) som er på samme lag men i ulike maskiner. HTTP er en protokoll på applikasjonslaget og sender meldinger mellom klient og tjener. Tjenester, derimot, tilbys fra ett lag til laget over på en og samme maskin. Pålitelig overføring er eksempel på en tjeneste. For å implementere en tjeneste må det utvikles en protokoll. En applikasjon er et program som tilbyr en nyttefunksjon for brukeren. Opera nettleser er et eksempel på en applikasjon, og denne gjør bruk av protokoller som ligger på applikasjonslaget. Illustrasjon av tjenester og protokoller:

Typiske tjenester og protokoller på lagene Applikasjonslaget er nært knyttet til selve applikasjonen og har tjenester som applikasjonen trenger. Typiske protokoller er HTTP for webtjenesten, FTP for filoverføring og SMTP for e- post. Protokollene her jobber mellom klient og tjener på applikasjonsnivå, de sender typisk en forespørsel og får en respons tilbake (Nettleserklient: Send meg websiden din. Webtjener: Her er den) Transportlaget har kun to hovedprotokoller, TCP og UDP. TCP tilbyr en pålitelig tjeneste som brukes når man er avhengig av at data kommer frem slik de ble sendt. Merk at pålitelighet brukes i en annen betydning enn sikkerhet. UDP derimot gjør bare sitt beste for å overføre datapakker men gir ingen garantier. Denne tjenesten brukes typisk ved overføring av multimedia, hvor det er bedre å få pakkene raskt fram enn at overføringen stopper opp for å tette huller etter tapte pakker. Protokollene på transportlaget jobber ende-ende mellom to applikasjonlagsprotokoller. Nettverkslaget, det er laget som forbinder alle tilknytninger mot Internett og sørger for at datapakkene kommer frem til rett mottaker. Alle mottakere har en unik IP-adresse, og nettopp IP er hovedprotokollen som vi finner på nettverklaget. Innholdet (nyttelasten) i IP-pakken kan være alt mulig, fra deler av en webside til deler av en telefonsamtale. IP er protokollen som har gjort det mulig å ha tjenesteintegrerte nett, det vil si ett nett som kan tilby ulike tjenester som dataoverføring, telefonsamtaler og TV. Alt over IP, IP over alt. IP jobber mellom grensesnittet for to maskintilkoplinger. En og samme maskin kan ha flere grensesnitt (LAN, trådløst) og hvert grensesnitt kan føre ende-ende kommunikasjon mellom flere applikasjoner (kan ha flere nettlesere aktive samtidig). Lenkelaget er området for nettverkskort (adaptere) og datatransmisjon. Utfordringen her er hvordan flere brukere kan dele overføringsmediet på en effektiv måte. Kablet lokalnett følger en standard som heter Ethernet, og det at alle følger samme standard gjør at utstyret er både bra og rimelig. Trådløs tilkopling utvikles stadig, både for overføringshastighet og bedre kryptering. Typisk standard her heter 802.11b/g/n. Lenkelaget opererer mellom to tilstøtende nettverkskort som sender signaler til hverandre. Det fysiske laget illustreres ofte som et eget lag. Det omhandler utforming av plugger og spenningsnivå på signalene. I denne forenklede oversikten om handles ikke dette. side 2 av 10

Hvorfor er Internett pakkesvitsjet? Internett er pakkesvitsjet, informasjonen overføres i pakker. Dette i motsetning til linjesvitsjing, som i det gamle fasttelefoninettet, hvor det var en kontinuerlig forbindelse mellom sender og mottaker. En fordel med pakkesvitsjing er at flere parter kan benytte samme overføringskanal, man deler på ressursene. Dette skalerer bedre enn linjesvitsjing når det blir svært mange brukere, fordi hver enkel bruker ikke har kontinuerlig dataoverføring. En annen fordel er at pakkene kan rutes langs forskjellige veier, noe som gir økt sikkerhet. Dette poenget var årsaken til at det militære i sin tid startet utvikling av pakkesvitsjing. Er det noen ulemper med pakkesvitsjing? Det er en viss ulempe ved det at kompleksiteten øker i forhold til linjesvitsjing. Når flere deler en overføringskanal, kreves det adressering for å nå rett mottaker. Hvordan skal man styre tilgangen til kanalen? Hvordan skal man forholde seg til at pakker kan forsvinne underveis, det vil si pålitelighet? Nettopp slike problemstillinger er det de ulike protokollene er utviklet for å håndtere. Hva er en datapakke? En pakke inneholder som regel to ting: et pakkehode og nyttelast. Pakkehodet er spesifikt for hver enkelt protokoll. Som regel er pakkehodet større jo mer avansert tjenesten er, fordi det da kreves mer informasjon. Når man skal spesifisere en protokoll skjer det alltid en avveining mellom datamengden i pakkehodet, som man ønsker minst mulig, og funksjonaliteten i protokollen. Når et lag benytter en tjeneste fra laget under, blir de data man har overført til laget under og mottas der som nyttelast. Nyttelasten blir pakket inn med pakkehodet som den aktuelle tjenesten/protokollen på dette laget har, og videre overlatt til laget under seg igjen. Dette er en innpakkingsprosess. Når pakken til syvende og sist sendes ut på nettet består den av en sekvens av pakkehoder. Dette vises visuelt i Wireshark på en glimrende måte, og det er helt essensielt at man danner seg et bilde av denne prosessen. På tilsvarende vis skjer det en utpakkingsprosess hos mottaker, etter hvert som pakkehodene skrelles av i de respektive protokollene og nyttelasten overlates til laget over. Det som sendes mellom protokollene, det vil si protokollhode og nyttelast, har forskjellig navn avhengig av hvilket lag man refererer til: Lag Pakken kalles Applikasjonslaget Meldinger Transportlaget Segmenter Nettverkslaget Pakker, IP-pakker Lenkelaget Rammer side 3 av 10

Hvordan kommer pakkene fram til rett mottaker? I hvert pakkehode legges det inn informasjon om mottakers adresse. Adressene har forskjellige navn, ulik lengde og forskjellig skrivemåte på de forskjellige lagene: Lag Adresse Lengde Eksempel Transportlag Porter 16 bit 80 (HTTP) Nettlag IP-adresse 32 bit (IPv4) 158.38.50.20 Lenkelag MAC-adresser 48 bit 00:0F:9A:3D:22:7E En og samme maskin kan ha mange samtidige IP-grensesnitt, for eksempel har LANtilkopling og trådløs tilkopling gjerne ulike IP-adresser på samme maskin. Videre kan man kjøre flere applikasjoner samtidig over ett og samme IP-grensesnitt. Det betyr at mange pakker kommer fram til samme IP-adresse, men de må fordeles til rett applikasjon. Applikasjonene skilles med ulike portnummer. 3. Om HTTP (web) Læringsmål: Kunne beskrive HTTP-protokollens hovedtrekk Dette sammendraget bygger på kapittel 3.2 i Innføring i datakommunikasjon, hele kapittelet er publisert på web [datakom-kap3.2] og inngår i pensum. Web er en av de mest populære anvendelsene av Internett. Derfor er det utrolig viktig at protokollen for denne anvendelsen, HTTP, fungerer optimalt. Det å være optimal må ta to hensyn: a) Funksjonalitet for brukeren og b) effektivit dataoverføring. Resten av denne leksjonen tar for seg noen spesielle egenskaper ved HTTP. Hensikten med det er å få et detaljert innblikk i hvordan denne protokollen opererer og hvordan den blir utviklet for å dekke nye behov. Kort om HTTP Klient og tjener sender meldinger til hverandre, de kalles forespørsler (request) og svar (response). Meldingene som sendes har en fast, tredelt struktur. Meldingen har først en linje med selve forespørselen/svaret, deretter headerlinjer med utfyllende informasjon. Til slutt er det eventuelt en kropp med data. Det er ikke alltid at meldinger har kropp. For eksempel når en nettleserklienten ber om å få vist en webside trengs bare webadressen. Derimot når webtjeneren skal sende en webside tilbake kommer innholdet som en "datakropp. HTTP er tekstbasert og feltene har variabel lengde. Det betyr at man skriver i klartekst hva linjen gjelder og hvilket innhold den har, for eksempel Host: datakom.no. Dette er en headerlinje som forteller hvilket domenenavn man bruker i oppslaget. Men det betyr at mottaker må skanne (parse) gjennom meldingen og tolke de linjene man finner. Alternativet kunne vært som i IP-protokollen, hvor hvert felt har fast lengde og definert betydning. Faste posisjoner er generelt raskere å tolke, men mye mer stivbeint. I så fall måtte man ha innført regler for hvor langt et domenenavn kunne være. Det finnes også protokoller som koder/krymper innholdet for å spare båndbredde, for eksempel i GSM. Da overlates prosesseringen (belastningen) til endeutstyret i stedet for å spare nettet, og det har aldri vært side 4 av 10

aktuelt å la webtjenere ta denne ekstra belastningen. Oppsummert: HTTP er en rett fram protokoll som vektlegger enkelhet fremfor kompleksitet. Et annet viktig aspekt ved HTTP er at det er valgfritt hvilke headerlinjer man benytter. Det betyr i praksis at man kan sende med en headerlinje, men mottaker kan velge å benytte seg av den eller ikke, avhengig av hvor avansert den er. En av headerlinjene som klienten kan benytte er Accept-Language: no, hvor avsender sier at den foretrekker norsk språk i visningen. Dette åpner for at webtjeneren kan ha et sett av responser tilpasset ulike språk, men hvis den ikke har det blir bare linjen ignorert. Det at headerlinjer kan føyes til uten å måtte omdefinere hele protokollen, er en av hovedgrunnene til at web har hatt så stor suksess. Da HTTP ble definert, var for eksempel netthandel ikke et tema. Senere har man utvidet HTTP med cookies-funksjonen ved å definere nye headerlinjer, og det løste behovet. Dette er et godt eksempel på fleksibilitet. Informasjonskapsler blir gjennomgått i det følgende, med vinkling mot. 4. HTTP informasjonskapsler Læringsmål: Kunne beskrive bruk av informasjonskapsler og hvilke trusler som er knyttet til dette. Dette kapittelet er et sammendrag og kommentar til artikkelen om dette temaet på den engelske utgaven av Wikipedia [wiki-cookies]. Artikkelen er pensum, men avsnittet Alternatives to cookies, frem til History er orienteringsstoff. Hva er informasjonskapsler (cookies) Cookies er små filer med data, det norske ordet for dette, informasjonskapsler, er bra dekkende. Cookies kan misbrukes og blir derfor omtalt under skadelig programvare, men de er verken virus eller programkode. Det er alltid webtjener som oppretter cookies og lagrer disse på klientmaskin slik at de kan benyttes av nettleser ved senere oppslag på samme webtjener. En bestemt cookie brukes alltid for en bestemt webtjener, derfor lagres det et stort antall cookies hos klienten. Hvorfor bruker man cookies Cookies er konstruert for å skape mer fleksibilitet på web. Kommunikasjon mellom klient og tjener skjer med HTTP-protkollen. Den er tilstandsløs, det vil si at hvert weboppslag er uavhengig av hva som har skjedd før. Cookies er standardisert i RFC 2109, skrevet i 1997, 10 sider, dokumentet heter HTTP State Management Mechanism: ABSTRACT: This document specifies a way to create a stateful session with HTTP requests and responses. It describes two new headers, Cookie and Set-Cookie, which carry state information between participating origin servers and user agents... side 5 av 10

Siden det er en og samme tjener som både setter og etterpå leser innholdet i cookie, står man fritt til å utforme innholdet så lenge webtjeneren sjøl skjønner hvordan innholdet skal tolkes. Vanlige nettlesere setter en grense på 4 kbyte for størrelsen av informasjonskapsler. Eksempler på anvendelser av informasjonskapsler Personalisering: Tillater hver enkelt bruker å ha preferanser for hvordan websider skal vises. Eksempelvis i Google kan man velge hvor mange treff som skal vises etter et søk, og denne informasjonen er det cookie som angir når den sendes sammen med søket. Pålogging: Når man leser websider som er beskyttet med passord, ville hver ny side kreve pålogging om man ikke hadde cookies. Etter at pålogging er verifisert, opprettes en cookie med sesjons-id som sendes med når nye, beskyttede websider hentes. Handlekurv: Når man hopper frem og tilbake på en webshop og krysser av for hva man vil kjøpe, skal man til slutt i kassa for å betale. Her brukes igjen cookies, men denne gangen lagres informasjon om handel og pris i database hos leverandør, og cookien gir en referanse inn i denne databasen. Trusler fra informasjonskapsler 3.part cookies: Når man leser en webside med annonser, vil reklamebannerne som regel ligge hos en 3.part som har kjøpt seg en visningslenke på websiden man besøker. HTML tillater å hente objekter fra andre tjenere enn den vi har slått opp på. Det å hente disse reklamebannerne fra eksterne webtjenere gjøres i separate weboppslag, som dermed også åpner for å få nye infokapsler fra disse plassene. Så hvis nå denne 3.parten ønsker en logg over hvor ofte deres reklame vises, og av hvem, kan man samle slik informasjon ved bruk av infokapsler. Dette er en form for informasjonshenting som skjer uten brukerens samtykke og viten. I dag kan nettleser gradere sikkerheten og nekte mottak av 3.parts cookies. Internet Explorer setter dette i Alternativer for Internett/personvern. Cookie tyveri: Siden cookies sendes over nettet, kan de fanges opp av andre. Dersom en cookie innholder sesjons-id for passordbeskyttet pålogging, kan andre stjele cookien og overta sesjonen om det ikke er tatt forholdsregler i programmeringen på tjenersiden. En annen metode for å stjele cookies er om man besøker en webside som rett og slett ber om å få lastet ned alle cookiene på maskinen din. Disse kan da undersøkes for passord og annen sensitiv informasjon. Cookie endring (forgiftning): En mellompart, eller brukeren selv, kunne gå inn og endre cookie-innholdet som skal sendes tilbake til tjener. Dersom cookie for handlekurv inneholdt pris, kunne prisen endres før man kom til kassen. Nettopp derfor er det vanlig at tjeneren oppbevarer handlelisten og at cookien bare er en indekspeker til hva man har bestilt. 5. Wireshark Wireshark (tidligere kjent som Ethereal) kan fange og analysere alle datapakker som nettverkskortet ser, enten de går til/fra egen maskin eller mellom andre maskiner på samme medium/lokalnett. Installasjon og enkel bruk av programmet beskrives her for å komme i gang. Programmet kan lastes ned på [wireshark] side 6 av 10

Enkel oppstarthjelp 1. Du starter programmet og kan velge Capture/Interfaces. Du vil se at en PC har flere grensesnitt, f.eks trådløst og Ethernet, men det kan bare fanges på ett av dem om gangen. Pass på å velge rett grensesnitt, ellers får du ingen fangst. 2. Velg et aktivt grensesnitt og trykk Options. Her kan du styre filtrering av pakkefangst. Som regel strømmer det masse pakker på nettet, og da blir det vanskelig å finne akkurat de du ønsket å analysere i en lang liste. Som et eksempel, start med å fange webinnhold ved å skrive i Capture filter: port 80 3. Dersom du har trådløst grensesnitt må du fjerne markering promiscuous mode og bare fange pakker til/fra egen maskin. Du kan fange få til å fange alle trådløse pakker, men det krever som regel at man må kjøpe noe ekstra utstyr. 4. Trykk start, og bruk nettleseren til oppslag. Etterpå trykker du stopp i det vinduet som popper opp. Du skal nå ha fanget et antall datapakker, og innholdet av disse kan nå analyseres. 5.1. Eksempel på pakkefangst Etter å ha startet Wireshark som beskrevet over, kan man gjøre et oppslag på www.datakom.no, websiden for en lærebok i datakommunikasjon. Man får fanget om lag 26 pakker som hører til dette oppslaget. Denne pakkefangsten kan for øvrig lagres og analyseres i ettertid av alle andre som har installert Wireshark, f. eks for diskusjoner. Wireshark viser tre seksjoner på skjermen: Øverst: Liste med alle pakker. Denne listen kan modifiseres ved å bruke analysefilter, skriv f. eks HTTP. I midten: Innholdet av valgt pakke. Kommunikasjon på Internett skjer etter en lagdelt modell. Hvert lag har sin pakkeheader med informasjon for å utføre oppgaven. Wireshark viser oss innholdet av hver pakkeheader. Nederst: Hex-kode av pakkens innhold, legg merke til at når man velger felter i midtseksjon vil disse bli markert i hex-koden. Det viktigste nå er å forstå at vi kan fange og analysere pakker som sendes over nettet og se at oppslag på websider gjøres med HTTP-protokollen. TIPS: For å få en mer lesbar oversikt over dialogen mellom klient og tjener, uten å tenke på den lagdelte modellen, kan man høyreklikke på en HTTP-pakke og velge follow TCPstream. Vi får da vist i klartekst alle sammenhengende meldinger som utveksles. Skjermklipp på neste side viser de to første pakkene på et weboppslag i lkartekst ved hjelp av valget Follow TCP-stream. side 7 av 10

Bilde: To pakker mellom klient og tjener fra et weboppslag Man ser umiddelbart at det er en mengde informasjon som utveksles for å få ønsket fleksibilitet på weboppslag. Det overføres som regel en rekke filer (objekter) for å få til en komplett visning av websiden, det er nettopp slik HTML er konstruert. 6. Eksempel pakkefangst med cookies Ved hjelp av Wireshark kan vi nå fange og studere hvordan informasjonskapsler opprettes og brukes. Google bruker cookies blant annet for å personalisere websidene sine. En parameter som kan endres under innstillinger er antall treff som skal listes opp når man søker. Standardverdi er 10, men man kan velge 20, 30 eller andre størrelser. Vi skal nå vise med pakkefangst hvordan dette forløper, og alle kan selvfølgelig gjøre samme forsøk på egen maskin. Trinn 1: sende ønsket innstilling til tjener Under innstillinger i Google velges hvor mange treff vi ønsker vist frem og sender dette til tjener ved å trykke lagre innstillingene. Innstillingene overføres som URL-data i første HTTP-pakke til tjener, vi kjenner igjen num=20, men resten av innholdet velger jeg å holde skjult: side 8 av 10

Trinn 2: Webtjener oppretter ny cookie hos klient Tjeneren må lagre denne preferansen hos klienten til bruk for senere oppslag, og må derfor opprette en cookie. Det skjer med kommandoen Set-Cookie fra tjener (også her viser jeg bare et utsnitt av pakkedata): Trinn 3: Klienten bruker cookie Alle senere weboppslag Google vil nå sende med denne cookien: Det vi har sett her er en tretrinnsprosess: 1. Klienten setter nye preferanser for visning av en webside 2. Webtjener setter disse i cookie som lagres hos klient 3. Klient sender med cookie ved senere oppslag 7. Referanser og læringsmål Referanser til pensumartikler [datakom-kap2.4]: www.datakom.no [datakom-kap3.2]: www.datakom.no [wiki-cookies]: http://en.wikipedia.org/wiki/http_cookie Andre referanser: [wireshark]: http://www.wireshark.org/ side 9 av 10

Oppsummert læringsmål for denne leksjonen: Kunne beskrive HTTP-protokollens hovedtrekk Kunne beskrive bruk av informasjonskapsler og hvilke trusler som er knyttet til dette. side 10 av 10