Datateknikk TELE1004-A 13H HiST-AFT-EDT Delemne digitalteknikk og datakommunikasjon Øving 7; løysing Oppgåve: Protokollanalysatoren Wireshark a) Marker ramme nr. 1 i det øvste feltet. Marker menylina «Ethernet II» i midtfeltet. No er (Wireshark sitt utval av) MAC-header-data utheva i det nedste feltet: * Finn mottakar-mac-adressa ved å utvida menylina «Ethernet II» i midtfelt-menyen og deretter å klikka på «Destination». * Kva er spesielt med verdien du finn?
Adressa er ff:ff:ff:ff:ff:ff, som er MAC-adressa for kringkasting. Alle Ethernet-grensesnitt (i vertsmaskiner og rutarportar) på det logiske nettet (kringkastingsdomenet) skal motta og analysera slike kringkasta rammer. Denne ramma inneheld ei ARP-melding. * Korleis går det fram av MAC-header? Protokollfeltet (Type) i MAC-header har verdien 0x0806, det viser at datafeltet inneheld ei ARP-melding. * Finn operasjonskoden i ARP-meldinga som viser at det dreier seg om ein førespurnad.
Op-koden er 0x0001, dvs. «førespurnad». ARP-førespurnaden er «Har du IP-adressa 158.38.50.1?». * Kva er denne IP-adressa på heksadesimal form?
Adressa er koda som 0x9e263201. * Kvifor er feltet «Target MAC address» tomt? På dette tidspunktet er mottakar-mac-adressa ukjend på sendarsida. Føremålet med ARP-førespurnaden er å finna denne adressa. b) Marker ramme nr. 2. * Vis at denne ramma er eit ARP-svar.
Op-koden i ARP-meldinga er 0x0002, dvs. «svar». * Identifiser den MAC-adressa som ein i utgangspunktet var ute etter å finna vha. av ARP.
MAC-adressa i ARP-svaret er 00:00:0c:5b:78:10. Adressa er sjølvsagt identisk med avsendaradressa i MAC-header, men ARP-meldinga er likevel bygd opp komplett, slik at ho greitt kan leggjast inn i den lokale ARP-tabellen. Merk: Der Wirehark skriv «sender», er det alltid sendaren av den akuelle ramma det handlar om, ikkje initiativtakaren til sesjonen e.l. c) Marker ramme nr. 3. * Kor mange protokollar er representerte (til saman; på alle laga) i denne ramma? Fire. I midtfeltet ser ein at MAC-, IP-, UDP- og DNS-felt finst i ramma. Denne ramma inneheld altså ei IP-pakke. * Korleis går det fram av MAC-header? Protokollfeltet (Type) i MAC-header har verdien 0x0800, det viser at datafeltet inneheld ei IP-pakke (IPv4). * Finn mottakar-ip-adressa.
Adressa kan lesast av i midtfeltet ferdig konvertert til 158.38.49.10, medan HEX-koden i det nedste feltet viser verdien 0x9e26310a. * Kva for eit transportlags-protokollformat er kapsla inn i denne IP-pakka? Vink: Svaret finst i IP-header.
Protokollfeltet i IP-header har verdien 0x11, dvs. UDP. Då skal dei åtte fyrste oktettane i datafeltet tolkast som UDP-header. * Kva er adressa til den UDP-porten som dette datagrammet skal enda opp på?
Mottakar UDP-portadressa er 0x0035 (desimalverdi 53). Dette er vanleg («well known») portadresse for ein DNS-tenar. * Kva er DNS-namnet som skal slåast opp i DNS-tenaren?
DNS-namnet er venus.edt.hist.no. Det står på ASCII-koda form i DNS-førespurnaden. * Finn den returnerte IP-adressa.
Svaret finst i MAC-ramme nr. 4. I DNS-svaret står den ettersøkte IP-adressa på heksadesimal form. Det returnerte datagrammet er adressert til UDP-port 2498, av di DNS-klienten (resolver) forventar at svaret kjem på den same UDP-porten som førespurnaden vart send frå. d) Til no har alt vore «førebuing» Eit ARP-søk for å finna ei MAC-adresse (til ein rutarport), og deretter eit DNS-oppslag for å finna ei IP-adresse. MAC-rammene 5 og 6 ser me ikkje på i detalj: Dei inneheld ARP-meldingar for å finna 158.38.51.9 (som tilsvarer venus.edt.hist.no ) på det logiske nettet. No kan «brukarkommunikasjonen» mot VENUS byrja. * Kva er føremålet med dei tre MAC-rammene 7, 8 og 9? Protokollfeltet i IP-header i desse rammene har verdien 0x06, dvs. TCP. Då skal dei 20 fyrste oktettane i datafeltet tolkast som TCP-header. Ingen av dei tre rammene har datafelt etter TCP-header. Nr. 7 har SYN-flagg, nr. 8 har SYN og
ACK, og nr. 9 har ACK i TCP-header. Til saman utgjer dei eit trevegs handslag («three-way handshake»), altså oppkopling av ein TCP-sesjon (opning av ein TCP-socket). TCP-portadressa på mottakarsida er 21. Ein FTP-tenar svarer på TCP-anrop mot denne porten. Føremålet er altså å opna ein kommandokanal mot FTP-tenaren på VENUS. I Wireshark kan ein skilja ut dei TCP-segmenta som høyrer til ein TCP-sesjon, slik at ein kan sjå på dei under eitt: Marker ei av dei aktuelle rammene som inneheld TCP-segment, td. nr. 7. Høgreklikk og vel «Follow TCP stream» på oppsprettmenyen. I det øvste feltet står no berre dei MAC-rammene som inngår i den valde TCP-sesjonen. Eit eige vindauga viser alle data som vert utveksla i dataoverføringsfasen. Dei er presenterte som ASCII-tekst. Der er to fargar, ein for kvar senderetning. * Korleis er denne TCP-sesjonen eintydig identifisert? (Vink: Høgreklikk på den same ramma som i stad og vel «Conversation Filter TCP» på oppsprettmenyen. No kan du sjå på filteruttrykket oppe til venstre [ljosgrøn bakgrunn].) Filteruttrykket som kjem til synes er: (ip.addr eq 158.38.51.34 and ip.addr eq 158.38.51.9) and (tcp.port eq 2499 and tcp.port eq 21).) TCP-sesjonen er identifisert ved IP-adressene og TCP-portadressene i båe endane, altså all adresseinfo. i IP- og TCP-header. Over denne kommandokanalen sender klienten PORT 158,38,51,34,9,197 og RETR cd.gif. * Kva er føremålet med desse kommandoane? PORT 158,38,51,34,9,197 og RETR cd.gif er to kommandoar som til saman får FTP-tenaren (VENUS) til å kopla opp ein ny TCP-sesjon, ein kortlivet datakanal, mot TCP-port 2501 ( = 9 256 + 197) på 158.38.51.34 (klientmaskina) senda fila cd.gif (i TCP-dataoverføringsfasen)
kopla ned TCP-sesjonen Filtreringa kan opphevast, slik at ein får sjå att alle rammene i det øvste vindauga: Trykk «Clear»-knappen til høgre for filteruttrykket. (Merknad: I dette eksempelet bruker FTP filoverføring i aktiv modus. Det vanlegaste i dag er å bruka passiv modus: Klienten sender ein PASV-kommando som får tenaren til å opna ein lyttande port, slik at klienten sjølv kan kopla opp den kortlivete datakanalen.) Sluttord Dette får vera nok obligatorisk arbeid i denne omgangen. No har du fått litt brukarrøynsle med, og kan henda smaken på, protokollanalysatoren Wireshark? Har du lyst til å gå vidare? I fila cap.pcap ligg òg nokre HTTP-transaksjonar. Dei er ukrypterte. Kan du finna HTML-kode i nokon av dei? Dei siste 65 rammene i cap.pcap tilhøyrer ein sesjon i kryptoprotokollen SSH2 (Secure Shell). Her finst ingen nyttedata i klårtekst!