Sujet - Département des Sciences Informatiques

Transcription

Sujet - Département des Sciences Informatiques
Chapitre 2
Protocoles : Ethernet - IP - ICMP - UDP TCP
1
Préambule
Voici les traces d’une trame interceptée (les bits sont représentés sous forme hexadécimale par commodité).
Début de la trame éthernet interceptée
00 01 f4 32 9e 0e 00 16 76 04 f2 4a 08
04 43 8f c3 40 00 40 11 1b c8 b2 17 2d
88 12 11 ac 08 01 1e 09 a8 88 91 9b 18
bb f5 ff f6 86 b6 cd c8 c3 35 67 7e 80
Fin de la trame interceptée.
:
00
0c
09
00
45
ac
00
02
00
16
19
8f
En vous aidant des définitions des trames et du tableau de conversion, vous remplirez le tableau correspondant.
Adresse ethernet source
Adresse ethernet destination
Adresse IP source
Adresse IP destination
Port source
Port destination
Protocole (UDP, ICMP, TCP) ?
Quel est le nom du service accédé ?
Note :
– Vous trouverez le format des différents protocoles dans la suite du TD.
– options et Remplissage peuvent ne pas être présents dans la trame. Et ils ne sont pas présents dans l’exercice... Ne
considérez donc pas ces deux champs.
Quelques conversions hexadécimales : 00 (0) - 01 (1) - 02 (2) - 04 (4) - 06 (6) - 08 (8) - 09 (9) - 0C (12) - 0E (14) - 11
(17) - 12 (18) - 16 (22) - 17 (23) - 18 (24) - 19 (25) - 1B (27) - 1E (30) - 2D (45) - 32 (50) - 35 (53) - 40 (64) - 43 (67) - 45
(69) - 4A (74) - 67 (103) - 76 (118) - 7E (126) - 80 (128) - 86 (134) - 88 (136) - 8F (143) - 91 (145) - 9B (155) - 9E (158) A8 (168) - AC (172) - B2 (178) - B6 (182) - BB (187) - C3 (195) - C8 (200) - CD (205) - F2 (242) - F4 (244) - F5 (245) - F6
(246) - FF (255) - 0001 (1) - 0016 (22) - 0019 (25) - 028F (655) - 0443 (1091) - 0800 (2048) - 0801 (2049) - 11AC (4524) 1809 (6153) - 1BC8 (7112) - 1E09 (7689) - 2D0C (11532) - 4000 (16384) - 4006 (16390) - 4500 (17664) - 677E (26494) - 7604
9
Introduction aux réseaux IP (niveau 1)
Réseaux IP - niveau 1
(30212) - 8000 (32768) - 86B6 (34486) - 8812 (34834) - 8FC3 (36803) - 919B (37275) - 9E0E (40462) - A888 (43144) - AC16
(44054) - B217 (45591) - BBF5 (48117) - C335 (49973) - CDC8 (52680) - F24A (62026) - F432 (62514) - FFF6 (65526) -
2
ethernet
Question 8 Interceptez et analysez un datagramme ethernet capturé par wireshark. Reportez-vous au format
ethernet de l’annexe et retrouvez dans wireshark les différents champs.
3
IP
Question 9 Interceptez et analysez un datagramme IP capturé par wireshark. Reportez-vous au format IP de
l’annexe et retrouvez dans wireshark les différents champs.
4
ICMP
Question 10 Interceptez et analysez les trames ICMP échangées lors du lancement de la commande ping entre :
– votre machine et une machine de votre réseau,
– votre machine et une machine d’un autre réseau.
Reportez-vous au format ICMP de l’annexe et retrouvez dans wireshark les différents champs.
Question 11 Soit l’adresse IP IP1 correspondant à une machine de votre réseau ne répondant pas (car n’existant
pas, mal ou non connectée par exemple) (”host down”).
Soit la machine IP2 = 76.18.76.1 dont le réseau n’est pas accessible par les routeurs (”host unreachable”).
Faites un ping sur IP1, puis sur IP2 et comparez les temps de réponse (rapide/très long).
Expliquez (faites un wireshark pour voir les messages éventuellement échangés). Dans quel cas y a-t-il eu un paquet
ICMP ? De quel type est-il ?
5
TCP
Question 12 Déterminez quels sont les services TCP tournant sur votre machine à l’aide de la commande
netstat -a -n --ip
Par comparaison avec les Well-Known Port 1 dans le fichier /etc/services, déterminez les noms de ces services.
Quelles sont les connexions en cours ? Depuis quelle machine ? Vers quelle machine ?
Question 13 Quel est le port TCP utilisé pour le protocole http ? Testez avec le navigateur firefox une connexion
HTTP vers l’URL http://204.18.23.254/index.html
À l’aide de l’utilitaire wireshark, analysez les trames échangées lors d’une session http.
Suivez ensuite le dialogue TCP à l’aide de wireshark. (Menu Analyze -> Follow TCP Stream après avoir sélectionné
un paquet TCP du début de la connexion).
Syntaxe : Dialogue TCP
telnet adresse IP numéro de port
netcat (ou nc) est un utilitaire permettant de d’émuler un client ou un serveur en TCP ou en UDP. En mode TCP, il
permet d’initier une connexion à un port donné avec la machine de son choix puis de dialoguer en utilisant cette connexion.
Syntaxe :
– Client TCP : nc host port On peut également utiliser telnet adresse numero de port
– Serveur TCP : nc -l -p port
– Client UDP : nc -u host port
– Serveur UDP : nc -u -l host -p port
A l’aide de netcat, reproduisez-le dialogue HTTP.
1. Pour certains services ”courants” (FTP, telnet...), un numéro de port est associé et est connu de tout le monde.
DÉPARTEMENT
Sciences Informatiques
Page 10/36
Introduction aux réseaux IP (niveau 1)
Réseaux IP - niveau 1
Dialogue minimal HTTP :
GET ressource locale HTTP/1.1
Host: adresse de la machine cliente
(un retour chariot supplémentaire)
Question 14 Interceptez et analysez un segment TCP capturé par wireshark. Reportez-vous au format TCP de
l’annexe et retrouvez dans wireshark les différents champs.
6
UDP
Question 15 Déterminez quels sont les services UDP tournant sur votre machine à l’aide de la commande netstat
-a -n --ip. Par comparaison avec les Well-Known Port 2 dans le fichier /etc/services, déterminez les noms de ces services.
Question 16 À l’aide du programme netcat, envoyez un message UDP sur le port daytime (13) du PC de votre
voisin afin de récupérer la date courante. Analysez les paquets relatifs à cet échange avec l’utilitaire wireshark.
Question 17 Interceptez et analysez un datagramme UDP capturé par wireshark. Reportez-vous au format UDP
de l’annexe et retrouvez dans wireshark les différents champs.
Question 18 A l’aide de wireshark, analyser les mécanismes mis en oeuvre pour traceroute. Reconstituez les
différentes communications.
7
Annexes
7.1
Trame
Ethernet
0
8
16
24
7.3
31
ADRESSE ETHERNET DESTINATION
Segment
0
4
8TCP
10
16
Port source TCP
24
31
Port destination TCP
Numéro de séquence
ADRESSE ETHERNET SOURCE
TYPE
Numéro d’acquittement
Longueur
en−tete Réservé
Données
Taille de la fenetre
Code
Somme de controle
...
Pointeur urgent
Options
Remplissage
Données
Quelques code de types de données transportées par ethernet :
...
– Protocole IPv4 : 0800
– Protocole ARP : 0806
Quelques services TCP bien connus : tcpmux (1/tcp) - echo
– Protocole IPv6 : 86DD
(7/tcp) - ftp-data (20/tcp) - ftp (21/tcp) - ssh (22/tcp) - telnet (23/tcp) - smtp (25/tcp) - nameserver (42/tcp) - whois
(43/tcp) - domain (53/tcp) - mtp (57/tcp) - bootps (67/tcp)
7.2 Datagramme
IP
0
4
8
16
24
31
Longueur
- bootpc (68/tcp) - www (80/tcp) - csnet-ns (105/tcp) - rtelVersion d’en−tete Type de service
Longueur totale
net (107/tcp) - pop3 (110/tcp) - nntp (119/tcp) - pwdgen
Identification
Drapeau Décalage fragment
(129/tcp) - imap2 (143/tcp) - ldap (389/tcp) - login (513/tcp)
Durée de vie
Protocole
Somme de controle d’en−tete
- printer (515/tcp) - nfs (2049/tcp) - postgresql (5432/tcp) Adresse IP Source
Adresse IP destination
7.4
Options IP
(de 0 10 options de 32 bits)
Datagramme
0
4
8 10 UDP
16
Port source UDP
...
24
31
Port destination UDP
Longueur du message
Somme de controle
Données
...
Données
la longueur d’en−tete est exprimee en nombre de mots de 32 bits
la longueur
totale
est exprimee de
en octets
Quelques
code des
protocoles
données transportées par IP :
– Protocole ICMP : 01
– Protocole TCP : 06
– Protocole UDP : 11
Quelques services UDP bien connus : echo (7/udp) - domain (53/udp) - bootps (67/udp) - bootpc (68/udp) - tftp
(69/udp) - csnet-ns (105/udp) - rtelnet (107/udp) - ntp
(123/udp) - pwdgen (129/udp) - who (513/udp) - syslog
(514/udp) - nfs (2049/udp) - postgresql (5432/udp) -
2. Pour certains services ”courants” (ntp, snmp,...), un numéro de port est associé et est connu de tout le monde.
DÉPARTEMENT
Sciences Informatiques
Page 11/36
Introduction aux réseaux IP (niveau 1)
8
Réseaux IP - niveau 1
Validation des compétences acquises à l’issue de cette séance
Je maitrise les compétences demandées à l’issue de cette séance si je suis capable de :
Au niveau ”théorique”
2 déchiffrer une trame dont le contenu est donné en hexadécimal à partir des formats des protocoles Ethernet, IP, ARP,
ICMP, TCP, UDP
2 construire une trame à partir des protocoles Ethernet, IP, ARP, ICMP, TCP, UDP
2 lire et dessiner un diagramme d’échange
2 restituer les 5 couches du modèles IP en expliquant leur raison d’être. Savoir y placer ethernet, IP, ARP, ICMP, TCP,
UDP et les applications vues en cours comme SMTP, POP, IMAP, DHCP, DNS, HTTP, FTP
Au niveau ”pratique”
2 utiliser wireshark pour déchiffrer une trame interceptée
2 utiliser wireshark pour reconstituer un dialogue applicatif sur TCP ou UDP
2 utiliser netcat (nc) pour simuler un client ou un serveur en TCP ou en UDP suivant un diagramme d’échange au
niveau applicatif
2 utiliser netstat -an pour lister les ports ouverts.
2 utiliser le fichier /etc/services pour identifier le port couramment associé à un service donné et inversement.
DÉPARTEMENT
Sciences Informatiques
Page 12/36

Documents pareils