Académique Documents
Professionnel Documents
Culture Documents
Hammam--Sousse
Cours & TD
Wafa KAMMOUN
Niveau 3 emeLMD
Année Universitaire
2009-2010
Plan de cours
Adressage et Routage
Les services IP
L'adressage IP
Sécurité
Services de sécurisation d’un système d’information
Différents types d’attaques : Cheval de Troie, Virus, Ver, etc..
Cryptage symétrique et asymétrique
HTTPS, IPSec, Firewall et VPN
2
Les services IP
Le protocole IP
Le protocole IP (Internet Protocol) est un des protocoles majeurs de la pile TCP/IP. Il s'agit d'un
protocole réseau (niveau 3 dans le modèle OSI). Il n'est pas orienté connexion, c'est a dire qu'il n'est pas
fiable. Cette fiabilité dépend de la couche de transport.
Routage dynamique
Il existe sur les routeurs certaines applications qui permettent aux routeurs voisins de s'échanger de
l'information quant à leurs tables de routage; ce sont les protocoles de routage.
Dans le routage statique, l'administrateur réseau doit informer (paramétrer) les routeurs pour leur
donner des ordres de routage: sur quelle interface envoyer les datagrammes pour le réseau de
destination d'adresse IP "X". C'est une modification statique de la table de routage des routeurs.
Si la configuration du réseau change (souvent) pour des raisons diverses : incident, coupure,
changement de matériel, surcharge, alors il faut, pour maintenir le routage dans de bonnes conditions,
(donc maintenir la continuité de service), que chaque routeur adapte sa table de routage à la nouvelle
configuration. Cela n'est possible qu'à travers un processus automatique.
Adresses IP
Dans un réseau IP, chaque interface possède une adresse IP fixée par l'administrateur du réseau ou
attribuée de façon dynamique via des protocoles comme DHCP. Par extension, pour une machine simple,
un PC, avec une seule interface Ethernet, on dira que cette machine a une adresse IP. Il est déconseillé
de donner la même adresse à 2 machines différentes sous peine de problèmes (collisions).
Une adresse IP (IPv4 pour être précis) est une suite de 32 bits notée en général a.b.c.d avec a, b, c, et d
des entiers entre 0 et 255. Chaque valeur a, b, c ou d représente dans ce cas une suite de 8 bits.
Exemple : une machine a comme adresse IP 134.214.80.12. a vaut 134 soit (1000 0110) en binaire. b
vaut 214 soit (1101 0110) en binaire. c vaut 80 soit (0101 0000) et d vaut 12 vaut (0000 1100). En
binaire, l'adresse IP s'écrit donc 1000 0110 1101 0110 0101 0000 0000 1100.
3
Masque d'un réseau IP
Le masque du réseau permet de connaître le nombre de bits du net-id. On appelle N ce nombre. Il s’agit
d’une suite de 32 bits composée en binaire de N bits à 1 suivis de 32-N bits à 0.
Le réseau d’une multinationale comprend toutes les adresses IP commençant par 5. Une adresse IP sera
du type 5.*.*.*. Le net-id comporte 8 bits et le host-id comporte 24 bits. Le masque s’écrira donc en
binaire 8 bits à 1 suivi de 24 bits à 0 soit 1111 1111 0000 0000 0000 0000 0000 0000. Le masque sera
donc 255.0.0.0 Un tel réseau peut comporter 2 24 machines soit 16 millions environ.
Le réseau d’un campus universitaire comprend toutes les adresses IP commençant par 134.214. Une
adresse IP sera du type 134.214.*.*. Le net-id comporte 16 bits et le host-id comporte 16 bits. Le
masque s’écrira donc en binaire 16 bits à 1 suivi de 16 bits à 0 soit 1111 1111 1111 1111 0000 0000
0000 0000. Le masque sera donc 255.255.0.0. Un tel réseau peut contenir au maximum 2 16 machines
soit 65536 machines.
le réseau d’une PME comprend toutes les adresses IP commençant par 200.150.17. Une adresse IP sera
du type 200.150.17.* Le net-id comporte 24 bits et le host-id comporte 8 bits. Le masque s’écrira donc
en binaire 24 bits à 1 suivi de 8 bits à 0 soit 1111 1111 1111 1111 1111 1111 0000 0000. Le masque
sera donc 255.255.255.0. Un tel réseau peut contenir au maximum 2 8 machines soit 256 machines.
Adresse réseau
Chaque réseau IP a une adresse qui est celle obtenue en mettant tous les bits de l’host-id à 0. Le réseau
de l’exemple 3 a comme adresse réseau 200.150.17.0. Un réseau IP est complètement défini par son
adresse de réseau et son masque de réseau.
Notation CIDR
La notation CIDR, pour Classless Inter-Domain Routing, est historiquement introduite après la notion de
classe d'adresse IP (cf. section sur les classes). Elle s'inscrit dans une intention d'outrepasser la limite
implicitement fixée par la notion de classe en termes de plages d'adresses disponibles dans les réseaux
IPv4.
La notation initiale non CIDR considère pour un réseau donné le couple formé par l'adresse et le masque
dudit réseau. En notation CIDR, une forme d'adressage équivalente est construite – ou obtenue, si l'on
part de l'adresse en notation initiale non CIDR – par l'association de l'adresse du réseau (à l'instar de la
notation initiale) et de la longueur du préfixe binaire déterminant ledit réseau. Le préfixe binaire de la
notation CIDR correspond au nombre des premiers bits à 1 dans la forme binaire du masque du réseau
de la notation initiale non CIDR.
En adressage IPv4, cela se concrétise par une forme décimale de 4 octets suivie d'un entier compris
entre 0 et 32. En pratique, cette plage peut s'étendre de 1 à 31 afin de permettre un adressage des
hôtes (host-id) par les bits différentiels (en effectif non nul).
Exemples
o On considère le réseau d'adresse (décimale) 150.89.0.0 et de masque (décimal)
255.255.0.0 en notation initiale non CIDR. Ledit masque comporte 16 bits à 1 ;
ces 16 bits sont les 16 premiers bits du masque. En notation CIDR, ce réseau
est identifié par la forme décimale suivante : 150.89.0.0/16.
4
o De la même manière, le réseau d'adresse (décimale) 200.89.67.0 et de masque
(décimal) 255.255.255.0 pourra être identifié par la notation CIDR
200.89.67.0/24.
o Pour un réseau d'adresse (décimale) 192.168.144.0 et de masque (décimal)
255.255.240.0, la notation CIDR sera 192.168.144.0/20.
Les classes A, B et C
Historiquement, le réseau Internet était découpé en classes d'adresses :
Classe A :
o Le premier bit de ces adresses IP est à 0.
o Le masque décimal associé est 255.0.0.0, soit les 8 premiers bits à 1.
o Les adresses de ces réseaux ont la forme décimale a.0.0.0 avec a variant 0 à
(27-1 =) 127.
o Cette classe détermine ainsi (127 - 0 + 1 =) 128 réseaux.
o Le nombre de bits restant pour l'adressage des hôtes est de (32 - 8 =) 24.
24
o Chaque réseau de cette classe peut donc contenir jusqu'à 2 -2 = 16 777 214
machines.
Classe B :
o Les 2 premiers bits de ces adresses IP sont à 1 et 0 respectivement.
o Le masque décimal associé est 255.255.0.0, soit les 16 premiers bits à 1.
7
o Les adresses de ces réseaux ont la forme décimale a.b.0.0 av ec a variant de (2
7 6
=) 128 à (2 + 2 -1 =) 191 et b variant de 0 à 255.
o Cette classe détermine ainsi ( (191 - 128 + 1) × (255 - 0 + 1) =) 16 384
réseaux.
o Le nombre de bits restant pour l'adressage des hôtes est de (32 - 16 =) 16.
16
o Chaque réseau de cette classe peut donc contenir jusqu'à 2 -2 = 65 534
machines.
Classe C :
o Les 3 premiers bits de ces adresses IP sont à 1, 1 et 0 respectivement.
o Le masque décimal associé est 255.255.255.0, soit les 24 premiers bits à 1.
7
o Les adresses de ces réseaux ont la forme décimale a.b.c.0 avec a variant de (2
6 7 6 5
+ 2 =) 192 à (2 + 2 + 2 -1 =) 223, b et c variant de 0 et 255 chacun.
o Cette classe détermine ainsi ( (223 - 192 + 1) × (255 - 0 + 1) × (255 - 0 + 1) =)
2 097 152 réseaux.
o Le nombre de bits restant pour l'adressage des hôtes est de (32 - 24 =) 8.
8
o Chaque réseau de cette classe peut donc contenir jusqu'à 2 -2 = 254 machines.
La notion de classe d'adresses a été rendue obsolète pour l'adressage des nœuds du réseau Internet car
elle induisait une restriction notable des adresses IP affectables par l'utilisation de masques spécifiques.
Les documents RFC 1518 et RFC 1519 publiés en 1993 spécifient une nouvelle norme : l'adressage CIDR
(cf. supra). Ce nouvel adressage précise qu'il est possible d'utiliser un masque quelconque appliqué à
5
une adresse quelconque. Il organise par ailleurs le regroupement géographique des adresses IP pour
diminuer la taille des tables de routage des principaux routeurs du réseau Internet.
Exemple
Une machine possède l’adresse IP 134.214.80.12 : elle appartient au réseau de classe B 134.214.0.0 de
masque 255.255.0.0. Dans ce réseau, une machine peut avoir une adresse IP comprise entre
134.214.0.1 et 134.214.255.254. L’adresse de broadcast est 134.214.255.255.
de 10.0.0.0 à 10.255.255.255
de 172.16.0.0 à 172.31.255.255
de 192.168.0.0 à 192.168.255.255
les adresses de 127.0.0.0 à 127.255.255.255 sont également interdites.
Les adresses 127.0.0.0 à 127.255.255.255 s’appelle l’adresse de boucle locale (loopback en anglais) et
désigne la machine locale (localhost).
Exemple de découpage
On considère le réseau d'adresse 134.214.0.0 et de masque 255.255.0.0. On veut découper ce réseau en
8 sous-réseaux. Pour chaque sous-réseau, on veut obtenir le masque et l’adresse.
Calcul du masque
On veut découper le réseau en 8. Or 8 = 2 3. En conséquence, le masque de chaque
sous-réseau est obtenu en ajoutant 3 bits à 1 au masque initial. L’ancien masque
255.255.0.0 comprend 16 bits à 1 suivis de 16 bits à 0. Le nouveau masque
comprendra donc 16 + 3 = 19 bits à 1 suivis de 13 bits à 0. Il correspond à
255.255.224.0.
6
Calcul de l'adresse de chaque sous-réseau
Pour obtenir l'adresse réseau, tous les bits du host-id sont positionnés à 0. On obtient
donc comme adresse pour chaque sous-réseau :
o 134.214.(000 00000).0 soit 134.214.0.0
o 134.214.(001 00000).0 soit 134.214.32.0
o 134.214.(010 00000).0 soit 134.214.64.0
o 134.214.(011 00000).0 soit 134.214.96.0
o 134.214.(100 00000).0 soit 134.214.128.0
o 134.214.(101 00000).0 soit 134.214.160.0
o 134.214.(110 00000).0 soit 134.214.192.0
o 134.214.(111 00000).0 soit 134.214.224.0.
EXERCICE
Solution de l'exercice
EXERCICE
Découpez en 16 sous-réseaux le réseau 150.27.0.0 de masque 255.255.0.0 Indiquez pour chaque sous-
réseau la liste des adresses attribuables à une machine ainsi que l’adresse de diffusion.
Notation CIDR
La notation CIDR, pour Classless Inter-Domain Routing, est historiquement introduite après la notion de
classe d'adresse IP (cf. section sur les classes). Elle s'inscrit dans une intention d'outrepasser la limite
implicitement fixée par la notion de classe en termes de plages d'adresses disponibles dans les réseaux
IPv4.
La notation initiale non CIDR considère pour un réseau donné le couple formé par l'adresse et le masque
dudit réseau. En notation CIDR, une forme d'adressage équivalente est construite – ou obtenue, si l'on
part de l'adresse en notation initiale non CIDR – par l'association de l'adresse du réseau (à l'instar de la
notation initiale) et de la longueur du préfixe binaire déterminant ledit réseau. Le préfixe binaire de la
notation CIDR correspond au nombre des premiers bits à 1 dans la forme binaire du masque du réseau
de la notation initiale non CIDR.
7
En adressage IPv4, cela se concrétise par une forme décimale de 4 octets suivie d'un entier compris
entre 0 et 32. En pratique, cette plage peut s'étendre de 1 à 31 afin de permettre un adressage des
hôtes (host-id) par les bits différentiels (en effectif non nul).
Exemples
o On considère le réseau d'adresse (décimale) 150.89.0.0 et de masque (décimal)
255.255.0.0 en notation initiale non CIDR. Ledit masque comporte 16 bits à 1 ;
ces 16 bits sont les 16 premiers bits du masque. En notation CID R, ce réseau
est identifié par la forme décimale suivante : 150.89.0.0/16.
o De la même manière, le réseau d'adresse (décimale) 200.89.67.0 et de masque
(décimal) 255.255.255.0 pourra être identifié par la notation CIDR
200.89.67.0/24.
o Pour un réseau d'adresse (décimale) 192.168.144.0 et de masque (décimal)
255.255.240.0, la notation CIDR sera 192.168.144.0/20.
de 10.0.0.0 à 10.255.255.255
de 172.16.0.0 à 172.31.255.255
de 192.168.0.0 à 192.168.255.255
les adresses de 127.0.0.0 à 127.255.255.255 sont également interdites.
Les adresses 127.0.0.0 à 127.255.255.255 s’appelle l’adresse de boucle locale (loopback en anglais) et
désigne la machine locale (localhost).
Sur l'internet, l’organisme IANA est chargé de la distribution des adresses IP.. Cet organisme distribue
les adresses IP aux fournisseurs d’accès à l'internet
Un réseau IP de classe A, B ou C peut être découpé en sous -réseaux. Lors d’un découpage le nombre
de sous-réseaux est une puissance de 2 : 4, 8, 16, 32 … Chaque sous-réseau peut être découpé en sous-
sous-réseaux et ainsi de suite On parle indifféremment de réseau IP pour désigner un réseau, un sous -
réseau, … Chaque sous-réseau sera défini par un masque et une adresse IP.
8
ACL Standard: 1<Nr<99
Permet d’autoriser ou d’interdire des @ spécifiques ou un ensemble d’@ ou de
protocoles
ACL étendu : 100<Nr<199
TLD, pour Top Level Domains = domaines de niveau supérieurs deux catégories :
les « génériques » comme .arpa, .com, .edu, .biz (business)
les «nationaux », appelés ccTLD (country code TLD) comme .fr, .de…
Des organismes de gestion de ces TLD comme le NIC France assurent l'unicité d'un nom de
domaine à l'intérieur d'un TLD donné.
9
L'ICANN gère la liste des Top Level, délègue la gestion de chaque TLD à un registry qui
attribe les noms de domaine sur sa TLD. Chaque registry au torise des registrars à vendre des
noms de domaine. Les registrars ont un rôle commercial.
Un nom de domaine à un coût : achat + configuration DNS + redevance annuelle.
Les serveurs de noms : ils permettent d'établir la correspondance entre le nom de dom aine et
l'adresse IP des machines d'un réseau.
Chaque domaine possède un serveur primaire et un secondaire.
Chaque serveur de nom est déclaré auprès d’un serveur de nom de domaine de niveau
immédiatement supérieur.
Les serveurs correspondant des TLD sont les serveurs de noms racine .
Un serveur de noms définit une zone (ensemble d'enregistrements de ressources appartenant à
la même portion de l'espace de noms DNS). Il existe trois types de zones DNS : les zones
principales (ajout, modification et supprimession d’ enregistrements) ; les zones secondaires
(copies en lecture seule d'une zone principale) et les zones de stub (copies partielle d'une
zone).
Résolution de noms de domaine = trouver l'adresse IP correspondant au nom d'un hôte. Le
résolveur réalise cette opération. Il existe deux types de requêtes DNS :
une requête récursive : Lorsqu'un serveur DNS reçoit une requête récursive, il doit
donner la réponse la plus complète possible. C'est pourquoi le serveur DNS est
souvent amené à joindre d'autres serveurs de noms dans le but de trouver la réponse
exacte.
une requête itérative : Lorsqu'un serveur reçoit une requête itérative, il renvoie la
meilleure réponse qu'il peut donner sans contacter d'autres serveurs DNS
Lorsqu'une machine cliente envoie une requête à un serveur DNS, elle est toujours de type
récursif.
Lorsqu'un serveur DNS ne peut pas répondre à la requête récursive d'un client, il va d'abord
essayer de contacter ses redirecteurs. Si le serveur DNS est paramétré pour ut ilisé des
redirecteurs alors il envoie une requête récursive au premier serveur DNS défini dans sa liste
de redirecteurs. Par contre, si le serveur DNS n'a pas de redirecteurs, il va envoyer une
requête itérative au premier serveur DNS situé dans sa liste de serveur DNS racine. Le
serveurs DNS n'envoie donc des requêtes itératives que si il n'a pas de redirecteurs .
Les requêtes DNS s’effectuent avec UDP sur le port 53
Types d'enregistrements
Un DNS est une base de données répartie contenant des enregistr ements possédant une durée
de vie (TTL) appelés RR (Resource Records).
un enregistrement DNS comporte les informations suivantes :
Nom de domaine (FQDN) TTL Type Classe RData
www.commentcamarche.net. 3600 A IN 163.5.255.85
Type : A = adresse IPV4 ; AAAA = adresse IPv6; CNAME = un alias ; MX = serveurs de
messageries ; PTR = mappages entre une adresse IP et un nom d'hôte (zones de recherches
inversées); SOA = serveur de nom ayant autorité sur la zone…,
RDATA : données correspondant à l'enregistrement: adresse IP sur 32 bits , un nom de
domaine…
Les utilitaires :
ping –a <nom de la machine> -a indique d’effectuer la résolution de nom
Ceci prouve que le DNS est opérationnel, car la résolution a été faite.
10
Nslookup permettant d’émettre des requêtes de test et d’obtenir des réponses détaillées en
ligne de commande (diagnostique).
Host : host -t ns fr. 192.112.36.4 demande à 192.112.36.4 quels sont les "name servers" qui
gèrent le TLD fr
11
DHCP
Dynamic Host Configuration Protocol (DHCP) est un terme anglais désignant un protocole réseau dont le
rôle est d'assurer la configuration automatique des paramètres TCP/IP d'une station, notamment en lui
assignant automatiquement une adresse IP et un masque de sous-réseau.
But du DHCP
Ce protocole permet, comme son nom l'indique, la configuration automatique du réseau d'un ordinateur.
Ce protocole est courament utilisé pour attribuer automatiquement des adresses IP à des machines.
Cela permet aussi de gérer depuis une seule machine toute la configuration réseau des machines d'un
parc informatique.
Imaginez par exemple un gros réseau d'entreprise dont on a besoin de changer l'adresse IP d'un serveur
DNS. Si la configuration est statique sur les postes, il faut alors passer sur chacun d'entre-eux pour
déclarer la nouvelle adresse IP du serveur DNS. Ceci s'avère donc très lourd si les postes sont configurés
pour obtenir leur configuration auprès d'un serveur DHCP, alors il suffit de déclarer l'adresse IP dans le
fichier de configuration du serveur DHCP, et la modification sera automatiquement prise en compte par
toutes les machines, ce qui représente beaucoup moins de travail.
La machine reçoit alors une ou plusieurs réponses. Elle va en choisir une (la première reçue) et répondre
au serveur DHCP qui est à l'origine de la réponse pour confirmer qu'elle a bien décidé de choisir cette
configuration en particulier. Le serveur envoie alors tous les paramètres qu'il détient (passerelle par
défaut, adresse du serveur DNS, WINS, etc.) et la machine se configure elle-même selon ce que le
serveur DHCP lui a envoyé.
Afin de s'assurer de ne pas prendre une adresse IP déjà utilisée par une autre machine (éventuellement
dû à une configuration statique), la machine envoie une requête ARP sur l'adresse que le serveur vient
de lui attribuer. S'il n'y a pas de réponse après une certaine durée, la machine considère que cette
adresse lui appartient.
La durée durant laquelle l'adresse lui est attribuée s'appelle un BAIL. A la moitié de la durée du bail, puis
régulièrement par la suite, la machine demande le renouvellement du bail au serveur DHCP qui lui a
attribué sa configuration IP, ceci pour éviter toute interruption de la communication IP. Si le
renouvellement n'a pas eu lieu à l'échéance du bail, la communication IP est interrompue.
12
Listening on LPF/eth0/00:40:F4:A7:97:1C
Sending on LPF/eth0/00:40:F4:A7:97:1C
Sending on Socket/fallback
DHCPREQUEST of 192.168.0.1 on eth0 to 255.255.255.255 port 67
DHCPACK of 192.168.0.1 from 192.168.0.2
SIOCADDRT: File exists
bound to 192.168.0.1-- renewal in 20922 seconds.
13
Protocole SNMP
Principe de fonctionnement
Le protocole SNMP se base sur le fait qu’il existe une station de gestion réseau, le manageur,
dont le rôle est de contrôler le réseau et de communiquer via ce protocole avec un agent.
L’agent est de manière générale une interface SNMP embarquée sur le matériel destiné à être
administré à distance.
14
Le protocole SNMP est constitué de plusieurs commandes différentes :
Get : Cette commande, envoyée par le manageur à l’agent, a pour objectif de demander une
information à l’agent. Celui-ci, dans le cas où la validité de la requête est confirmée, renvoie
au manageur la valeur correspondant à l’information demandée.
Getnext : Cette commande, envoyée par le manageur à l’agent, a pour objectif de
demander l’information suivante à l’agent : il arrive qu’il soit nécessaire de parcourir toute
une liste de variables de l’agent. On utilise alors cette commande, à la suite d’une requête
‘get’, afin d’obtenir directement le contenu de la variable suivante.
Principe
SNMP fonctionne à partir de quatre éléments :
15
Chaque noeud administrable du réseau (équipements et stations) possède une base de données
contenant des informations locales au noeud, appelée Management Information Base. Un agent sur
le noeud se charge de collecter les informations en réponse aux interrogations d'un manager. L'agent
peut prendre l'initiative de la communication avec un manager en lui envoyant des Traps pour signaler
des évènements anormaux (alarmes).
Le transport des informations entre les agents et le manager se fait à l'aide du protocole SNMP (Single
Network Management Protocol).
Les MIBs
Une MIB définit les informations spécifiques d'administration réseaux et leur signification. Elle est
composée d'un ensemble de valeurs et paramètres manipulables par le système d'administration. Les
informations disponibles sont de type:
Chaque noeud (ponts, routeurs, ...) est représenté par un ensemble de variables. La définition et
l'identification de ces variables est précisée par la norme SMI (Structure of Management Information).
L'arborescence MIB-2
Les informations stockées dans la MIB sont rangées dans une arborescence. L'arborescence MIB-2 est
une évolution de la MIB disposant d'objets supplémentaires. Elle constitue une branche du groupe
iso.org.dod.internet.mgmt.
16
Groupe Commentaires
transmission Informations sur la transmission et sur les protocoles utilisés par chaque interface.
Object Identifiers
Les variables de la MIB-2 sont identifiées par le chemin dans l'arborescence, noté de deux façons:
Exemples:
17
Notation par
Définition SMI Notation par nom
"point"
iso.org.dod.internet.mgmt.mib.
interfaces OBJECT IDENTIFIER ::= { mib 2 } 1.3.6.1.2.1.2
interface
Le protocole SNMP
Le protocole SNMP est chargé d'assurer le transport d'informations entre le manager et les agents. Il doit
prendre en compte
la scrutation des agents : le manager (station administration) questionne les différents agents.
la remontée des alarmes en provenance des agents.
18
Primitives Descriptions
Le champ Version précise la version du protocole SNMP utilisée. Le champ Communauté est utilisé afin
d'identifier le manager et de filtrer l'accès aux informations. Le champ PDU SNMP est constitué par l'une
des trois PDU suivantes:
Le champ Type indique s'il s'agit d'une PDU GetRequest, GetNextRequest ou SetRequest. La réponse à la
requête sera retournée avec la valeur fournie par le champ Request-Id, afin d'associer la réponse à la
requête. Le champ Affectation des variables est une suite de couples d'identificateurs et de valeurs
associées. Les valeurs sont fournies uniquement dans le cas d'une PDU SetRequest.
PDU GetResponse
19
Le champ Type permet de reconnaître une PDU SetResponse des PDU précédentes (dont le format est
identique). Les champs error-status et error-index informe sur le résultat de la requête.
PDU Trap
Affectation
Pas d'accès
Read-Only
Read-Write.
Le nom de communauté circule en clair sur le réseau. Beaucoup d'administrateurs préfèrnt ainsi limité
l'accès sur les MIBs en lecture seule, et se déplacent sur les équipements pour modifier certaines
valeurs.
20
Série
Exercice1 :
Le réseau suivant a une adresse de classe C (193.24.5.0) et nécessite quatre sous -réseaux
comprenant chacun 20 noeuds. Au cours des dix prochains mois, on prévoit ajouter trois
usagers par sous réseaux.
Exercice 2 :
Vous avez des postes qui ont les adresses IP suivantes :
198.15.7.18;
198.15.7.32;
198.15.7.31;
198.15.7.6.
Avec 27 bits de masque, est-ce que ces postes peuvent communiquer entre eux sans un aiguilleur? Justifiez votre
réponse.
Solution2 :
Avec 27 bits de masque, est-ce que ces postes peuvent communiquer entre eux sans un routeur ? Justifiez votre
réponse.
23 = 8 sous-réseau
25 = 32 hôtes / sous-réseau
Réseau #0 : réseau – 198.15.7.0; hôtes - 198.15.7.1 à 198.15.7.30; diffusion – 198.15.7.31
Réseau #1 : réseau – 198.15.7.32; hôtes - 198.15.7.33 à 198.15.7.62; diffusion – 198.15.7.63
Communication impossible entre 198.15.7.32 et autres.
21
Les listes de contrôle d’accés étendu
Exercice1 :
Solution1
22
TD: Connection Telnet sur le routeur
Le routeur est accessible à l'aide d'une session Telnet. Utilisez pour cela le client Telnet de Windows 95
sur l'adresse du routeur qui se situe sur votre réseau.
Password:
camelot>
Commandes Description
? Affiche les commandes disponibles
Help Affiche comment obtenir de l'aide
commande ? Décrit la commande
show version Affiche les caractéristiques du routeur
Pour visualiser la configuration du routeur, il est nécessaire de passer en mode privilégié. Ce mode
permet la modification des paramètres de configuration. Dans la session Telnet, tapez la commande "
Enable" et entrez le mot de passe.
camelot#config
Configuring from terminal, memory, or
network [terminal]?
Enter configuration commands, one per line.
End with CNTL/Z.
camelot(config)#/TT>
camelot(config)#interface ethernet0
camelot(config-if)#
23
Puis saisissez la ligne (exactement) : ip address 160.16.3.15 255.255.255.0 secondary. Validez
par Entrée puis CNTL/Z.
camelot#config
Configuring from terminal, memory, or network
[terminal]?
Enter configuration commands, one per line. End with
CNTL/Z.
camelot(config)#
Saisissez la ligne "ip route 160.64.0.0 255.255.0.0 160.32.1.14". Validez par Entrée puis
CNTL/Z.
Testez le routage entre les réseaux 160.16.0.0 et les réseaux 160.64.0.0
Pour retirer la route, reprenez les étapes précédentes en tapant la ligne : "no ip route
160.64.0.0 255.255.0.0 160.32.1.14".
camelot#config
Configuring from terminal, memory, or network
[terminal]?
Enter configuration commands, one per line. End with
CNTL/Z.
camelot(config)#
24
Saisissez la ligne "router rip". Validez par Entrée.
Ajoutez une ligne "network [numéro de réseau]" pour chaque interface
Validez avec les touches CNTL/Z.
camelot(config)#router rip
camelot(config-router)#network 160.16.0.0
camelot(config-router)#network 160.32.0.0
camelot(config-router)#^Z
camelot#
A partir d'une session telnet sur le routeur, sauvegardez la configuration vers le serveur tftp en
tapant la commande "copy running-config tftp" et en saisissant les informations demandées en
vous inspirant de ce qui suit (l'adresse IP est bien sur celle de votre serveur tftp):
Parallèlement, confirmez la réception du fichier lorsque le serveur tftp vous affiche la fenêtre
suivante :
25
TD: Chargement d'une configuration à partir d'un serveur tftp
La configuration sauvegardée sur le serveur tftp peut être éditée et modifiée. Il est ensuite possible de la
charger sur le routeur. Pour celà :
camelot#
l'adresse IP de la source
l'adresse IP de la destination
le type du paquet (tcp, udp, icmp, ip)
le port de destination du paquet
26
Pour un datagramme donné, l'ACL rend deux valeurs :
Syntaxe
Les routeurs Cisco acceptent deux types d'ACL :
l'access-list simple :
l'access-list étendue :
Activation de l'access-list
On associe à chaque interface du routeur une ACL. Depuis la version du firmware de Cisco, on peut aussi
préciser le sens du trafic, c'est à dire in ou out, selon qu'on souhaite que l'ACL s'applique aux paquets
entrant dans le routeur ou bien aux paquets qui quittent le routeur par une interface donnée. Les
versions antérieures à la version 10 ne disposent que de "out".
Une ACL de type in associée à une interface contrôle le trafic qui entre dans le routeur par cette
interface.
Une ACL de type out associée à une interface contrôle le trafic qui quitte le routeur par cette interface.
Attention : les ACL ne s'appliquent qu'au trafic en transit et pas au trafic généré par le routeur lui-
même. Par exemple, le trafic résultant d'une connexion telnet vers le routeur n'est pas soumis aux ACL.
L'activation d'une access-list sur une interface se fait par la commande :
27
access-list-number numéro de l'access-list
in filtre les paquets en entrée
out filtre les paquets en sortie
Il faut préalablement s'être placé sur la bonne interface avec la commande interface
nom_interface
Vérification des ACL associées à l'interface par laquelle est entré le datagramme.
Vérification des ACL associées à l'interface par laquelle le datagramme doit sortir.
Pour chaque vérification, le routeur extrait de chaque datagramme les informations suivantes :
le protocole du datagramme
l'adresse IP de la source (ip-source-datagramme)
l'adresse IP de la destination (ip-destination-datagramme)
le port de destination (port-datagramme)
Ensuite, le routeur applique séquentiellement tous les éléments d'une ACL (i.e. même numéro d'ACL)
jusqu'à trouver un élément qui satisfasse tous les critères suivants :
Si l'élément de l'ACL qui satisfait tous ces critères a le mot-clé "deny", le datagramme est rejeté, s'il a le
mot clé "permit", il est autorisé à transiter. Si aucun élément de l'ACL ne satisfait ces critères, le paquet
est rejeté.
28
TD Snmp
Questions théoriques
2. Tous les objets de l'arbre de référence doivent ils être implémentés dans une MIB?
4. Le type ASN.1 de la valeur d'un objet géré a-t-il un rapport avec la référence de l'objet ?
SNMP: len: 38 version: int(1) 0x00 comm: string(6) «public» type: GET-NEXT
req-id: int(2) 0x5e31 error: int(1) 0x00 error-index: int(1) 0x00
var: obj(8) 1 3 6 1 2 1 2 1 val: empty(0)
SNMP: len: 40 version: int(1) 0x00 comm: string(6) «public» type: RESPONSE
req-id: int(2) 0x5e31 error: int(1) 0x00 error-index: int(1) 0x00
var: obj(7) 1 3 6 1 2 1 2 1 0 val: 0x06
SNMP: len: 178 version: int(1) 0x00 comm: string(6) «public» type: GET-NEXT
req-id: int(2) 0x00a2a2 error: int(1) 0x00 error-index: int(1) 0x00
var: obj(9) 1 3 6 1 2 1 2 2 1 1 val: empty(0)
var: obj(9) 1 3 6 1 2 1 2 2 1 2 val: empty(0)
var: obj(9) 1 3 6 1 2 1 2 2 1 3 val: empty(0)
var: obj(9) 1 3 6 1 2 1 2 2 1 4 val: empty(0)
var: obj(9) 1 3 6 1 2 1 2 2 1 5 val: empty(0)
var: obj(9) 1 3 6 1 2 1 2 2 1 6 val: empty(0)
var: obj(9) 1 3 6 1 2 1 2 2 1 7 val: empty(0)
var: obj(9) 1 3 6 1 2 1 2 2 1 8 val: empty(0)
var: obj(9) 1 3 6 1 2 1 2 2 1 9 val: empty(0)
var: obj(9) 1 3 6 1 2 1 2 2 1 10 val: empty(0)
SNMP: len: 219 version: int(1) 0x00 comm: string(6) «public» type: RESPONSE
req-id: int(2) 0x00a2a2 error: int(1) 0x00 error-index: int(1) 0x00
var: obj(10) 1 3 6 1 2 1 2 2 1 1 1 val: int(1) 0x01
var: obj(10) 1 3 6 1 2 1 2 2 1 2 1 val: string(9) «Ethernet0»
var: obj(10) 1 3 6 1 2 1 2 2 1 3 1 val: int(1) 0x06
var: obj(10) 1 3 6 1 2 1 2 2 1 4 1 val: int(2) 0x05dc
var: obj(10) 1 3 6 1 2 1 2 2 1 5 1 val: gauge(4) 0x00989680
var: obj(10) 1 3 6 1 2 1 2 2 1 6 1 val: string(6) ******
29
var: obj(10) 1 3 6 1 2 1 2 2 1 7 1 val: int(1) 0x01
var: obj(10) 1 3 6 1 2 1 2 2 1 8 1 val: int(1) 0x01
var: obj(10) 1 3 6 1 2 1 2 2 1 9 1 val: time(2) 0x0420
var: obj(10) 1 3 6 1 2 1 2 2 1 10 1 val: counter(4) 0x6b055aa0
MIB
En supposant que tous les routeurs implémentent une MIB -II, le but de l’exercice est de trouver
l’algorithme permettant de réaliser l'équivalent du programme traceroute avec en paramètre l'adresse
du routeur source et celle du routeur destination.
Questions :
Trouver le nœud qui indique le destinataire suivant sur la route de destination.
Nous allons nous intéresser à la structure de donnée correspondant à la spécification d’un protocole
ressemblant à FTP :
Un site client peut se connecter par un port donné à un site serveur.
Le client s’identifie à l’aide d’un nom et d’un mot de passe auxquels est associé un répertoire
par défaut.
Lorsque le client veut récupérer un fichier, il doit envoyer au serveur une requête de
récupération, celui-ci va alors mettre le fichier à disposition sur un port différent à a chaq ue
requête.
On veut modéliser avec une MIB pour agent SNMP le protocole ci dessus. L’agent SNMP sera dans le
serveur et doit contenir les informations nécessaires à la gestion des utilisateurs et des connexions.
Quelques remarques :
Questions :
- Quel est le chemin permettant d’accéder à la MIB suivante dans l’arbre SNMP ?
- Compléter la spécification de MIB en s’aidant des parties déjà écrites et en tenant compte des
indications précédentes.
30
Série d'exercices sécurité
Utiliser l'utilitaire vigCode pour coder ce texte suivant les mots clefs def defi defin, et
repérer à chaque fois les répetitions de mots de 3 lettres dans le texte chiffré. Que remarquez
vous ?
Exercice : Cryptogramme n° 2
Casser le cryptogramme suivant qui utilise une transposition par colonnes. Le texte en
clair est issu d'un ouvrage classique sur l'informatique; on peut donc supposer que le mot
"ordinateur" y figure. Le texte ne contient que des lettres (sans espace). Il est découpé en
blocs de 5 caractères pour plus de lisibilité.
Exercice : Cryptogramme n° 3
2 Pour le même texte en clair on obtient le texte chiffré suivant "brqksmzcspxiqxtcxzr" .Quel
est la clef ?
3 Supposons que vous disposiez d’un texte en clair et une partie du même texte chiffré, mais
que ce texte soit plus court que la clef (par exemple vous ne connaissez q ue brq dans
l’exemple précédent). Quelle information cela vous apporte t’il ? Imaginez des stratégies de
cryptanalyse dans le cas ou la clef est un mot français et dans le cas ou c’est une suite
aléatoire de lettres. Comment distinguer à priori ces deux ca s ?
2 - Calculer n: = p * q z: = (p - 1) * (q - 1)
Soit A un message binaire. Découper A en blocs de k bits tel que k soit le plus grand entier tel
que 2k < n.
31
Soit P un bloc de k bits, le codage de P est donné par : C = E(P) = P e (mod n)
1)- On donne les valeurs numériques suivantes : p = 3, q = 11 (trop petites en pratique, mais
traitable en exercice).
Calculer les valeurs des nombres d et e vérifiant les conditions de l'algorithme du MlT. Pour
avoir un couple unique on prend la plus petite valeur possible de d et pour cette valeur la plus
petite valeur possible de e.
32
TD
Chiffrement Symétrique
1) Le texte suivant est crypté en utilisant la méthode de cryptage par Substitution. Mettez
vous à la place d’un « hacker » et trouvez la clé et déchiffrez le texte crypté :
« YR EHQMRMWXNEXIYN HI NIWIEY »
2) Le message chiffré suivant est une Transposition sur 6 colonnes. Si vous vous mettez à la
place d’un Hacker sauriez vous le casser sachant qu’il contient les mots « administrateur » et
« securite » ? Le texte d’origine ne contient que des lettres (pas d’espaces). Trouvez la clé,
sachant que celle-ci est composée de la partie impaire ensuite de la partie paire, et déchiffrez
le texte. Le texte crypté est comme suit :
« LRTPLUNTSTNNPASUCEIAUMRAAIIEENIEEEDSODTRUSSBRIAB »
33
TD
Encryptions de mots de passes
Pour générer une chaines cryptée sous unix on utilise la primitive crypt() :
La version crypt de la glibc a quelques améliorations, si le hash commance par "$1$" alors
l'algorithme utilisé est MD5, le mot de passe généré est le suivant :
$1$hash$motdepassecrypté
Ou le hash est codé sur 8 caractères, et mot de passe sur 22, ce qui donne un total de 34
caractères. Cet algorithme est utilisé par exemple pour le mot de passe de connexion dans le
fichier shadow.
Exercice 1 :
L'utilisateur toto a tapé la commande suivante qui permet de générer un mot de passe
compatible avec apache :
New password:
toto:6wrp04pGlnqa6
[toto@goul ~]$
En sachant que le mot de passe ne contient que 4 caractères, faites un programme en langage
C permettant de le retrouver.
Exercice 2 :
Voici la ligne correspondant a l'utilisateur toto sur sa machine dans le fichier shadow :
toto:$1$XFIpMui2$KrcVUKKpDdiPM/lPKiUxa.:13528:0:99999:7:::
Faites un programme en C pour retrouver son mot de passe en sachant qu'il ne fait que 4
caractères.
Exercice 3 :
34
package yum est john (http://www.openwall.com/john/)
Remarque :
Des programmes similaires existent sous windows.
Pour changer un mot de passe perdu sous windows :
http://home.eunet.no/~pnordahl/ntpasswd/
35
Administration sous Windows
Une station sous Windows NT peut comporter une ou plusieurs interfaces réseau (intégrées à la carte
mère ou pas). TokenRing, Ethernet, Wifi...
Les interfaces sont normalement installées physiquement au démarrage par reconnaissance automatique
et implantation du driver adéquat (plug&Play). Un ou plusieurs voyants permettent de vérifier si
l'interface est bien connectée au système d'interconnexion exterieur (le plus souvent un commutateur ou
switch). Si ce n'est pas le cas, rien ne fonctionnera.
Par défaut, une interface réseau comporte son propre identificateur unique, une adresse de couche 2 :
adresse MAC (Medium Access Control) sous la forme d'un nombre de 6 octets attribué par le
constructeur. L'autosynchronisation est choisie par défaut mais des vitesses de transmission différentes
peuvent être appliquées au niveau du driver (cas particulier).
Configuration TCP/IP
Pour utiliser les protocoles de la pile TCP/IP, l'administrateur réseau doit attribuer à l'interface une
adresse IP unique (non redondante) sur le réseau logique auquel elle appartient. c'est l'adressage
STATIQUE. Un nombre de 4 octets choisi dans un plan d'adressage prédéfini. Il fournira aussi un
masque de sous réseau qui permettra à l'interface de connaître le sous réseau auquel elle appartient.
L'adresse de diffusion (broadcast) sera la dernière @IP de la plage du sous réseau.
Pour que cette machine puisse émettre des datagrammes vers d'autres réseaux (logique et/ou
physique), l'administrateur devra lui fournir une adresse de passerelle par défaut ou default gateway
(une porte de sortie, un routeur connecté au même segment de réseau physique et adressé dans le
même réseau logique que la machine qui prendra en charge les datagrammes afin de les envoyer à leur
destination).
Pour l'accès à Internet par résolution de nom, l'adresse ip d'un serveur DNS devra aussi être fournie.
(Plusieurs adresses peuvent être fournies)
Dans des cas particuliers, on pourra fournir à l'interface plusieurs adresses IP (sur le même réseau
logique ou pas).
36
Adressage dynamique par DHCP
Pour éviter de paramètrer l'interface manuellement, l'adressage dynamique peut aussi être choisi à
condition qu'il existe sur le segment de réseau physique au moins un serveur DHCP (Dynamic Host
Configuration Protocol) pour répondre à la demande de la machine.
Dans le cas contraire, c'est par l'intermédiaire d'APIPA (Automatic Private IP Addressing) qu'une adresse
IP entre 169.254.0.1 et 169.254.255.254 avec un masque de sous-réseau de 255.255.0.0 sera
automatiquement assignée si aucune configuration alternative n'a été spécifiée. APIPA est conçu pour
fournir un adressage IP automatique sur des réseaux à segment unique.
Menu demarrer > paramètres > panneau de configuration > connexions réseau > "interface à modifier"
On peut choisir de montrer l'état des interfaces dans la barre de lancement rapide. Les interfaces réseau
peuvent être nommées pour en faciliter le repérage.
Une fois les modifications validées, le système ne demande pas de redémarrage comme sous W95, W98.
commande /h
ipconfig /all
ping 127.0.0.1
Test de la passerelle
ping "@ip_passerelle"
ping "@ip_externe"
route print
37
Test de routage
tracert "@ip_externe"
netstat /a
nslookup
L'interface ethernet
Les interfaces sont notées eth suivi d'un entier qui débute à 0 et s'incrémente de 1 en 1. Ainsi la
première interface est nommé eth0, la seconde eth1 etc. La boucle locale, qui a donc pour adresse
127.0.0.1 est notée lo.
Les systèmes GNU/Linux vous permettent également la création d'interfaces virtuelles, afin de n adresse
à partir d'une seule et même interface physique.
Informations
Pour afficher toutes les informations pour toutes les interfaces actives : utilisez la commande
ifconfig.
$ ifconfig
eth0 Lien encap:Ethernet HWaddr 00:40:F4:A7:97:1C
inet adr:192.168.0.1 Bcast:192.168.0.255 Masque:255.255.255.0
adr inet6: fe80::240:f4ff:fea7:971c/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Packets reçus:20408 erreurs:0 :0 overruns:0 frame:0
TX packets:17939 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
Octets reçus:20206098 (19.2 MiB) Octets transmis:2226463 (2.1
MiB)
Interruption:217 Adresse de base:0x2000
38
Pour afficher toutes les informations pour toutes les interfaces memes celles inactives : utilisez la
commande ifconfig -a.
Si vous désirez n'avoir les informations que sur une interface, précisez la :
$ ifconfig eth0
Modifications
Les commandes ifup et ifdown ne peuvent être utilisées qu'à partir du moment où l'interface désignée est
paramétrée dans le fichier de configuration de votre distribution :
Listening on LPF/eth0/00:40:F4:A7:97:1C
Sending on LPF/eth0/00:40:F4:A7:97:1C
Sending on Socket/fallback
DHCPREQUEST of 192.168.0.1 on eth0 to 255.255.255.255 port 67
DHCPACK of 192.168.0.1 from 192.168.0.2
39
SIOCADDRT: File exists
bound to 192.168.0.1-- renewal in 20922 seconds.
[modifier] Routage
[modifier] Afficher les route définies
root@host:~# route
# ou encore
root@host:~# ip route
# modif
root@host:~# vim /etc/resolv.conf
40
[modifier] Se connecter à une interface sans fil en WPA
On utilise la commande wpa_supplicant couplée à son fichier de configuration (généralement
/etc/wpa_supplicant.conf)
# wpa_supplicant -cfichier_de_configuration -Ddriver -iinterface
Par exemple : # wpa_supplicant -c/etc/wpa_supplicant.conf -Dwext -iwlan0
41
Sécurité des Réseaux
Wafa Kammoun
42