Réseaux - Administration

Transcription

Réseaux - Administration
M1 Informatique
Réseaux
Cours 9 – (Notions de) Sécurité Réseaux
Notes de Cours
tel que celui auquel
donnent accès les réseaux informatiques. Il s’agit cependant d’une problématique complexe et difficile. Ce chapitre présente succinctement les notions associées aux grandes thématiques de la sécurité des réseaux : conception de systèmes sécurisés, protocoles cryptographiques, administration et outils réseaux pour la sécurité.
L
1
A SECURITE EST PRIMORDIALE DANS UN ENVIRONNEMENT OUVERT
Introduction
1.a
1.b
"Vous êtes Ici"
OSI
TCP/IP
7
Application
Application
6
Presentation
5
Session
4
Transport
Transport
3
Network
Internet
2
Data link
Host-to-network
1
Physical
Not present
in the model
Sécurité ?
— Fiabilité
— Fiabilité logicielle
E. Godard
http://www.lif.univ-mrs.fr/~egodard/ens/reseaux/
Réseaux : Cours 9
R ÉSEAUX
M1 Informatique
— Tolérance aux pannes
— Protection face aux attaques
— Défaillances provoquées
— Transgression du contrôle d’accès
— Vol d’informations importantes
— Usurpation d’identité numérique
— ...
— Attaques distantes (modèle client/serveur)
Vulnérabilité du logiciel => exécution de code arbitraire à distance.
1.c
Conception de Réseaux et Sécurité
La sécurité peut-être implantée à différents niveaux, sur différentes couches.
Mais ajouter de la sécurité à un système pré-existant est en général très difficile.
Exemple : TCP/IP
— aucune authentification des paramètres
— intégrité non cryprographique
— => IPSec : sécurité au niveau de la couche réseau
— le problème du DNS subsiste
2
Protocoles Sécurisés
2.a
Architectures Sécurisées
architecture fermées peu d’acteurs (banques) ou structure autonome (une entreprise)
— chiffrement symétrique + distribution des clés “à la main”
— => Kerberos, IPSec
architecture hiérarchisée de nombreux acteurs avec des autorités de confiance peu nombreuses
— => PKI à base d’authentification X509 : IPSec, SSL
architecture décentralisée de nombreux acteurs certifiants leurs “connaissances” de proche
en proche
— => PGP/GnuPG, réseau P2P/F2F crypté, ...
2.b
Communication Sécurisée et Sécurité
Attention une communication sécurisée n’est pas équivalente à une “sécurité complète”.
=> problématique de la sécurité aux extrémités du lien de communication :
— “sniffeur” de clavier
— vol du disque contenant la base de données clients du site de e-commerce protégé par
SSL.
— ...
2
Réseaux : Cours 9
2.c
R ÉSEAUX
M1 Informatique
Conclusion Provisoire
— La sécurité n’est pas un problème technique.
— La sécurité d’un ensemble est égale à la sécurité de l’élément le plus faible.
3
Dispositifs techniques
3.a
Sécurité et Interopérabilité
Un réseau est un système ouvert.
Le protocole IP a été conçu pour permettre l’interconnexion => il est très permissif.
=>
— problèmes de sécurité :
— écoute très facile
— vol de session : “ip-spoofing”
— attaque d’interception
3
Réseaux : Cours 9
R ÉSEAUX
M1 Informatique
— aucun mécanisme de sécurité :
— tentative d’installer des variantes sécurisées Ex : IPSec
— difficulté de mise en place
— Difficile de rajouter une surcouche de sécurité
3.b
Moyens de Protection
— Bonne administration
— Maintenance (mises à jour)
— Contrôle d’accès
— Surveillance
— Outils techniques
— Applications Réseaux
— Parefeu
— Détecteur d’intrusion
— Veille active
— Protocoles Réseaux et Cryptographie
— SSL/TLS
— IPSec
— IPv6
— WEP/WPA
Difficile de concilier utilisabilité et sécurité
3.c
Usurpation IP
— Il est possible de donner une adresse d’origine fausse (et d’être routé malgré tout)
— La validation des paquets se fait par numéro de séquence
=> pas d’authentification
— Injection de trafic
3.d
Insécurité du DNS
Le DNS est un composant fondamental de l’infrastructure d’Internet.
Mais
— pas d’authenfication des réponses aux requêtes
— possibilité de fabriquer de fausses réponses
— comment authentifier qu’une adresse n’existe pas ?
— sécurisation en cours de déploiement : DNSSEC
4
3.e
M1 Informatique
R ÉSEAUX
Réseaux : Cours 9
Hameçonnage : Pêche aux Mots de Passe
Le point le plus faible du réseau est parfois l’utilisateur.
Phishing (Hameçonnage) Utilisation de diverses techniques pour amener l’utilisateur, en
toute confiance, à fournir des renseignements confidentiels :
— Ingénierie sociale,
— Défaillance de protocole ou de modèle de sécurité
— Faux site marchand/banques
— Faux ami/collègue facebook
— Usurpation de DNS
— Attaque par homographes
— Urls maquillés : http://[email protected]/pwd
— ...
3.f
Pare-feu
LAN
WAN
— Filtre sélectif sur les paquets/ connexions (par protocoles, par origine, par port de destination)
— Principe : on interdit tout et ensuite on autorise ce qui est réellement utile.
— Problème des protocoles “sales” : qui ne respectent pas la division en couche
3.g
Exemples d’utilisations
Configurations possibles :
5
Réseaux : Cours 9
M1 Informatique
R ÉSEAUX
— le parefeu ne permet que le trafic vers le port 80.
— le parefeu autorise à se connecter sur les serveurs (et leurs services sur n’importe quels
ports)
— pas de trafic ICMP
3.h
...
Une configuration classique :
— le parefeu/NAT ne redirige que les connexions entrantes statiquement déclarées
— réseau privé + NAT
=> à l’émission du paquet SYN sortant : correspondance adresseprivee:port ←→
portNAT
— seules les connexions initiées depuis l’intérieur sont acceptées
Dans ce dernier cas, le pare-feu doit mémoriser les états des connexions.
=> pare-feu à états
3.i
“L’Etat de l’Art”
DN
ww
SM
T
S
P
w
Réseau Interne
Routeur vers l'extérieur
Les services (web, mail, etc...) dont les serveurs doivent évidemment être accessibles
depuis Internet sont placés dans une zone spéciale, appelée DMZ. Le pare-feu interne n’autorise que le trafic initié depuis l’intérieur.
3.j
Pare-Feu Applicatifs
— “Est-ce bien du HTTP qui circule depuis ce port 80 ?”
6
Réseaux : Cours 9
R ÉSEAUX
M1 Informatique
— Passerelle applicative
— Problème de l’encryption...
3.k
Pare-feu Personnel
Pare-feu exécuté sur les stations de travail : permet de savoir quel programme utilise
quelle ressource réseau.
3.l
Détecteur d’Intrusions
Equipements passifs ←→ veille active et humaine :
— surveillance du trafic
— apprentissage des comportements standards
— outils d’exploration automatique contre détection automatique
— détection de modification d’un système par signature cryptographique des fichiers
3.m
Pot de Miel
Il s’agit d’un service simulant le fonctionnement d’un vrai système. Aucun service légitime n’y étant installé, toute connexion est suspecte.
— passif
— actif (machine virtuelle régulièrement redémarrée à zéro)
— permet d’observer les comportements des "pirates".
— adresse IP d’origine (souvent une machine préalablement piratée)
— mode opératoire
3.n
VPN
VPN : virtual private network ou réseau privé virtuel est une technologie d’utilisation d’un
tunnel chiffré dans Internet permettant de relier des stations distantes comme si elles étaient
localisée sur le même LAN.
Le trafic (couches réseau/transport/application) est encapsulé/décapsulé au niveau des
serveurs VPN. Seuls les adresses des deux serveurs apparaissent lors du transfert sur Internet.
4
4.a
Protocoles Cryptographiques
Protocoles Cryptographiques : vue en couches
physique communication filaire vs sans-fil
7
Réseaux : Cours 9
R ÉSEAUX
M1 Informatique
liaison WPA pour le wifi
réseau IPSec
transport/session SSL/TLS : utilisation en https
application authentification des utilisateurs
4.b
Authentification des Utilisateurs
Il existe aussi de nombreux systèmes utilisant les réseaux pour diffuser des jetons d’authentification. Ces systèmes peuvent être utilisés pour s’authentifier auprès des protocoles
décrits précédemment.
Exemples :
Kerberos, cartes à puce, autres appareils à jetons.
Ce système permet de créer des “mots de passe temporaires” (changeant toutes les minutes), limitant ainsi les problèmes de rejeu.
4.c
—
—
—
—
—
4.d
Plan de la section
Petit Historique
Chiffrement Symétrique
Fonctions de Hachage
Chiffrement Assymétrique
Protocoles cryptographiques
Un Peu de Vocabulaire I
— Protocoles Cryptographiques : mises en oeuvre algorithmiques, logicielles de techniques
mathématiques pour assurer la sécurité (communications, transactions, audit, ...)
8
Réseaux : Cours 9
4.e
R ÉSEAUX
M1 Informatique
De Tout Temps, les Hommes ...
ont cherché à dissimuler des messages, des journaux, ...
— Stéganographie : dissimulation
— Méthode par substitution : A→B,B →C, . . .
attaque par analyse de fréquence
— méthodes complexes, paramétrée par une clef :
3DES, IDEA, Blowfish, AES...
La plupart de ces dernières sont extrêment robustes, y compris avec les puissances de
calcul actuelles.
4.f
Etat de la Loi (Française)
— Historique “troublé” :
— En France, cryptographie forte interdite jusqu’en 1999
— Aux Etats-Unis,
— NSA
— PGP
— ...
— Le tournant du commerce électronique : (décret 1999)
clefs (symétriques) de taille maximale 128 bits
— Déclaration au Ministère de la Défense
— Signatures électroniques ont valeur légale (2001)
— 2004 : LCEN : Loi de Confiance dans l’économie numérique
— utilisation libre (plus de taille maximale)
— fourniture et exportation soumises à déclaration, et autorisation dans certains cas.
Voir http://www.ssi.gouv.fr
4.g
Sécurité des Protocoles (Un Peu de Vocabulaire II)
Au fait, exactement, quelles caractéristiques de sécurité sont-elles procurées par la cryptographie ?
1. confidentialité : les données échangées ne peuvent être connues que de l’expéditeur et
du destinataire.
2. intégrité : toute modification (involontaire ou malveillante) est détectée.
3. authentification : les interlocuteurs sont réellement qui ils prétendent être.
Il existe de nombreuses autres propriétés souhaitables, plus fines (comme la confidentialité
future parfaite). Nous nous restreignons ici aux trois principales.
9
4.h
M1 Informatique
R ÉSEAUX
Réseaux : Cours 9
Un Algorithme de Chiffrement Totalement Fiable
Il existe un algorithme prouvé mathématiquement (théorie de l’Information) comme
étant sûr à 100 % :
Méthode du masque jetable :
— Alice et Bob se choisissent une longue suite de bits aléatoires P
— Pour chiffrer un message M, Alice fait un OU EXCLUSIF (⊕) de M avec P
— Pour déchiffrer le message reçu C, Bob effectue la même opération
— comme ⊕ est
— associatif : ∀ X, Y, Z ( X ⊕ Y ) ⊕ Z = X ⊕ (Y ⊕ Z )
— idempotent : ∀ X, X ⊕ X = 0
— C ⊕ P = ( M ⊕ P) ⊕ P = M
4.i
Problème pour le Masque Jetable
La méthode par masque jetable est malheureusement impraticable.
— il faut une “clef” de même taille que le message à transmettre.
— une “clef” ne peut servir qu’une seule fois.
=> Problème de la distribution des clefs.
4.j
Chiffrement Symétrique
Fonction de chiffrement à secret partagé : la même clef est utilisée pour chiffre et déchiffrer.
Alice
clé K
message M
C = EK ( M)
Bob
clé K
−→
C
M = DK ( C )
Les algorithmes de chiffrements par blocs sont conçus à partir d’opérations élémentaires
altérants les bits des données :
— permutation (circulaire)
— ou exclusif ⊕
— multiplication modulo
— ...
10
4.k
Algorithmes de Chiffrements
Algorithme
DES (obsolète)
3DES
IDEA
Blowfish
RC5
CAST-128
AES(Rijndael)
4.l
M1 Informatique
R ÉSEAUX
Réseaux : Cours 9
Longueur de clef
56 bits
168 bits
128 bits
variable → 448 (128 bits en général)
variable
de 40 à 128 bits
variable (128,192,256)
Fonctions de Hachages Cryptographiques
Une fonction de hachage est une fonction qui à toute donnée fait correspondre un “résumé”
de petite taille fixe.
Propriétés attendues d’une fonction de hachage cryptographique H :
— H est applicable à des données de taille arbitraire
— H produit une sortie de longueur fixe
— H ( x ) est algorithmiquement facile à calculer
— inversibilité : il est algorithmiquement difficile, pour tout résumé h, de trouver x tel
que H ( x ) = h
— collision : il est algorithmiquement difficile de trouver x et y, avec y 6= x, tels que
H (y) = H ( x )
— collision à document donné : pour toute donnée x, il est algorithmiquement difficile
de trouver y 6= x tel que H (y) = H ( x )
4.m
Fonctions de Hachages Crypto Reconnues
Algorithme de hachage
MD5
SHA-1
SHA-256
RIPEMD-160
SHA3
taille données
∞
64
2 −1
264 − 1
∞
∞
taille haché
128 bits
160 bits
256 bits
160 bits
arbitraire
— Eté 2005 : MD5 est cassé
collisions
— 2007 : SHA-1 fragilisé
— il est conseillé de passer à SHA-256 (SHA-2 et suivants)
— 2008 : lancement d’un concours pour la création d’une nouvelle (famille de) fonction
de hachage cryptographique.
— octobre 2012 : résultat du concours : Keccak est SHA3
11
R ÉSEAUX
Réseaux : Cours 9
4.n
M1 Informatique
Cryptographie à Clef Publique
Algorithme
Diffie Helman
RSA
El Gamal
Utilisation
Echange de clefs
chiffrement, signature
chiffrement, signature
Les longueurs de clefs sont variables (∼ 2048 bits conseillés pour RSA actuellement).
Ces algorithmes sont basés sur les propriétés algébriques des anneaux “modulo” Z/nZ.
Il en existe aussi des versions en courbes elliptiques et courbes hyperelliptiques. Ces derniers
objets sont des groupes dont les propriétés algorithmiques sont utilisables en cryptographie
pour des tailles de clefs plus petite que l’arithmétique modulo.
4.o
Chiffrement Assymétrique
On parle de chiffrement assymétrique dans le cas de la cryptographie à clef publique car ici
deux clefs sont utilisées (Kpriv , Kpub ) :
— il est possible de chiffrer avec Kpub ,
— il n’est possible de déchiffrer qu’avec Kpriv
— DKpriv CKpub (msg) = msg,
— contrairement au cas symétrique, la clef de chiffrement Kpub peut donc
être largement diffusée.
=> c’est la clef publique.
4.p
Signature avec une Clef Publique
Si on inverse l’ordre, on a aussi
— CKpub DKpriv (h) = h,
(les deux opérations mathématiques sous-jacentes commutent),
— on obtient un schéma de signature cryptographique :
— signature d’un résumé (haché) h avec Kpriv : sig = DKpriv (h)
— vérification (publique) avec Kpub : CKpub (sig) == h
On peut utiliser la même clef pour signer et pour le chiffrement dans certains cas (RSA/DSA,
ECDSA), c’est risqué pour d’autre (El Gamal).
4.q
Authentification
Elle s’effectue par la signature (via Kpriv ) d’une association
— nom (représentant une entité)
— valeur
Exemple : [email protected] est l’adresse l’électronique de “Monsieur H. Simpson”.
12
4.r
M1 Informatique
R ÉSEAUX
Réseaux : Cours 9
Architecture à Clefs Publiques
Un tiers de confiance peut émettre de tels certificats.
Si on certifie une association nom/clef publique on obtient une architecture récursive :
A
1. autorité : nom A , Kpub
2. client ou autorité de niveau 2 : nom, Kpub
A ) A, certifie que K
3. certificat : « Je, soussigné (avec Kpriv
pub est la clef publique de nom. »
Une telle infrastructure est appelée infrastructure à clef publique (PKI).
4.s
Exemple de Hiérarchie d’Authentification
Notation X [K, Y ] : certificat émis par X attestant que K est la clef publique de Y.
B[K A , A]
A[K B , B]
A[K B , B]
C [K A , A]
B[K A , A]
A
B
B[KE , E]
C
A [ KC , C ]
C [K A , A]
4.t
A[K D , D ]
D
E
E[K I , I ]
E[K J , J ]
F
G
H
I
J
C [K F , F ]
C [KG , G ]
D [K H , H ]
E[K I , I ]
E[K J , J ]
Exemple (Simplifié) de Communication Sécurisée
A de clefs publique/privée (K A , K 0A ) veut envoyer un message M à B de clefs publique/privée (K B , K B0 ).
— A tire au hasard une clef k (de 128 bits),
— A envoie
— c = CKRSA
( k ),
B
AES
— C = Ck ( M ),
SHA1 ( M )).
— s = CKRSA
0 (H
A
— B obtient la clef de session k = DKRSA
0 ( c ),
B
— B déchiffre D = DkAES (C ),
(s) = H SHA1 ( D ).
— et vérifie la signature avec DKRSA
A
5
Conclusion
5.a
Un Domaine en Expansion
— coût estimé à 400 milliards de dollars par an (Lloyd’s jan. 2015)
— Un tiers du temps des DSI est consacré à la sécurité
13
Réseaux : Cours 9
5.b
—
—
—
—
—
R ÉSEAUX
M1 Informatique
Métiers de la Sécurité
Expert (cybersécurité / tests d’intrusion)
Architecte / Intégrateur
Développeur
Auditeur / Post-auditeur
Expert connexe
14