Sécurité et Services Réseaux Partie: Sécurité
Pr. Ghizlane ORHANOU
Master spécialisé : Informatique Appliquée Offshoring
Année universitaire 2018-2019
Chapitre 3:
Sécurité des réseaux et protocoles
G. Orhanou Master IAO
G. Orhanou
PLAN
Fonctionnement d’un Firewall
Fonctionnement d’un IDS/IPS
Sécurité des protocoles (SSH, SSL/TLS)
Master IAO G. Orhanou
Principe de fonctionnement d’un Firewall
Master IAO
G. Orhanou
Le système firewall est un système logiciel, reposant parfois sur un matériel réseau dédié, constituant un intermédiaire entre le réseau local (ou la machine locale) et un ou plusieurs autres réseaux externes (ou même internes).
Un pare-feu (appelé aussi coupe-feu, garde- barrière ou firewall en anglais): est un système permettant de protéger:
un ordinateur
ou un réseau d'ordinateurs
des accès non autorisés provenant d'un réseau tiers (notamment Internet).
Définition d’un Firewall
(1/2)Master IAO G. Orhanou
Le pare-feu est un système permettant de filtrer les paquets de données échangés avec le réseau, il comporte au minimum les interfaces réseau suivantes :
une interface pour le réseau à protéger (réseau interne) ;
une interface pour le réseau externe.
Définition d’un Firewall
(2/2)Master IAO
Fonctionnement d'un système pare-feu
Un système pare-feu contient un ensemble de règles prédéfinies permettant :
D'autoriser la connexion (allow) ;
De bloquer la connexion (deny) ;
De rejeter la demande de connexion sans avertir l'émetteur (drop).
L'ensemble de ces règles permet de mettre en oeuvre une méthode de filtrage dépendant de la politique de sécurité adoptée par l'entité.
On distingue 4 stratégies pour les relations intérieur <-> extérieur:
1.
Tout autoriser
2.
Tout interdire
3.
Tout autoriser et interdire ce qui est dangereux
4.
Tout couper et autoriser ce qui est utile
A votre avis quelle est la bonne politique à adopter?
Fonctionnement d'un système pare-feu
On distingue 4 stratégies pour les relations intérieur <-> extérieur:
1.
Tout autoriser
2.
Tout interdire
3.
Tout autoriser et interdire ce qui est dangereux
Déconseillé
4.
Tout couper et autoriser ce qui est utile
La bonne solution
Fonctionnement d'un système pare-feu
G. Orhanou Master IAO
4- Tout couper et autoriser ce qui est utile
Impose de recenser les besoins
Quels services? Avec quels sites? Pour quels utilisateurs?
Les besoins sont fournis par la politique de sécurité
G. Orhanou Master IAO
G. Orhanou
Les différents types de Firewall
Firewall à filtrage simple de paquets (stateless packet filtering)
Firewall à filtrage dynamique de paquets (stateful packet filtering)
Firewall applicatif
Master IAO G. Orhanou
Firewall à filtrage simple de paquets
Un système pare-feu fonctionne sur le principe du filtrage simple de paquets ou sans état (en anglais «stateless packet filtering»). Il analyse les en-têtes de chaque paquet de données échangé entre une machine du réseau interne et une machine extérieure.
Les entêtes des paquets systématiquement analysés par le firewall (pour les requêtes et les réponses) comportent :
adresse IP de la machine émettrice ;
adresse IP de la machine réceptrice ;
type de paquet (TCP, UDP, etc.) ;
numéro de port (rappel: un port est un numéro associé à un service ou une application).
Master IAO
G. Orhanou
Firewall à filtrage dynamique
Le filtrage simple de paquets se contente d’examiner les paquets IP indépendamment les uns des autres. Or, la plupart des connexions reposent sur le protocole TCP, qui gère la notion de session, afin d'assurer le bon déroulement des échanges.
Le système de filtrage dynamique de paquets est basé sur l'inspection des couches 3 et 4 du modèle OSI, permettant d'effectuer un suivi des transactions entre le client et le serveur.
Le terme anglais est « stateful inspection » ou « stateful packet filtering », traduit en français par « filtrage de paquets avec état ».
Un dispositif pare-feu de type « stateful inspection » est ainsi capable d'assurer un suivi des échanges, c'est-à-dire de tenir compte de l'état des anciens paquets pour appliquer les règles de filtrage.
Master IAO G. Orhanou
A partir du moment où une machine autorisée initie une connexion à une machine située de l'autre côté du pare- feu, l'ensemble des paquets transitant dans le cadre de cette connexion seront implicitement acceptés par le pare-feu.
Chaque Firewall garde en mémoire une table d’états, pouvant variée d’un produit à un autre, mais inclus nécessairement:
Adresse IP source
Adresse IP destination
Numéros de ports
Information sur l’état de la connexion (ou des connexions ouvertes)
Master IAO
Firewall à filtrage dynamique (Statefull inspection)
Exemple d’une table d’état d’un Firewall (pris du standard NIST_SP800-41-rev1-2009)
Firewall à filtrage dynamique
(Statefull inspection) Le filtrage applicatif
Le filtrage applicatif permet de filtrer les communications application par application. Il suppose donc une bonne connaissance des applications présentes sur le réseau, et notamment de la manière dont elle structure les données échangées (ports, encapsulation, etc.).
Le filtrage applicatif opère donc au niveau de la couche application ,contrairement au filtrage de paquets simple (niveau Internet) et au filtrage dynamique (niveau transport).
Un firewall effectuant un filtrage applicatif est appelé
généralement «passerelle applicative ». Il s’interpose
entre deux réseaux différents et permet d’effectuer une
validation fine du contenu des paquets échangés.
Exemples: Un FW applicatif peut déterminer :
Si un email message contient un type de pièce jointe que l’entreprise ne permet pas (comme les fichiers exécutables),
Ou si de la messagerie électronique (instant messaging - IM) est utilisée à travers le port 80 (destiné pour HTTP).
Une autre fonctionnalité est qu’il peut bloquer des connexions à travers lesquelles des actions spécifiques ont été effectuées (ex., les utilisateurs sont interdits d’utiliser la commande “put”
du FTP).
Il peut être utilisé pour permettre ou interdire des pages web qui contiennent des types particuliers de contenu actif, comme Java ou ActiveX, ou qui ont des certificats SSL signées par une CA particulière (certificate authority - CA)), comme une CA compromise ou révoquée.
G. Orhanou Master IAO
Firewall Applicatif Firewalls Personnels
Bien que les pare-feux du périmètre de réseau
fournissent un certain degré de protection pour les hôtes internes, dans de nombreux cas d’autres mesures de protection supplémentaires sont nécessaires.
Un Pare-feu de réseau n’est pas en mesure de reconnaître tous les cas et les formes d'attaques,
permettant à certaines attaques de pénétrer et atteindre les hôtes internes.
Il n’est pas efficace contre une attaque envoyé par un hôte interne vers un autre sur le même segment.
Solution: Pare-feu personnel à mettre en place au niveau des machines des utilisateurs.
G. Orhanou Master IAO
G. Orhanou
Définition (DMZ):
Une zone démilitarisée (DMZ) est un sous-réseau se trouvant entre le réseau local et le réseau extérieur.
Propriétés:
Les connexions à la DMZ sont autorisées de n’importe où.
Les connexions à partir de la DMZ ne sont autorisées que vers l’extérieur.
Intérêt:
Rendre des machines accessibles à partir de l’extérieur (possibilité de mettre en place des serveurs (DNS public, relais de
messagerie, serveur web, etc)) sans toutefois compromettre la sécurité du réseau local.
La DMZ fait ainsi office de « zone tampon » entre le réseau à protéger et le réseau hostile.
DMZ (Zone démilitarisée)
Master IAO G. Orhanou
DMZ (Zone démilitarisée)
?
?
?
Dangers
Master IAO
G. Orhanou
Principe de
fonctionnement d’un IDS/IPS
Master IAO
Définitions
Une intrusion est toute utilisation d'un système informatique à des fins autres que celles prévues,
généralement dues à l'acquisition de privilèges de façon illégitime.
L'intrus est généralement vu comme une personne étrangère au système informatique qui a réussi à en prendre le contrôle.
MAIS, les statistiques montrent que les utilisations
abusives (du détournement de ressources à l'espionnage industriel) proviennent le plus fréquemment de personnes internes ayant déjà un accès au système.
G. Orhanou Master IAO
Définitions - Terminologie
IDS – Intrusion Detection System: Système de Détection d'Intrusions
IPS – Intrusion Prevention System: Système de Prévention contre les Intrusions
IDPS – Intrusion Detection & Prevention System
Rôle d’un IDPS
Un système de détection et de Prévention contre les intrusions est un mécanisme destiné à repérer et éventuellement arrêter des activités anormales ou suspectes sur la cible analysée (un réseau ou un hôte). Il permet ainsi d'avoir une connaissance sur les tentatives réussies comme échouées des intrusions.
La manière dont un IDPS détecte des anomalies peut beaucoup varier. Cependant, l'objectif principal de tout IDS est de prendre sur le fait les auteurs avant qu'ils ne puissent vraiment endommager les ressources.
Rôle d’un IDPS
Collection
Collecte, organise et stocke des données pour la détection et l'analyse.
Détection
Les données collectées sont examinées et les alertes sont générées en fonction des événements observés.
Analyse
L'administrateur interprète et examine les données d'alerte.
G. Orhanou Master IAO
Méthodes de Détection
Les technologies IDPS utilisent plusieurs méthodes pour détecter les incidents.
Les classes principales des méthodes de détection d'intrusions (selon NIST_SP800-94, « Guide to Intrusion Detection and Prevention Systems (IDPS)) sont :
l signature-based,
l anomaly-based,
l stateful protocol analysis
La plupart des IDPS utilisent plusieurs méthodes de détection, soit séparement soit intégrées, afin de fournir la détection la plus large et précise possible.
G. Orhanou Master IAO
Méthodes de Détection
Détection basée sur les signatures
Une signature est un modèle (pattern) qui correspond à une menace connue. La détection à base de signature est le processus de comparer des signatures contre des
événements observés pour identifier des incidents possibles.
Exemples de signatures:
l Une tentative de telnet avec le login “root”, représente une violation de la politique de sécurité de l'organisation
l Un e-mail avec comme sujet “Free pictures!” et une pièce jointe avec le nom “freepics.exe”, représentent des caractéristiques d'une forme connue de malware
l Un système d'exploitation avec une entrée dans le fichier journal avec la valeur du code d'état (status code value) égale à 645, qui indique que l'audit au niveau de la machine a été désactivé.
G. Orhanou Master IAO
Méthodes de détection
Détection à base d'anomalies
La détection à base d'anomalies est le processus de comparer ce qui est considéré comme activité normale contre des événements observés pour identifier s'il y a des écarts ou déviations significatives.
Un IDPS utilisant cette méthode a des profils qui représentent le comportement normal de plusieurs entités comme : les utilisateurs, les hôtes, les connexions réseau, ou des applications.
Les profils sont développés en surveillant (monitoring) les
caractéristiques d'une activité typique sur une période du temps (appelée période d'apprentissage ou training period).
l Par exemple, un profil pour un réseau pourrait montrer que l'activité Web représente une moyenne de 13 % de la bande passante du réseau pendant des heures d'une journée de travail typique.
G. Orhanou Master IAO
Méthodes de détection
Détection à base d'anomalies
Les profils pour la détection à base d'anomalie peuvent être statiques ou dynamiques.
Une fois généré, un profil statique est inchangé à moins que l'IDPS ne soit spécifiquement adressé de produire un nouveau profil.
Un profil dynamique est ajusté constamment au fur et à mesure que des événements supplémentaires sont observés surtout que les systèmes et les réseaux changent au fil du temps et donc les mesures correspondantes au comportement normal changent aussi.
Inconvénient : Les profils dynamiques sont susceptibles aux tentatives d'évasion d'attaquants.
l Par exemple, un attaquant peut exécuter de petites quantités d'activités malveillantes de temps en temps, et augmenter lentement la fréquence et la quantité de son activité. Si le taux de changement est suffisamment lentement, l'IDPS pourrait penser que l'activité malveillante fait partie du comportement normal et l'inclure dans son profil.
G. Orhanou Master IAO
Méthodes de détection Stateful Protocol Analysis
Contrairement à la détection à base d'anomalie, qui utilise des profils spécifiques à l'hôte ou au réseau, « l'analyse avec état de protocole » se base sur les profils universels développés de vendeur qui spécifient comment des protocoles particuliers doivent et ne doivent pas être utilisé.
Le "stateful" dans l'analyse de protocole stateful signifie que l'IDPS est capable de la compréhension et le dépistage de l'état des protocoles réseau, de transport et d'application qui ont une notion d'état.
l Par exemple, à l'ouverture d'une session FTP, la session est
initialement dans l'état non authentifié. Les utilisateurs Non authentifiés devraient seulement exécuter les quelques commandes dans cet état.
S'ils tentent d'exécuter des commandes nécessitant l'authentification, cela est considéré comme suspect par l'IDPS.
G. Orhanou Master IAO
Techniques de détection
Détection par Réputation
Définition:
Sous-partie de la détection par scénario.
Classifie une source selon : bonne, mauvaise ou aucune réputation.
Ex : Registre des hachages malveillants (MHR), Liste des domaines malveillants (MDL), Noeuds de sortie des tors.
Elle se base sur des listes de réputation publique, comme :
La liste des domaines malveillants.
Traqueurs de Zeus et Spyeye.
Liste de Spamhaus.
Liste des noeuds de sortie du Tor.
Techniques de détection
Détection par Réputation
Taqueurs de Zeus et Spyeye:
Ils sont des projets qui suivent la trace des serveurs utilisés pour contrôler les machines infectées par Zeus et Spyeye.
Zeus et Speye : deux chevaux de Troie destinés à voler des
informations bancaires par récupération de formulaire, Keylogger et attaques en man in the browser. Ils se transmettent par une simple visite sur un site infecté et par phishing.
Spamhaus
: c’est une organisation internationale sans but lucratif qui suit les opérations et les sources du spam sur internet.
Spamhaus gère et fournit un accès à des bases de données d'adresses IP référencées comme génératrices de spam ou de diffusion de logiciels malveillants.
Les différents types d'IDS - HIDS
HIDS (Host Based Intrusion Detection System) : ils assurent la sécurité au niveau des hôtes :
HIDS détecte facilement les « chevaux de troie »
HIDS analyse uniquement les données relatives à l'ordinateur sur lequel il se trouve => vision restreinte
consomme les ressources de la machine et donc diminue ses performances.
G. Orhanou Master IAO
NIDS (Network Based Intrusion Detection System) : permet la détection et l'analyse des paquets circulant sur ce réseau.
NIDS intercepte tous les paquets qui passent par un point précis du réseau.
C'est la plupart du temps le meilleur diagnostic possible des attaques.
Mais, suivant l'endroit où se trouvent les NIDS sur le réseau, certains paquets qui circulent ne peuvent être interceptés.
Ne permettent pas d’arrêter une intrusion.
G. Orhanou
Où doit on placer
un NIDS dans une topologie réseau?
Position 1 : Sur cette position, l'IDS peut détecter l'ensemble des attaques provenant d’Internet, en amont du firewall. Ainsi, trop d'alertes seront remontées ce qui rendra les logs difficilement consultables.
Position 2 : Si l'IDS est placé sur la DMZ, il détectera les attaques qui n'ont pas été filtrées par le firewall et qui relèvent d'un certain niveau de compétence. Les rapports et les fichiers journaux générés par l’IDS placé à cette position seront plus clairs et faciles à déchiffrer vu que les firewall a déjà filtré d’autres attaques.
Position 3 : Puisque la plupart des attaques proviennent du réseau local, il sera très important de mettre en place l’IDS à cet endroit. Ce qui permettra d’identifier et d’éradiquer tous les trojans par exemple qui pourraient contaminer le parc informatique.
Master IAO
Les systèmes de Prévention contre l'intrusion (IPS)
G. Orhanou Master IAO
Les différents types d'IPS - NIPS
NIPS (Network Intrusion Prevention System): un un système connecté directement à un segment du réseau :
Le déploiement est facile
Il protège contre différentes attaques réseaux: DoS, SYN flood etc..
Protège contre les attaques applicatives aussi.
G. Orhanou Master IAO
HIPS (Host Intrusion Prevention System), système installé sur l'ordinateur à protéger.
Protège des attaques locales (ex. un employé ayant un accès physique et voulant corrompre certains fichiers localement).
Garantie une dernière défense contre les attaques ayant passer les autres systèmes de sécurité.
Les attaques lancées entre les systèmes du même segment réseau ne peuvent être contrées qu'avec le HIPS.
Où doit on placer l'IPS
dans une topologie réseau?
G. Orhanou Master IAO
Sécurité des protocoles
l Protocole SSH
l Protocole SSL, TLS, HTTPS
G. Orhanou Master IAO
Le protocole SSH – Secure Shell
Motivation:
Se connecter à distance à un serveur d’une manière sécurisée: vise à garantir l’authentification, la confidentialité et l’intégrité des données.
Éviter d’utiliser des protocoles non sécurisés comme telnet, rlogin ou ftp.
Secure Shell (SSH) est un protocole de communication sécurisé.
Le protocole de connexion impose un échange de clés de chiffrement en début de connexion.
Par la suite, tous les segments TCP sont authentifiés et chiffrés. Il devient donc impossible d'utiliser un sniffer pour voir ce que fait l'utilisateur.
Utilisation d’un tunnel SSH
Le protocole SSH existe en deux versions majeures : la version 1.0 et la version 2.0.
La première version permet de se connecter à distance à un ordinateur afin d'obtenir un shell ou ligne de commande. Cette version souffrait néanmoins de problèmes de sécurité dans la vérification de l'intégrité des données envoyées ou reçues, la rendant vulnérable à des attaques actives.
La version 2 standardisée en janvier 2006. Cette version est beaucoup plus sûre au niveau cryptographique, et possède en plus un protocole de transfert de fichiers complet, le SSH file transfer protocol.
SSH (pour Secure Shell) est un protocole de session (couche 5 du modèle OSI)
G. Orhanou Master IAO
Le protocole SSH – Secure Shell Algorithmes cryptographiques utilisés par SSH
SSH utilise deux algorithmes pour assurer
l'authentification, RSA et DSA (Digital Signature Algorithm), ce dernier ne fonctionnant qu'avec la version 2 du protocole.
Pour chiffrer les données, SSH-1 utilise les algorithmes DES, 3DES, IDEA ou Blowfish tandis que SSH-2 emploie AES, 3DES, Blowfish, Twofish, Arcfour ou Cast128.
Enfin, la protection d’intégrité est assurée par les fonctions de hachage MD5 ou SHA-1.
G. Orhanou Master IAO
Capture du flux SSH
G. Orhanou Master IAO
Phase de négociation des algorithmes
G. Orhanou Master IAO
Echange de paquets chiffrés
G. Orhanou Master IAO
Protocole SSL/TLS
Master IAO G. Orhanou
Le protocole SSL/TLS
On distingue dans le protocole SSL/TLS deux protocoles distincts, très proches l’un de l’autre:
SSL (Secure Socket Layer), développé par Netscape (1994: SSLv1 et SSLv2 (publique), 1995 : SSL v3.0).
TLS (Transport Layer Security protocol), reprise et normalisation de l’ancien protocole par IEFT. Décrit dans RFC 2246.
Il se caractérise par:
Suit le modèle client/serveur
Indépendant du protocole de communication
Connexion privée et sûre
Extrémités authentifiées
Le protocole SSL/TLS s’intercale entre le protocole de transport (TCP) et les protocoles applicatifs tels que ceux de la
messagerie électronique (SMTP, IMAP, POP, HTTP).
Le protocole SSL/TLS
Les services de sécurité de SSL/TLS
Authentification
A l’établissement de la session
Serveur (obligatoire), client (optionnel)
Utilisation de certificat X509
Exemple l’algorithmes utilisés: RSA, DSA.
Confidentialité
Algorithme de chiffrement symétrique négocié, clé générée à l’établissement de la session
RC4, Triple DES, AES, IDEA, DES, ou Camellia.
Intégrité
Fonction de hachage avec clé secrète (MD5 ou l'un des algorithmes de hachage SHA)
Non Rejeu
Utilisation de numéro de séquence
Master IAO G. Orhanou
Couches protocolaires du SSL/TLS
Master IAO G. Orhanou
Fonctionnement du protocole SSL/TLS
Il est constitué des sous-protocoles suivants:
Le sous-protocole SSL/TLS Handshake
Authentification mutuelle du client et du serveur;
Négociation des algorithmes de chiffrement, MAC, les clés symétriques qui vont servir pour le chiffrement.
Le sous-protocole SSL/TLS Change Cipher Spec
Identifier pour le protocole Record les algorithmes de chiffrement négociés durant le handshake protocol.
Le sous-protocole SSL/TLS Alert
Spécifie les messages d’erreurs pouvant être envoyés entre le client et le serveur.
Le sous-protocole SSL/TLS Record
Permet de garantir la confidentialité et l’intégrité des données transmises.
Master IAO G. Orhanou
Faille Heartbleed
Découverte en mars 2014 et rendue publique le 7 avril 2014, Heartbleed est une vulnérabilité logicielle présente dans la bibliothèque de cryptographie open source OpenSSL à partir de mars 2012, qui permet à un « attaquant » de lire la mémoire d'un serveur ou d'un client pour récupérer, par exemple, les clés privées utilisées lors d'une communication avec le protocole Transport Layer Security (TLS).
G. Orhanou Master IAO
Fonctionnement de la faille Heartbleed
Heartbleed est un bug critique dans l’implémentation OpenSSL du protocole TLS, plus précisément l’extension qui s’appelle Heartbeat.
Cette extension permet de tester qu’une connexion est toujours vivante , c’est à dire vérifier la présence d’un autre (serveur ou client).
Fonctionnement de la faille Heartbleed
HTTP & HTTPS
HTTP & HTTPS
HTTP & HTTPS
Protocole HTTP:
HTTP fonctionne en couche Application
C’est un protocole non sécurisé et vulnérable aux attaques man-in- the-middle, qui peuvent donner accès à des informations sensibles, ou même modifier les pages web en injectant des codes
malveillants ou des publicités.
G. Orhanou Master IAO
HTTP & HTTPS
Protocole HTTPS:
HTTPS URL commence par "https://" et utilise le port 443 par défaut, tandis que HTTP URL commence par "http://" et utilise le port 80 par défaut.
HTTPS est plus sécurisé que HTTP et est conçu pour résister à des attaques de type MITM.
HTTPS se base sur le protcole SSL, qui chiffre un message HTTP avant sa transmission et le déchiffre à l’arrivée. Tout est chiffré dans un message HTTPS: les entêtes et les informations de la requête et de la réponse.
Strictement parlant, HTTPS n’est pas un protocole séparé de HTTP, mais correspond à l'utilisation de HTTP sur une connexion chiffrée SSL/TLS.
Master IAO G. Orhanou
HTTP & HTTPS
Capture d'une communication en HTTP
HTTP & HTTPS
Capture d'une communication en HTTPS
Bibliographie
Andrew Faulkner, Florian Blanc, « Avantages et faiblesses du protocole SSH », hakin9 Nº 2/2008
www.hakin9.org
www.supinfo-projects.com
http://projet.piratage.free.fr/
http://www-igm.univ-mlv.fr/
http://tldp.org/linuxfocus/Francais/
http://www.hsc.fr/ressources
http://www.tripwire.org
http://www.snort.org
G. Orhanou Master IAO