Chapitre 7 : Réseaux et sécurité

Rappels

Si besoin, revoir les chapitres "Internet" de SNT et "Réseaux" de 1re.

Réseaux et Internet

Adresses IP

Dans les premières années d'Internet, l'assignation des adresses IPv4 aux réseaux finaux consistait à octroyer le premier octet de l'adresse au réseau, c'est-à-dire que seulement 256 réseaux avec 16 millions d'adresses chacun étaient possibles.
En 1981, la RFC 790 prévoit qu'une adresse IP est divisée en deux parties : une partie servant à identifier le réseau (net id, aussi appelé préfixe sous-réseau) et une partie servant à identifier l'hôte, c'est-à-dire la machine sur ce réseau (host id). Cinq classes d'adresses IP (aujourd'hui obsolète) sont créées :

L'utilisation des classes d'adresses est rendue obsolète depuis 1993. On utilise désormais des masques de sous-réseau de longueur variable qu'il faut systématiquement fournir avec les IP. On parle d'adressage CIDR. Ce masque de sous réseau peut être donner sous la forme d'une adresse IP (4 nombres séparés par des points), soit en ajoutant à la suite de l'adresse IP, un slash suivi du nombre de bits utilisé pour le réseau.

Un masque de sous-réseau permet d'obtenir rapidement la partie de l'adresse IP qui concerne le réseau. En effet en appliquant bit à bit l'opérateur logique ET entre l'adresse IP et le masque, la partie réseau ressort grâce aux 1 et la partie machine s'efface grâce aux 0 présents dans le masque.

Calculateur d'adresseAdresse IPv4 (en décimal)Adresse IPv4 (en binaire)
Adresse de destination : . . . /24 11000000.10101000.00000001.00101010
Masque de sous-réseau : . . . 11111111.11111111.11111111.00000000
Type de masque : standard (que des 1 puis des 0)
Adresse du sous-réseau : . . . /24 11000000.10101000.00000001.00000000
Remarques : Masque standard et notation CIDR
Trouver d'autres masques standards (en notation décimale et en notation CIDR) autres que /8, /16 ou /24 grace au calculateur ci-dessus. Par exemple : 255.255.254.0 ou /23
Quel est le masque écrit en décimal correspondant à la notation CIDR "/12" ? 255.240.0.0
Adresse du sous-réseauPlage IP disponible pour les machines de ce sous-réseauNombre d'adresses du réseau
10.0.0.0/810.0.0.1 – 10.255.255.254232-8 = 16 777 216
172.16.0.0/12172.16.0.1 – 172.31.255.254232-12 = 1 048 576
192.168.0.0/16192.168.0.1 – 192.168.255.254232-16 = 65 536
Dimensionnement d'un sous-réseau
Pour un sous-réseau d'adresse 192.168.254.0/23 :
Quel est la longueur (nombre de bits) du préfixe sous-réseau (ou identifiant réseau) ? 23 bits
Quel est la longueur de l'identifiant machine ? L'identifiant machine est sur 9 bits. En effet, une adresse IPv4 étant codée sur 32 bits ( 4 octets), si 23 bits sont utilisés pour le sous-réseau, il en reste 9 pour la machine.
Combien de machines peut accueillir ce sous-réseau ? Ce sous-réseau peut accueillir `2^9 - 2 = 510` machines. -2 vient du fait que la première adresse est celle du sous-réseau et que la dernière est l'adresse de broadcast.
Une entreprise dispose de 72 machines.
Proposer un masque de sous réseau pour le réseau informatique de cette entreprise ? 255.255.255.128 ou /25 en notation CIDR. En effet avec 7 bits réservés pour les machines, ce sous-réseau peut accueillir `2^7 - 2 = 126` machines.

Le routage

Principe

Le rôle du routage est d'acheminer des paquets à travers le réseau, d'une machine à une autre.

Il existe deux familles d'algorithmes de routage (aspect logique) :

Il faut aussi organiser l'infrastructure de manière optimisée (aspect physique) :

Le routage hiérarchique consiste à organiser les routeurs par niveau. Par exemple, le lycée dispose d'un réseau local (LAN) connecté par un routeur (passerelle) à un réseau plus important appelé RENATER, reliant tous les établissement scolaires et de recherche français, et lui-même connecté à Internet.
Ce type de réseau est appelé backbone, car c'est une épine dorsale pour le réseau.

Analogie : Le réseau routier est lui aussi organisé de manière hiérarchique avec des réseaux communaux (locaux), des routes nationales et des autoroutes. On comprend que pour aller de Toulouse à Paris, il est plus rapide de sortir du réseau communal Toulousain pour prendre l'autoroute et ressortir dans le réseau communal de Paris, plutôt que de passer de réseau communal en réseau communal, par les petites routes.

Carte du réseau RENATER - 2014
Carte du réseau RENATER - 2014

Les avantages du routage hiérarchique sont :

Routeur

Un routeur sert de passerelle entre deux réseaux. Chacune de ses connexions avec un réseau est appelée une interface reperée par l'adresse IP qui lui a été attribuée dans ce réseau.

Par exemple dans le schéma ci-contre, le Routeur2 possède 3 interfaces :
  • 10.100.100.1/30 dans le réseau 10.100.100.0/30
  • 10.100.100.5/30 dans le réseau 10.100.100.4/30
  • 172.16.0.254/16 dans le réseau 172.16.0.0/16
Routeur
Quelles sont les interfaces du Routeur1 ?
  • 10.100.100.2/30 dans le réseau 10.100.100.0/30
  • 10.100.100.10/30 dans le réseau 10.100.100.8/30
  • 172.17.0.254/16 dans le réseau 172.17.0.0/16
  • 172.18.0.1/16 dans le réseau 172.18.0.0/16

Quel est le masque de sous-réseau écrit en décimal correspondant à la notation CIDR "/30" ? 255.255.255.252 soit en binaire 11111111.11111111.11111111.11111100
Pourquoi les masques des réseaux entre les routeurs sont en "/30" ? Ce réseau ne connecte que deux routeurs entre eux, il est donc suffisant de réserver deux bits pour l'adresse machine.
Quelles sont les adresses machines possibles dans le réseau 10.100.100.4/30 ? 10.100.100.5 et 10.100.100.6
L'adresse 10.100.100.4 (première adresse) est l'adresse du sous-réseau tandis que 10.100.100.7 (dernière adresse) est l'adresse de broadcast.

Justifier les adresses des Routeur1 et Routeur3 dans le sous-réseau 10.100.100.8/30 ? Les seules adresses possibles sont 10.100.100.9 et 10.100.100.10.
En effet l'adresse 10.100.100.8 (première adresse) est l'adresse du sous-réseau tandis que 10.100.100.11 (dernière adresse) est l'adresse de broadcast.

Algorithme de routage

Le routage par inondation (flooding) : Dès qu'un routeur reçoit un paquet, il le réemmet vers tous ses voisins. Si le réseau est connexe, on est sûr que la machine destinataire recevra le paquet, mais vu le traffic très important généré par cette méthode, elle est à réserver pour des réseaux très petits.

Le routage du plus court chemin : Un réseau peut être représenté par un graphe, les liaisons étant les arêtes et les routeurs ou passerelles étant les sommets. Il est donc possible, par l'algorithme de Dijkstra, de déterminer le plus court chemin entre deux sommets. Deux protocoles parmi les plus utilisés se basent sur cette méthode : RIP et OSPF.

RIP (Routing Information Protocol)

C'est le protocole historique et encore utilisé. Sa métrique est simple et nécessite moins de mémoire : Le coût des routes est compté par le nombres de sauts (hops) d'un routeur à un autre. On dit que RIP est un protocole à vecteur de distance. Attention, le débit n'est donc pas pris en compte : Il faudrait réserver l'utilisation de ce protocole à des réseaux où le débit est homogène.

Pour chaque réseau IP connu, chaque routeur conserve l'adresse du routeur voisin dont la métrique est la plus petite pour atteindre ce réseau. Ces meilleures routes sont diffusées toutes les 30 secondes entres les routeurs.

Le protocole RIP empêche les boucles de routage en limitant à 15 le nombre de sauts autorisés pour un chemin. Ainsi un réseau situé à 16 sauts (hops) est considéré comme inaccessible.

OSPF (Open Shortest Path First)

OSPF fait partie des protocoles à état de liens, c'est-à-dire qu'il prend en compte la qualité des liens pour déterminer la meilleure route.
Chaque routeur communique avec ses voisins par des messages LSA (Link State Advertisement). Grâce aux LSA échangés, chaque routeur construit sa table de routage avec la métrique, c'est-à-dire les coûts des liaisons (temps de transmission, débit). Plus le coût est faible, plus la liaison sera favorisée.

Cas particulier des réseaux sans fil (wifi avec répéteurs, 4G, 5G)

Les routeurs doivent tenir compte du déplacement de l'utilisateur, qui peut alors être déconnecté de son point d'accès initial pour se reconnecter à un point d'accès derrière un autre routeur...
Le réseau doit alors tenir compte d'une organisation en cellules géographiques des points d'accès.

Remarque :

Routage
On considère le réseau suivant. Les coûts (états des liens) sont inscrits sur les liaisons.
Déterminer le chemin le plus court entre A et chacun des routeurs du réseau, selon RIP.
DestinationCheminCoût
BAB1 hop
CABC2 hops
DABCD3 hops
EABE2 hops
FABF2 hops
GAG1 hop

Déterminer le chemin le plus court entre A et chacun des routeurs du réseau, selon OSPF.
DestinationCheminCoût
BAB1
CABC3
DABED6
EABE3
FABEF5
GABG2

Identifier quelques cas possibles de répartition de charge (load-balancing). En RIP : BAG et BFG ou ABCD et ABED ...
Aucun cas possible en OSPF.

La table de routage

La table de routage mémorisé par un routeur permet d'orienter rapidement les paquets qu'il reçoit.
Pour chaque adresse IP de destination, elle comporte :

Destination
(Adresse IP)
Passerelle
(Adresse IP)
Interface
(Adresse IP)
Métrique
___.___.___.___ / _____.___.___.___ / _____.___.___.___ / __ __
___.___.___.___ / _____.___.___.___ / _____.___.___.___ / __ __
...

Remarque :

Routage
On considère le réseau suivant :

Remarque : Généralement la destination et l'interface sont des adresses IP mais pour simplifier la notation les destinations seront notées par leur lettre et les interfaces par leur chiffre.

Établir la table de routage du routeur A (en RIP) pour atteindre tous les autres routeurs du réseau.
DestinationPasserelleInterfaceSauts (hops)
B B 2 1
C B 2 2
D B 2 3
E B 2 2
F G 1 2
G G 1 1

Établir la table de routage du routeur A (en OSPF) pour atteindre tous les autres routeurs du réseau.
DestinationPasserelleInterfaceCoût
B B 2 1
C B 2 3
D B 2 6
E B 2 3
F B 2 5
G B 2 2

Établir la table de routage du routeur E (en RIP) pour atteindre tous les autres routeurs du réseau.
DestinationPasserelleInterfaceSauts (hops)
A B 3 2
B B 3 1
C C 2 1
D D 1 1
F F 4 1
G F 4 2

Établir la table de routage du routeur E (en OSPF) pour atteindre tous les autres routeurs du réseau.
DestinationPasserelleInterfaceCoût
A B 3 3
B B 3 2
C C 2 1
D D 1 3
F F 4 2
G B 3 3
Simulation d'un réseau avec Filius
Si besoin, installer Filius à l'aide de l'exécutable Filius-Setup_with-JRE-1.13.1.exe (L'installateur est en allemand mais le logiciel est bien en français.)
Ouvrir le fichier simulation-internet.fls sur Filius.
Passer en mode Simulation (bouton play vert) et observer les échanges de données entre routeurs au démarrage (clic droit sur un routeur).
Pourquoi les routeurs envoient-ils ces paquets broadcast au démarrage ? Les routeurs emploient cette technique pour découvrir leurs voisins et remplir leur table de routage. Pour voir leur table de routage, passer en mode conception (marteau) puis clic droit sur un routeur pour le configurer et enfin décocher "routage automatique".
Explorer les possibilités de ce logiciel.
Routage avec python ***
Adapter la classe graphe utilisée dans le chapitre 3 à la construction et à l'étude d'un réseau :
  • chaque sommet est un routeur, chaque arête est une liaison,
  • générer un réseau de taille minimum 6 sommets, connexe («à la main» ou de manière automatique), et avec liaisons pondérés pour simuler OSPF,
  • implémenter l'algorithme de Dijkstra en deux versions : RIP ou OSPF,
  • implémenter une méthode pour afficher la table de routage (d'un sommet), version RIP ou OSPF.

Sécurité des Systèmes d'Information (SSI)

Pour payer en ligne, éviter les usurpations d'identité, protéger sa vie privée ou se protéger d'un régime autoritaire, il est crucial de sécuriser ses échanges de données. Pour cela ils doivent être chiffrés à l'aide d'une clé de chiffrement.
En connaissant la clé, il est évidemment possible de déchiffrer les données.Lorsqu'on est capable de lire les données sans la clé de chiffrement, on parle de décryptage. Le terme "crypter" n'a pas de sens car on ne chiffre pas sans clé.

On parle de chiffrement symétrique lorsque c'est la même clé qui est utilisée pour chiffrer et déchiffrer le message.

Méthodes de chiffrement historiques

Le code César

Le principe est simple, il consiste à décaler les lettres dans l'alphabet. Historiquement, César utilisait un décalage de 3. Ce chiffrement symétrique peut être cassé par :

Décrypter
TFX UGRV JGWTG ICTG UCKPV CIPG
Trouver le lieu du rendez-vous.
La lettre la plus présente est G. La clé est 2. RDV SEPT HEURE GARE SAINT AGNE

Chiffrement par substitution

Cette technique consiste à substituer une lettre par une autre dans un alphabet réordonné qui sert de clé.

ABCDEFGHIJKLMNOPQRSTUVWXYZ
WXCVBNMLKJUIOPHGFYTRDSQAEZ

Dans cet exemple, la lettre A est remplacée par la lettre W et ainsi de suite ...

S'agit-il d'un chiffrement symétrique ou asymétrique ? C'est un chiffrement symétrique car la clé de déchiffrement est la même que la clé de chiffrement.

Chiffrement de Vigenère

Ce chiffrement est une amélioration du code César. Il en existe plusieurs variantes mais elles consistent toute à faire varier le décalage pour chaque lettre de l'alphabet. Les décalages sont inscrits dans la clé qui peut être un mot, une phrase ou un tout un texte. Dans l'histoire, il y a eu une période où des passages entiers d'œuvres littéraires étaient utilisés pour chiffrer les plus grands secrets. Il suffisait aux deux correspondants d'avoir un exemplaire du même livre pour se comprendre.

Exemple : avec la clé BAC
Alphabet
Clé
Décalage
Lettre de substitution

A B C D E F G H I J K L ...
B A C B A C B A C ...
1 0 2 1 0 2 ...
B B E E E H ...

Explication : On répète la clé pour qu'elle atteigne la même longueur que le texte à chiffrer. On associe à la lettre "A", un décllage de 0, à la lettre "B", un décalage de 1 et ainsi de suite pour tout l'alphabet. Pour la première lettre du message "A", le décalage vaut 1, elle est ainsi chiffrée par la lettre "B".

S'agit-il d'un chiffrement symétrique ou asymétrique ? C'est un chiffrement symétrique car la clé de déchiffrement est la même que la clé de chiffrement.

Chiffrement de Vernam

Le chiffrement de Vernam, aussi appelé masque jetable consiste à un chiffrement par décalage comme le code César avec une clé présentant les caractéristiques très particulières suivantes :

L'intérêt considérable de cette méthode est que si ces trois caractéristiques sont respectées strictement, ce chiffrement est théoriquement impossible à casser. Cependant, le fait que le masque soit à usage unique impose de le transmettre au préalable, ce qui soulève des difficultés de mise en œuvre pour la sécurisation des échanges sur Internet.

Chiffrement asymétrique

Principe de clé privée/clé publique

Lorsqu'une même clé est utilisée pour le chiffrage et le déchiffrage, on dit que l'algorithme de cryptage est symétrique.

D'autres algorithmes de cryptage utilisent deux clés : une clé privée pour le déchiffrage, et une clé publique pour le chiffrage. On dit que ces algorithmes sont asymétriques.


1re étape : Alice souhaite recevoir des données confidentielles de Bob. Elle génère deux clés : sa clé publique (verte) qu'elle envoie à Bob et sa clé privée (rouge) qu'elle conserve secrète.

2e et 3e étapes : Bob chiffre le message avec la clé publique d'Alice et envoie le texte chiffré. Alice déchiffre le message grâce à sa clé privée.

Remarques :

Chiffrement asymétrique
Qui génère la clé publique et la clé privée ? Le destinataire, ici c'est Alice.
Quelle clé est utilisée pour chiffrer le message ? la clé publique
Quelle clé est utilisée pour déchiffrer le message ? la clé privée
Est-il possible de trouver le clé publique à partir de la clé privée ? oui
Est-il possible de trouver le clé privée à partir de la clé publique ? non
La communication de Bob vers Alice est-elle sécurisée ? Oui, car seule Alice avec sa clé privée, peut déchiffrer le message de Bob.
La communication d'Alice vers Bob est-elle sécurisée ? Non, car la clé publique a été envoyée en clair et a pu être interceptée. Ainsi un message chiffré par Alice avec sa clé privé, peut être déchiffré par tout ceux ayant obtenu la clé publique.

Développement

Ces algorithmes nécessitent une puissance de calcul plus importante que les algorithmes symétriques, mais en pratique cela pose peu de problèmes au matériel actuel.

Exemples : RSA (nombres premiers), Diffie-Hellman (courbes elliptiques) : tous reposent sur la difficulté (impossibilité pratique dans une échelle de temps humaine) de factoriser de grands nombres premiers (RSA) ou de grands polynômes (DH). L'avènement de l'informatique quantique accélérant de manière exponentielle la puissance de calcul rendra obsolète ces techniques de chiffrement. La recherche en informatique travaille déjà sur des méthodes plus poussées de chiffrement résistantes aux algorithmes quantiques.

Une application essentielle des algorithmes asymétriques est la possibilité d'authentifier un acteur, en vérifiant qu'il dispose de la clé privée sans qu'il n'ait à la divulguer. Pour ce faire, on lui envoie un message test, que l'on a chiffré avec la clé publique, s'il parvient à renvoyer ce message déchiffré, il prouve qu'il dispose bien de la clé privée et qu'il peut être authentifié.

Le protocole HTTPS

HTTP est le protocole utilisé lorsqu'on navigue sur le web (requête vers un serveur web et réponse de ce serveur). Toutes les communications sont en clair, ce qui signifie que quelque sur la ligne comprend tout des requêtes échangées.
HTTPS sécurise le HTTP en utilisant l'algorithme de chiffrement TLS qui est le successeur du SSL. On parle souvent de protocole SSL/TLS

Voici le scénario d'une communication en HTTPS :

  1. Le navigateur du client envoie au serveur une demande de connexion sécurisée par TLS.
  2. Le serveur envoie au client son certificat contenant sa clé publique, ses informations (nom de la société, adresse postale, pays, e-mail de contact...) ainsi qu'une signature numérique.
  3. Le navigateur du client tente de vérifier la signature numérique du certificat grâce aux clés publiques des autorités de certifications (AC).
    • Si l'une d'entre elles fonctionne, le navigateur en déduit l'autorité de certification qui a signé le certificat de ce serveur. Il interroge alors cette autorité de certification pour savoir si le certificat du serveur est toujours valable.
    • Si aucune d'entre elles ne fonctionne, le navigateur web tente tout-de-même de vérifier la signature numérique du certificat du serveur à l'aide de la clé publique du seruveur.
      • En cas de réussite, cela signifie que le serveur a lui-même signé son certificat. Un message d'avertissement s'affiche alors sur le navigateur disant que l'identité du serveur n'a pas été vérifiée par une autorité de certification et qu'il peut donc s'agir potentiellement d'un site frauduleux.
      • En cas d'échec, le certificat est invalide, la connexion ne peut pas aboutir.
  4. Le navigateur du client génère une clé de chiffrement symétrique, appelée clé de session, qu'il chiffre à l'aide de la clé publique contenue dans le certificat du serveur puis la transmet au serveur.
  5. Le serveur déchiffre la clé de session envoyée par le client grâce à sa clé privée.
  6. Le client et le serveur commencent à s'échanger des données en chiffrant celles-ci avec la clé de session qu'ils ont en commun. On considère à partir de ce moment que la connexion TLS est établie entre le client et le serveur.
  7. Une fois la connexion terminée, soit par une déconnexion volontaire de l'utilisateur, soit suite à une durée d'inactivité trop élevée, le serveur révoque la clé de session.
Le HTTPS utilise-t-il une technique de chiffrement symétrique ou asymétrique ? Il s'agit d'une technique de chiffrement hybride. La clé de session qui chiffre les données échangées (requêtes HTTP) est symétrique mais elle a été partagée entre le client et le serveur par une technique de chiffrement asymétrique.

➝ Voir la vidéo de Graphikart : Comprendre le SSH/HTTPS

Les acteurs de la sécurité

La CNIL a pour mission de protéger les données personnelles, accompagner l'innovation et préserver les libertés individuelles.
Site de la CNIL

L'ANSSI propose les règles à appliquer pour la protection des systèmes d'information de l'État et de vérifie l'application des mesures adoptées. Dans le domaine de la défense des systèmes d'information, elle assure un service de veille, de détection, d'alerte et de réaction aux attaques informatiques, notamment sur les réseaux de l'État.
Dans son rôle de prévention l'ANSSI met à disposition un MOOC sur la cybersécurité.
Site de l'ANSSI

Cybermalveillance.gouv.fr assiste et prévient les risques numériques auprès du public. Elle guide les victimes de cyberviolence.
Site de Cybermalveillance.gouv.fr


En anglais :