Cours sécurité 2_asr

1 955 vues

Publié le

Cours sécurité

Publié dans : Formation
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
1 955
Sur SlideShare
0
Issues des intégrations
0
Intégrations
6
Actions
Partages
0
Téléchargements
184
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Cours sécurité 2_asr

  1. 1. Cours Sécurité des réseaux Sécurité des réseaux Ikram Smaoui Trigui
  2. 2. Donner un aperçu sur les attaques et les risques qui menacent les réseaux informatiques. Donner une idée sur quelques technologies, algorithmes, et mécanismes qui permettent de Objectifs Cours Sécurité des réseaux algorithmes, et mécanismes qui permettent de sécuriser les réseaux informatiques. 2
  3. 3. Chapitre 1 : Généralités •Besoin de sécurité pour les réseaux Informatiques Cours Sécurité des réseaux •Objectifs de la sécurité informatique •Définitions: Menaces, Attaques, Risque.. •Exemples d’attaques de sécurité •Mécanismes cryptographiques de sécurité 3
  4. 4. Une intrusion est un ensemble d’actions entraînant la compromission de la sécurité de l’information possédée par une organisation. Une intrusion à un réseau Informatique (RI) peut causer des dégâts divers: Besoin de sécurité pour les RI Cours Sécurité des réseaux des dégâts divers: • perte de confiance des clients, • vol des données confidentielles, • pertes financières suite à des transactions erronées Assurer la sécurité de l’information implique d’assurer la sécurité des réseaux informatiques. 4
  5. 5. Services de la sécurité informatique • Authentification • Confidentialité • Intégrité Objectifs de la sécurité informatique Cours Sécurité des réseaux • Non-répudiation • Disponibilité • Contrôle d’accès • Autorisation 5
  6. 6. Confidentialité: Protection des données transmises contre les attaques, et protection des flux de données contre l’analyse. • Préservation du secret des données transmises. Seulement les entités communicantes sont autorisées à lire les données. • Objectifs de la sécurité informatique Cours Sécurité des réseaux • Protection des adresses source et destination, longueur des messages, etc. Mécanismes utilisés: Cryptage, contrôle d’accès. 6
  7. 7. Authentification: S’assurer que l’utilisateur du réseau soit correctement identifié ainsi que la source du message : • Assurer le receveur que le message provient de la source réelle du message. • Assurer l’authenticité des entités communicantes • Objectifs de la sécurité informatique Cours Sécurité des réseaux • Empêcher la perturbation de la connexion par une tierce partie qui se fait passer pour une entité légitime (émission ou réception non autorisée). Techniques utilisées: • Some Thing you Know : mot de passe • Some Thing you Have : carte à puce • Some Thing you Are : empreinte digitale • Signature numérique 7
  8. 8. Intégrité: • Vérifier si les données ont été altérées depuis la source vers la destination • Techniques utilisées: cryptage, signature numérique, contrôle d’accès, contrôle d’intégrité Objectifs de la sécurité informatique Cours Sécurité des réseaux contrôle d’accès, contrôle d’intégrité Non répudiation: • Empêche l’émetteur ou le receveur de nier avoir transmis ou reçu un message. • Techniques utilisées: signature électronique 8
  9. 9. Contrôle d’accès: Empêcher l’utilisation non autorisée des ressources réseau • Définir les personnes autorisées d’accéder aux ressources réseau ainsi que leurs privilèges. Disponibilité : Concept permettant de s’assurer que l’information et les services sont accessibles lorsqu’ils sont demandés. Objectifs de la sécurité informatique Cours Sécurité des réseaux services sont accessibles lorsqu’ils sont demandés. • Mécanismes utilisés : • Sauvegardes • Partage de charge Autorisation • La permission de faire ou d'accéder à quelque chose 9
  10. 10. Définitions Menace : Une personne, un objet, ou un évènement pouvant provoquer des dommages sur un système et ayant un impact sur ses fonctionnalités, son intégrité ou sa disponibilité. Vulnérabilité : Faiblesse pouvant être exploitée par une ou plusieurs menaces Cours Sécurité des réseaux Attaque : Action compromettant la sécurité de l’information d’une organisation. Risque : quantité ou qualificatif exprimant la possibilité qu’une attaque soit réalisée sur une ressource en exploitant les vulnérabilités qu’elle présente. 10
  11. 11. Les attaques sont des actions qui entraînent la compromission de la sécurité de l’information possédée par une organisation. Deux types d’attaques • Attaques passives • Pas de modification de l’information Attaques de sécurité Cours Sécurité des réseaux • • Difficile à détecter • Attaques actives • Entraînent généralement la modification de l’information, la non- disponibilité des services, etc. Les attaques peuvent être aussi bien internes qu’externes (la majorité des attaques viennent de l’intérieur et elles sont plus difficiles à détecter) 11
  12. 12. Exemples d’attaques de sécurité • Falsification (Tampering) • Spoofing • Ecoute (Eavesdropping and Packet Sniffing) • Password Guessing • Déni de service (DoS/DDoS) • Ping flooding, Smurf • TCP SYN Flooding Cours Sécurité des réseaux • TCP SYN Flooding • UDP Flooding • Web spoofing • Cheval de Troie • Ver 12
  13. 13. Falsification (Tampering) Description : Modification ou la destruction des données. Moyens : mauvaise utilisation des privilèges par les utilisateurs internes, ou accès non autorisé par des agents externes. Menaces : • Introduction des modifications sur des enregistrements (statut, Cours Sécurité des réseaux • Introduction des modifications sur des enregistrements (statut, salaire, inscription, etc.) • Effacement des logs par un intrus pour empêcher la réparation des pannes et la résolution des conflits. • Installer des chevaux de Troie pour la collecte des mots de passe, ou pour d’autres intrusions. 13
  14. 14. usurpation d'identité (Spoofing) Description : technique consistant à prendre l'identité d'une autre personne ou d'une autre machine. Elle est généralement utilisée pour récupérer des informations sensibles. Moyens : • Vol de comptes, deviner des mots de passe (password guessing), social engeneering. Cours Sécurité des réseaux social engeneering. Menaces : • Des messages erronés. • Déni de service (IP attacks, SYN attacks, Ping-of-Death) 14
  15. 15. Technique utilisée en informatique pour attaquer tout réseau local utilisant le protocole de résolution d'adresse ARP, les cas les plus répandus étant les réseaux Ethernet et Wifi. Pollution des caches arp avec de fausses associations adresse mac/adresse IP. Permet à l'attaquant de détourner des flux de communications transitant entre une machine cible et une passerelle : routeur, serveur, etc. arp spoofing ou arp poisoning Cours Sécurité des réseaux L'attaquant peut ensuite écouter, modifier ou encore bloquer les paquets réseaux. Permet des attaques de type "man in the middle", Déni de service. 15
  16. 16. Réseau local : 192.168.1.1 : passerelle. 192.168.1.10 : machine cible. 192.168.1.17 : attaquant. arp spoofing ou arp poisoning L'attaquant va envoyer un paquet ARP qu'il aura lui-même forgé à l'aide d'outils comme Scapy. Cours Sécurité des réseaux 16 d'outils comme Scapy. Paquet ARP : ip_source= 192.168.1.1 mac_source= <adresse_mac attaquant> ip_destination= 192.168.1.10 type= is-at l'adresse ip 192.168.1.1 correspond à l'adresse MAC <adresse_mac attaquant>
  17. 17. arp spoofing Gratuitous ARP Cours Sécurité des réseaux Surveiller les changements d'association: • arpwatch (unix) • WinARP Watch (Windows) 17
  18. 18. Cours Sécurité des réseaux 18
  19. 19. Cours Sécurité des réseaux 19
  20. 20. Web spoofing Cours Sécurité des réseaux 20
  21. 21. Ecoute (Eavesdropping and Packet Sniffing) Description : analyser le trafic réseau pour collecter des informations sans introduire des modifications. Moyens : Sniffers, analyseur de trafic, les routeurs, les passerelles, capture et filtrage des paquets. Menaces : L’écoute peut être utilisé pour collecter un ensemble Cours Sécurité des réseaux Menaces : L’écoute peut être utilisé pour collecter un ensemble d’informations envoyés à travers le réseau. • Login + mot de passe. • Numéros des cartes de crédit. • E-mails et d’autres messages • Analyse du trafic du réseau (estimation de la bande passante, divulgation des adresses IP utilisées…). 21
  22. 22. Password Guessing Une recherche exhaustive (Brute force) • Essai de toutes les combinaisons possibles. • Peut aboutir à un résultat rapidement si la longueur du mot de passe est faible. Une recherche intelligente Cours Sécurité des réseaux • Recherche des mots de passe possibles dans un espace restreint. • A partir d’informations relatives à l’utilisateur : son nom, son numéro de téléphone, sa date de naissance, etc. • Générique : des mots ou des phrases significatives, attaque selon un dictionnaire. 22
  23. 23. Déni de service (DoS/DDoS) Attaques les plus populaires. L’objectif de ces attaques est de créer une situation où la victime est incapable de fournir un service à ses clients. Réalisé généralement suite à l’épuisement physique ou logique des ressources au niveau des serveurs ou des réseaux de la victime ou à travers le lien de communication liant la victime Cours Sécurité des réseaux victime ou à travers le lien de communication liant la victime au FSI. Attaques de Déni de Service Distribué • Utilisation des esclaves: machines disposant des vulnérabilités qui seront exploitées par un intrus. • Utilisation des réflecteurs: envoient des réponses à des paquets spoofés (destination : victime) 23
  24. 24. DDOS • Plusieurs machines sont impliquées dans ce type d’attaque • L’attaquant prend le contrôle d’un certain nombre de machines afin qu’elles attaquent toutes la même cible DOS local (épuisement des ressources) • Saturation de l'espace disque Déni de service (DoS/DDoS) Cours Sécurité des réseaux • Saturation de l'espace disque • répertoires récursifs DOS par le réseau (consommation de la bande passante) • ping of the death; SYN flood 24
  25. 25. Déni de service (DoS/DDoS) Cours Sécurité des réseaux 25
  26. 26. Ping flooding, Smurf Principe : Inonder la cible avec un flux maximal de ping Ping (echo request, echo reply) Le smurf est une variante du ping flooding Tous les hôtes du réseau répondent à l’adresse réelle Principe du Smurf: Cours Sécurité des réseaux L’attaquant envoie une requête ICMP echo: adresse source : celle de l’hôte victime adresse destination : broadcast à l’adresse réelle Victime 26
  27. 27. Empêche l’établissement de connexions TCP L’attaquant envoie un grand nombre de paquets TCP-SYN mais ne termine pas l’établissement de la connexion Attaque par inondation de SYN avec une adresse source usurpée (spoofée) et inaccessible. TCP SYN Flooding Cours Sécurité des réseaux Fonctionnement normal 27
  28. 28. Les programmes malveillants Un logiciel malveillant (malware en anglais) est un logiciel développé dans le but de nuire à un système informatique. La propagation de ces programmes peut causer des dégâts pour le réseau informatique. Exemples: • virus • ver (worm) • cheval de Troie (trojan) Cours Sécurité des réseaux • cheval de Troie (trojan) • porte dérobée (backdoor) • logiciel espion (spyware) • enregistreur de frappe (keylogger) • exploit • hameçonnage (phishing) 28
  29. 29. Les virus C’est un programme qui s’installe dans un autre programme et qui se duplique grâce à celui-ci La propagation se fait en trois phases : • Infection • Activation • Duplication Cours Sécurité des réseaux • Duplication Lorsque le programme infecté est exécuté, le virus se reproduit et infecte, à nouveau, un ou plusieurs autres programmes. La particularité des virus informatiques est qu'ils ne peuvent se reproduire sans l'aide d'un programme cible existant. 29
  30. 30. Les virus Quelques types de virus: • Virus parasite : Le virus s’attaque aux fichiers exécutables comme partie de leurs code. Il se réplique lorsque le fichier infecté est exécuté, et cherche s’il y a d’autres fichiers à infecter. • Virus résident en mémoire : hébergé en mémoire comme partie des programmes principaux du système. Il infecte tout programme Cours Sécurité des réseaux qui s’exécute. • Virus sur secteur de Boot (Boot Sector Virus): Infecte le secteur de boot du disque, et se propage lorsque le système d’exploitation démarre (premiers virus sur DOS). 30
  31. 31. C’est un programme qui, contrairement à un virus, est doté de l’autonomie et se duplique à travers un réseau La propagation se fait en trois phases : • Recherche d’un système réceptif • Établissement d’une connexion avec ce système • Transport du programme Les Vers Cours Sécurité des réseaux • Un moyen courant de propagation: le carnet d'adresses d'outlook Quelques exemples: • Code Red • Blaster 31
  32. 32. Cheval de Troie (Trojan Horse) Un "Cheval de Troie est un logiciel malveillant qui se présente comme un programme utile ou une application intéressante. Un programme apparemment « innocent » qui contient des instructions cachées. • Fonctionnement normal/attendu • Les actions cachées violent la politique de sécurité. • Cours Sécurité des réseaux • Les actions sont exécutées avec le privilège de l’utilisateur. Exemple : login modifié • Le programme login d’ouverture de session est modifié afin qu’il ouvre une session mais il enregistre au niveau d’un fichier le nom utilisateur et le mot de passe entré. • Possibilité d’envoi par email des informations collectées à un intrus. 32
  33. 33. Les spywares (ou espiogiciels) • Comme leur nom l'indique, les spywares sont des logiciels d'espionnage. • Le spyware est un logiciel ou un composant d'un logiciel qui collecte des informations sur l'utilisateur d'un ordinateur et les envoie vers son concepteur . • Un spyware n'est en principe pas destiné à endommager une Les spywares Cours Sécurité des réseaux • Un spyware n'est en principe pas destiné à endommager une machine mais plutôt la récupération de certaines informations. • Détection de spyware: Comportement anormal de la machine: • Page d'accueil du navigateur modifiée. • Apparitions d'icônes sur le bureau. • Trafic réseau anormal. • Désactivation des outils de sécurité locaux 33
  34. 34. Les adwares (ou pubgiciel) • Les " adwares " sont des logiciels du même type que les spywares. Ils s'installent généralement sans que l'utilisateur connaît qu'il installe un tel logiciel. Les Keyloggers (ou enregistreurs de frappes) • Programme généralement invisible installé sur le poste d'un utilisateur Autres types de logiciels Cours Sécurité des réseaux • Programme généralement invisible installé sur le poste d'un utilisateur et chargé d'enregistrer à son insu ses frappes clavier pour intercepter des mots de passe par exemple. exploit : • Programme permettant d'exploiter une faille de sécurité d'un logiciel ; 34
  35. 35. Mécanismes de sécurité Cours Sécurité des réseaux 35
  36. 36. Mécanismes de sécurité Cryptage • Repose sur des algorithmes mathématiques pour transformer les messages en une forme intelligible. • La transformation dépend d’un algorithme et de zéro à plusieurs clés. Signature numérique Cours Sécurité des réseaux Signature numérique • Modification de données, ou transformation cryptographique irréversible à un message d’origine afin de prouver la source et l’intégrité de ce message. Échange d’authentification • Mécanisme assurant l’identité d’une entité à travers un échange d’informations. 36
  37. 37. Notarization: • Utilisation d’une tierce partie afin d’assurer certaines propriétés liées à un échange de données. Horodatage (Timestamping) • Inclusion d’une date et d’un temps correct dans Mécanismes de sécurité Cours Sécurité des réseaux • Inclusion d’une date et d’un temps correct dans un message pour empêcher l’attaque de rejeu (replay attack). Mécanismes non cryptographiques: • Implémentation de Firewalls • Détection d’intrusions • Traçabilité (garder un historique des événements) 37
  38. 38. Mécanismes cryptographiques Cours Sécurité des réseaux Mécanismes cryptographiques 38
  39. 39. Exigences: • Un algorithme de cryptage solide. • Une clé secrète partagée k est connue entre l’émetteur et le receveur. C = EK(M) M = DK(C) Suppose que l’algorithme de cryptage est connu à l’avance. Nécessité de canaux sécurisés pour la distribution des clés. Cryptage symétrique Cours Sécurité des réseaux Nécessité de canaux sécurisés pour la distribution des clés. Exemples: Algorithmes: DES, IDEA, AES • Taille des clés: 56-128-192-256-… bits 39
  40. 40. Limitation: Pas d'intégrité et d'identification de l'auteur Si Alice, Bob et Cédric partage le même lien de communication alors ils partagent la même clé de chiffrement symétrique. Cédric peut intercepter le message envoyé par BOB à Alice, le modifier et le recrypter par la clé partagée avant de l’envoyer à Alice. (Attaque du l’homme du milieu). Cryptage symétrique Cours Sécurité des réseaux 40
  41. 41. Utilisation d’une paire de clés: • Publique: Connue par tout le monde, utilisée généralement pour crypter ou vérifier la signature des messages. • Privée: Connue uniquement par le détenteur, utilisée pour décrypter et signer des messages. Impossible de trouver la clé privée à partir de la clé publique. Exemples: RAS, Diffie-Hellman, El Gamal. Généralement dix fois plus lent que le cryptage symétrique. Utilisé généralement pour • Cryptage asymétrique Cours Sécurité des réseaux Utilisé généralement pour • Cryptage / décryptage: assurer la confidentialité. • Signature numérique: assurer l’authentification et la non répudiation. • Distribution de clés: se mettre d’accord sur une clé de session. Clés à grande taille (ex: RSA: 1024-2048-…). • Kpr: clé privée, Kpu: clé publique • Y=fKpr(X) facile à calculer si Kpr et X sont connus. • X=fKpu -1(Y) facile si Kpu et Y sont connus. 41
  42. 42. Cryptage asymétrique Texte clair Cryptage Clé publique Texte chiffré Décryptage Clé privée Texte clair Cours Sécurité des réseaux Cryptage Clé privée Texte chiffré Décryptage Clé publique Texte clair Texte clair 42
  43. 43. Entrée: message M avec contenu et taille arbitraire. Sortie: message de taille fixe y=H(M). Irréversible: • Étant donnée y, il est difficile de trouver x tel que: y = H(x) Résistance forte à la collision: • Étant donné x, il est impossible de trouver z avec H(x) = H(z) Fonction de hachage Cours Sécurité des réseaux • Étant donné x, il est impossible de trouver z avec H(x) = H(z) • Il est impossible de trouver une paire x, z tel que H(x) = H(z) Calcul facile et rapide (plus rapide que le cryptage symétrique). Exemples: • MD5, SHA, … • Taille du digest: 128-160-… bits 43
  44. 44. Idée clé: • Le Hash appelé aussi Digest (résultat de la fonction de hachage) d’un message est crypté avec la clé privée de l’émetteur. • La clé publique est utilisée pour la vérification de la signature Soit: Signature numérique Cours Sécurité des réseaux Soit: • M: message à signer, H: fonction de hachage • Kpr, Kpu: paire de clés privée / publique de l’émetteur. • E / D: fonction de cryptage / Décryptage en utilisant Kpu / Kpr. En recevant (M, EKpr(H(M))), le récepteur vérifie si: H(M)=DKpu(EKpr(H(M))) 44
  45. 45. Signature numérique Données Hash Digest Crypter En utilisant Clé privée Signature numérique Cours Sécurité des réseaux Données Signature numérique 45
  46. 46. Signature numérique Vérification Données Digest Hash Cours Sécurité des réseaux • La signature numérique permet d’assurer l’intégrité, l’authentification et la non-répudiation. Signature numérique Digest Décrypter En utilisant Clé publique Égalité? 46
  47. 47. Chapitre 2 : Firewall Cours Sécurité des réseaux Chapitre 2 : Firewall 47
  48. 48. Motivations Évolution des systèmes d’information • Des réseaux d’entreprise assez larges • Nécessité de connecter certains de ces réseaux à Internet. La connectivité d’un réseau local à Internet, permet au monde externe d’atteindre et d’interagir avec les ressources de ce réseau. Difficulté de sécuriser chaque ressource à part: Cours Sécurité des réseaux Difficulté de sécuriser chaque ressource à part: • Nombre important de machines. • Différents types d’applications, services, systèmes d’exploitation, et protocoles utilisés, tous contenant des bugs. Besoin de minimiser les risques. Utilisation des Firewalls 48
  49. 49. • Dénommé garde barrière, coupe-feu, pare-feu • Représente une barrière entre un réseau privé et un réseau publique. • Fait passer uniquement le trafic permis par la politique de sécurité. • Hypothèse: Le Firewall est exempt de vulnérabilité. Lui et Firewall Cours Sécurité des réseaux • Hypothèse: Le Firewall est exempt de vulnérabilité. Lui et le système sur lequel il est installé sont de confiance. 49
  50. 50. Firewall Interconnecte des réseaux de différent niveaux de confiance. Définit un point de passage obligé pour le contrôle et le suivi de trafic. Implémente des mécanismes d’application de la politique de sécurité • Impose des restrictions sur le trafic entrant et sortant (ex: seul le trafic http est autorisé, seule l’adresse IP 1.2.3.4 est autorisée). Cours Sécurité des réseaux trafic http est autorisé, seule l’adresse IP 1.2.3.4 est autorisée). • Fournit une protection contre les attaques (ex: IP spoofing). Permet d’auditer et de contrôler l’accès. • Génération d’alertes pour les utilisations malveillantes. Fournit un périmètre de sécurité. Représente un endroit commode pour l’implémentation des fonctionnalités réseau (ex: translation d’adresses) 50
  51. 51. Réseau avec niveau de confiance X Réseau de non-confiance Firewall InternetRéseau local ALERT!! Firewall Cours Sécurité des réseaux Routeur DMZ Serveurs accessibles depuis le réseau Internet Réseau avec Niveau de confiance Y 51
  52. 52. Firewall Cours Sécurité des réseaux 52
  53. 53. Limitation d’un Firewall Ne protège pas contre les attaques qui ne le traversent pas: • Ex: un utilisateur interne utilise un modem pour se connecter à Internet. Ne protège pas contre les menaces internes. • Ex: un employé malhonnête attaque une machine interne. Ne protège pas contre le transfert de programmes et de fichiers Cours Sécurité des réseaux Ne protège pas contre le transfert de programmes et de fichiers malveillants (virus, backdoor, etc.). • Les systèmes et les applications supportés dans un périmètre de sécurité, sont nombreux et différents. • Difficulté de scanner tous les messages en direction de ces systèmes et applications. 53
  54. 54. Type de Firewalls Il existe 3 Types de Firewall : • Packet-Filtering router (stateless, stateful) • Application-Level Gateway. • Circuit-Level Gateway. Cours Sécurité des réseaux • 54
  55. 55. Packet-Filtering router Le plus simple des Firewalls. Pour chaque paquet IP rencontré, il décide de le faire passer (forward) ou de l’éliminer (deny), selon des règles de filtrages. Le filtrage se fait depuis et vers toutes les directions (ex: depuis et vers Internet). Règles de filtrage, basées sur l’analyse des champs dans l’entête IP et TCP: • Cours Sécurité des réseaux • Adresse IP source et destination. • Protocole (TCP, UDP, ICMP, etc). • Port (TCP ou UDP) source et destination. • TCP Flags (SYN, ACK, FIN, RST, PSH, etc) • Type de Message ICMP • Taille du paquet 55
  56. 56. Politique de sécurité par défaut Ce qui n’est pas explicitement permis est interdit. (default = Drop) • La plus prudente. • Initialement tous les services sont bloqués, puis ils sont ajoutés un par un selon les besoins. Ce qui n’est pas explicitement interdit est permis. (default = Accept) • Cours Sécurité des réseaux • Introduit une commodité dans l’utilisation des services réseau par les utilisateurs. • Fournit un niveau de sécurité réduit. • Un administrateur doit réagir pour chaque nouvelle menace de sécurité identifiée (un nouveau service devient vulnérable). 56
  57. 57. Exemple de règles (Packet-Filtering router) Action Protocole source port destination Port flag Deny IP 193.1.1.0 * 10.1.1.1 * Allow TCP 193.1.1.0 * * 80 Internet Packet-filtering router 193.1.1.0 Cours Sécurité des réseaux Règle1: Toute connexion depuis le réseau interne (193.1.1.0) vers la machine suspecte 10.1.1.1 est bloquée. Règle2: Seulement les connexions HTTP (TCP, port 80) depuis le réseaux interne (193.1.1.0), sont permises. Règle3: Seulement le trafic web en réponse à une connexion déjà initiée du réseau interne sera accepté de l’extérieur. Règle4: La politique de sécurité par défaut. Allow TCP 193.1.1.0 * * 80 Allow TCP * 80 193.1.1.0 * ACK Drop IP * * * * 57
  58. 58. Packet filtering Avantages • Simplicité du fonctionnement (filtrage statique). • Rapidité dans le traitement. • Transparence aux utilisateurs. Inconvénient • Ne protège pas contre les attaques qui exploitent des vulnérabilités sur les applications (ne bloque pas certaines commandes). • Cours Sécurité des réseaux applications (ne bloque pas certaines commandes). • Les fichiers logs générés ne contiennent pas d’informations assez pertinentes (seulement: @IP, ports). • Ne supporte pas des mécanismes avancés d’authentification des utilisateurs. • Une simple erreur dans la configuration des règles peut casser toute la sécurité. • Vulnérabilités aux attaques qui exploitent les insuffisances du protocole TCP/IP (ex: IP spoofing attacks) 58
  59. 59. Attaques sur Packet-filtering Firewalls IP address spoofing (Usurpation d’adresse IP) • L’intrus envoie un paquet de l’externe avec une fausse @IP (généralement égale à une @IP d’une machine interne), et ceci afin de réussir à passer le mécanisme de filtrage. • Solution: bloquer tout paquet venant de l’interface externe ayant une @IP source interne. Source routing attacks (routage à la source) • L’intrus spécifie une route qui va être empruntée par le paquet autre Cours Sécurité des réseaux • L’intrus spécifie une route qui va être empruntée par le paquet autre que celle appliquée par défaut. • Solution: bloquer les paquets source routed Tiny fragment attacks (fragmentation de paquets) • Un paquet IP est divisé en plusieurs fragments, où seul le premier fragment contient le numéro de port. Insuffisance d’informations pour filtrer ces paquets. • Solution: rejeter les paquets fragmentés ou les rassembler avant vérification. 59
  60. 60. Stateful Inspection Packet Filtering Firewalls Connexion TCP • Port serveur inférieur à 1024. • Port client compris entre 1024 et 16383. Les Ports <1024 sont affectés de façons permanente. • FTP: 20,21 – Telnet: 23 – SMTP: 25 – HTTP: 80 Tous les Ports >1023 doivent être disponibles aux clients pour faire leurs connexions. Cours Sécurité des réseaux faire leurs connexions. • Ceci créé une vulnérabilité qui peut être exploitée par les intrus. • Ceci présente une limitation pour les Firewalls de type stateless packet filtering. Solution: Utilisation de Firewalls de type Stateful Inspection packet filtering (filtrage dynamique). 60
  61. 61. Stateful Inspection Packet filetring Firewalls Il permet de filtrer les paquets en se basant sur la couche transport du modèle OSI (filtrage au niveau des ports de communication TCP-UDP). Il maintient une table d’état des connexions correspondantes aux ports logiques du niveau 4 du modèle OSI et surtout les ports dont le numéro est supérieur à1024 (les ports utilisés par les applications de l’utilisateur). Cours Sécurité des réseaux @IP Src Port Src @IP Dst Port dst État de la connexion 223.43.21.231 1990 193.2.1.3 80 Établie 223.42.21.230 1234 193.5.6.1 23 Établie 223.42.21.222 2562 193.4.2.1 80 Établie … … … … … 61
  62. 62. Stateful Inspection Packet filetring Firewalls Renforce les règles de filtrage en suivant l’état des connexions: • Si un paquet représente une nouvelle connexion, alors vérification des règles de configuration • Si un paquet fait partie d’une connexion existante (ex: TCP flag=ACK), alors vérification dans la table d’état des connexions, puis mise à jour de la table. Cours Sécurité des réseaux puis mise à jour de la table. • Le trafic entrant vers un port « x » supérieur à 1024, est autorisé seulement s’il est en direction d’une machine qui a déjà établie une connexion avec un port source inférieur à 1024 et un port destination égal à « x ». 62
  63. 63. 193.95.1.1 10.1.2.3 Client Telnet Serveur Telnet Le Firewall se souviendra De cette information Stateful Packet-Filtering Firewall Cours Sécurité des réseaux Cohérent avec le paquet précédent Pas de cohérence avec la connexion en cours 63
  64. 64. Règles par port/par adresses Règles manuelles complexes à gérer • Historique des règles (tel service n’a plus besoin de telle règle) • Redondance/conflit de certaines règles? Packet filetring Firewalls Cours Sécurité des réseaux • • Audit périodique nécessaire S’arrête au niveau 4 Encapsulation possible 64
  65. 65. Les Firewalls Proxy Filtres applicatifs Proxy : introduit un élément intermédiaire obligatoire entre le client et le serveur Chaque application passe alors par le firewall proxy et envoie sa requête non pas au serveur qu’elle désire atteindre mais au firewall qui la retransmettra. Inversement, les communications émises depuis Internet à destination des Cours Sécurité des réseaux Inversement, les communications émises depuis Internet à destination des systèmes internes ne les atteignent pas directement mais sont préalablement traitées par le firewall. Deux types: • Proxy applicatifs • Niveau 7 du modèle OSI • Proxy de type circuit • Niveau 5 du modèle OSI 65
  66. 66. Application-Level Gateway ApplicationsApplications PresentationsPresentations SessionsSessions TransportTransport ApplicationsApplications PresentationsPresentations SessionsSessions TransportTransport ApplicationsApplications PresentationsPresentations SessionsSessions TransportTransport TelnetTelnetTelnetTelnet HTTPHTTPHTTPHTTPFTPFTPFTPFTP Cours Sécurité des réseaux TransportTransport DataLinkDataLink PhysicalPhysical NetworkNetwork DataLinkDataLink PhysicalPhysical TransportTransport DataLinkDataLink PhysicalPhysical Application GatewayApplication Gateway TransportTransport NetworkNetwork NetworkNetwork 66
  67. 67. Application-Level Gateway Agit comme un relais applicatif. Besoin de proxy séparé pour chaque service (ex: SMTP, DNS). Deux modes de fonctionnement: • Le client doit être configuré pour une communication avec Proxy. • Mode Proxy transparent. Cours Sécurité des réseaux • A un accès complet au protocole • Un utilisateur demande un service (ex: Telnet, ftp) au Proxy. • Le Proxy valide la demande. • Le Proxy contacte l’application distante et transmet les segments TCP contenant les données applicatives entre les deux entités. 67
  68. 68. Application-Level Gateway La passerelle peut être configurée pour ne pas autoriser toutes les fonctionnalités d’une application. • FTP en download seulement • Suppression de javascripts • Suppression de certains mots sur des pages webs Cours Sécurité des réseaux • Suppression de certains mots sur des pages webs • … Possibilité d’auditer et de journaliser tout le trafic passant. 68
  69. 69. Application Level Gateway Inconvénients • Un processus par connexion. • Gestion des connexions dans les deux bouts. • Peux de Proxies sont disponibles • les services propres ne sont pas généralement supportés. Cours Sécurité des réseaux 69
  70. 70. Circuit Level Gateway Crée deux connexions: une entre lui et l’utilisateur interne, une autre entre lui et l’utilisateur externe. Impose une sécurité en déterminant quel type de connexion est permis. Une fois les deux connexions établi, il transmet les segments d’une connexion à une autre sans examiner leurs contenu. Cours Sécurité des réseaux Supporte plus de services que l’Application-Level Gateway • Moins de contrôle sur les données. Les clients doivent être au courant de l’utilisation d’un circuit-level proxy. Le protocole SOCKS est généralement utilisé pour ça. • La version 5 supporte TCP et UDP. 70
  71. 71. Les Firewalls Proxy Avantages: • Inspection plus fine des paquets • Cache possible • Attaques sur des comportements anormaux éliminées Inconvénients • Cours Sécurité des réseaux • Plus la granularité augmente, plus l’inspection est lente 71
  72. 72. Résumé Un firewall est un logiciel ou matériel qui • Analyse les trames qu’il reçoit et prend une décision en fonction des adresses de couche 2, 3 et 4 => filtrage sans état (Stateless Packet-Filtering router) • La décision peut être prise en fonction de l’état d’une Cours Sécurité des réseaux • La décision peut être prise en fonction de l’état d’une connexion et/ou des drapeaux TCP => filtrage dynamique (Stateful Packet-Filtering router) • La décision peut être prise en fonction du contenu de couche 7 => filtrage applicatif 72
  73. 73. Architecture Cours Sécurité des réseaux Architecture 73
  74. 74. Architecture 1: Routeur Filtrant Routages habituels d'un routeur + opérations de filtrage au niveau des paquets IP Des ACL donnent les règles de filtrage + Simple + Peu coûteux + Performant - Cours Sécurité des réseaux - Fonctionnalités limitées - Traces peu exploitables 74
  75. 75. Les informations à enregistrer : Architecture 2: Routeur Filtrant+Log Cours Sécurité des réseaux démarrage de session TCP(ou toute tentative) avec : • adresse (source, destination) • port (source, destination), 75
  76. 76. Architecture 3: Screened Host Firewall System (Single-homed bastion host) Cours Sécurité des réseaux 76
  77. 77. Bastion Host Une machine en interne joue le pare feu Un routeur filtrant n’autorise que le trafic de et vers ce bastion Sert comme plateforme pour Application-LevelGateway et Circuit-LevelGateway. • Peut être utilisée pour fournir des services accessibles de l’externe. Potentiellement exposée à des intrusions (vulnérabilités du Cours Sécurité des réseaux Potentiellement exposée à des intrusions (vulnérabilités du bastion + vulnérabilités du routeur filtrant). Doit être hautement sécurisée. • Seulement les services nécessaires sont installés (typiquement des Proxies). Supporte deux ou plusieurs connexions réseau • Réalise une séparation sécurisée entre les connexions réseaux. 77
  78. 78. Architecture 3: Screened Host Firewall System (Single-homed bastion host) Cours Sécurité des réseaux 78
  79. 79. Deux types de Firewalls sont utilisés • Packet-Filtering Router. • Bastion Host: Authentification et fonction Proxy. Trafic émanant de l’Internet: seulement celui en direction du Bastion Host est autorisé à passer le Packet-Filtering Router. Trafic sortant du réseau interne: seulement les paquets IP Architecture 3: Screened Host Firewall System (Single-homed bastion host) Cours Sécurité des réseaux Trafic sortant du réseau interne: seulement les paquets IP émanant du bastion Host sont autorisés à quitter le Packet- Filtering Router. Inconvénient: En cas où le Packet-Filtering router est totalement compromis, le trafic malveillant peut directement atteindre les machines du réseau interne. Solution: « Screened Host Firewall system (Dual-homes bastion host) » 79
  80. 80. Architecture 4: Screened Host Firewall system: Dual-homes bastion host) Double interface: Possède une adresse IP par interface • Tout est filtré: Cette architecture impose aussi aux utilisateurs internes de passer obligatoirement par la machine bastion • En coupure totale le pare feu est arrêté rien ne passe • Possibilité de cloisonner x réseaux internes si x+1 interfaces Cours Sécurité des réseaux 80
  81. 81. Architecture 5: Screened subnet Firewall system Cours Sécurité des réseaux 81
  82. 82. Plus sécurisée que les deux autres configurations Deux Packets-Filtering Routers sont utilisés: • Entre le Bastion Host et l’Internet. • Entre le Bastion Host et le réseau local. Crée un sous réseau protégé contenant le Bastion Host et les serveurs (offrant des services publiques). Architecture 5: Screened subnet Firewall system Cours Sécurité des réseaux (offrant des services publiques). L’Internet et le réseau interne ont les deux accès aux machines du sous-réseau crée, mais le trafic d’un coté à l’autre de ce sous-réseau est bloqué: • Création de trois niveaux de sécurité. • Le réseau interne est invisible de l’Internet. • Les machines du réseau interne ne peuvent communiquer qu’avec le Bastion Host. 82
  83. 83. Screened subnet Firewall System Actuellement, la majorité des Firewalls intègrent cette séparation (sous réseau protégé). • Interface DMZ (Demilitarized Zone) pour le sous réseau protégé • La possibilité d’offrir des services sans les placer de l’intérieur et de l’extérieur Cours Sécurité des réseaux l’intérieur et de l’extérieur • Possibilité de définir de multiples DMZ • Cloisonnement des zones • Cloisonnement de flux • Si une tombe, les autres fonctionnent 83
  84. 84. Screened subnet Firewall System Cours Sécurité des réseaux 84
  85. 85. Screened subnet Firewall System Cours Sécurité des réseaux 85
  86. 86. Screened subnet Firewall System Cours Sécurité des réseaux 86
  87. 87. Screened subnet Firewall System Cours Sécurité des réseaux 87
  88. 88. Il n’existe pas d’architecture idéale Il faut l’adapter en fonction • De la structure organisationnelle • De la structure géographique • Des partenariats • De la criticité des applications Architecture Cours Sécurité des réseaux • De la criticité des applications • Du budget / du personnel associé à la sécurité 88
  89. 89. Pare-feux libres Linux Netfilter/Iptables, pare-feu libre des noyaux Linux 2.4 et 2.6 Linux Ipchains, pare-feu libre du noyau Linux 2.2 Packet Filter ou PF, pare-feu libre de OpenBSD IPFilter ou IPF, pare-feu libre de BSD et Solaris 10 Cours Sécurité des réseaux IPFilter ou IPF, pare-feu libre de BSD et Solaris 10 Ipfirewall ou IPFW, pare-feu libre de FreeBSD 89
  90. 90. L'architecture du noyau pour le système de firewall s'appelle 'netfilter' Netfilter se base sur 3 listes de règles pour définir son comportement vis-à-vis d'un paquet • Si le paquet entrant est destiné à cette machine, le paquet passe dans la chaîne INPUT. iptables Cours Sécurité des réseaux • Si le forwarding est autorisé et que le paquet est destiné à un autre réseau, le paquet va directement à la chaîne FORWARD. • La chaîne OUTPUT concerne les paquets qui ont été créé par la machine locale. 90
  91. 91. Les règles de filtrage déterminent le devenir des paquets grâce à une police qui peut être : ACCEPT, REJECT, DENY, MASQ ou encore une redirection vers une chaîne. Les règles sont groupées en chaînes qui peuvent être celles de base : input, forward, output ou d’autres définies par l’utilisateur. Les paquets entrants dans le pare-feu arrivent automatiquement dans la chaîne input. Ceux qui sont émis par le pare-feu, passent dans la chaîne output. Et ceux qui sont retransmis passent par la chaîne iptables Cours Sécurité des réseaux chaîne output. Et ceux qui sont retransmis passent par la chaîne forward. Un paquet qui entre dans une chaîne teste toutes les règles de la chaîne jusqu’à en trouver une qui lui corresponde. Et il obéit à la police spécifiée par la règle trouvée. Si aucune règle s’appliquant au paquet n’a été trouvée, alors c’est la police par défaut de la chaîne qui est utilisée pour savoir que faire de ce paquet. Il est donc important, avant de créer les règles, de définir la police par défaut d’une chaîne. 91
  92. 92. Exemple: • Vu du Pare-feu, Le trafic • Internet => local est FORWARD • local => Internet est FORWARD • Une requête • "ping request" local => pare-feu est INPUT iptables Cours Sécurité des réseaux • "ping request" local => pare-feu est INPUT • "ping request" Internet => pare-feu est INPUT • "ping reply" pare-feu => Internet est OUTPUT • "ping reply" pare-feu => local est OUTPUT 92
  93. 93. Chacune de ces chaînes peut donner plusieurs réponses possibles pour chaque paquet: • Accepter ACCEPT • Rejeter REJECT (on signale le rejet à l'expéditeur) • Supprimer DROP (on l'efface et on ne répond rien) L'administrateur peut créer des chaînes personnalisées en plus des 3 iptables Cours Sécurité des réseaux chaînes par défaut qui lui permettent d'organiser ses règles de filtrage de manière plus propre et optimisée. Les règles reposent sur des critères de sélection très variés : • Machine source; Port source • Machine destination; Port destination • Interface; Protocole; Drapeaux spéciaux du paquet TCP • Types et codes spéciaux du paquet ICMP 93
  94. 94. Chaînes • Création (N) • vidage (F) • suppression (X) • affectation d’une police (P) • affichage (L) Règles iptables Cours Sécurité des réseaux Règles • ajout en fin de liste (A), insertion ordonnée (I) • suppression (D) • remplacement (R) • test (C) 94
  95. 95. # iptables -L -v • -L : liste les règles • -v demande le mode 'verbeux‘ iptables: Protection de la machine locale Cours Sécurité des réseaux policy : comportement par défaut Dans cet exemple netfilter accepte donc tous les paquets, le firewall est en mode passif. 95
  96. 96. Par défaut iptables utilise la table ‘filter' si on ne lui spécifie par une autre table via l'option '-t nom_de_table'). Exemple1: Interdire les connexions sur le port 22 (ssh), # iptables -A INPUT -p tcp --dport 22 -j DROP • -A INPUT => ajoute en bas de la liste des règles de la chaîne INPUT • -p tcp => pour les paquets qui utilisent les protocole TCP • --dport => pour les paquets qui sont à destination du port 22 iptables Cours Sécurité des réseaux • --dport => pour les paquets qui sont à destination du port 22 • -j DROP => l'action : DROP les paquets (on efface les paquets), # iptables -L -v 96
  97. 97. Exemple1: autoriser uniquement votre voisin à se connecter sur votre machine en ssh insérer une règle pour votre voisin avant la règle qui DROP les paquets # iptables -I INPUT 1 -p tcp --dport 22 -s adresse_ip_du_voisin -j ACCEPT iptables Cours Sécurité des réseaux adresse_ip_du_voisin -j ACCEPT • le '-I INPUT 1' signifie insère en première position dans la liste • -s permet de choisir la source des paquets, 97
  98. 98. Il existe de très nombreuses options pour construire les règles de filtrage, parmi les plus utilisés on trouve : -s : sélection de l'adresse IP source (ou réseau source) d'où vient le paquet -d : sélection de l'adresse IP de destination (ou réseau de destination) où va le paquet --dport : port destination (le port sur lequel le client essaye de se connecter) vers quel port a été émis le paquet iptables Cours Sécurité des réseaux vers quel port a été émis le paquet --sport : port source (le port utilisé par le client pour créer la connexion) depuis quel port a été émis le paquet -p suivi d'un nom de protocole -i : spécifie le nom de l'interface physique à travers laquelle les paquets entrent -o : spécifie le nom de l'interface physique à travers laquelle les paquets sortent 98
  99. 99. # iptables -D INPUT 1 • efface la première règle de la chaîne INPUT. # iptables -L -v --line-numbers • voir les numéros de chaque règle lorsqu'on liste les règles # iptables -A chaine -m multiport -p tcp --dports port1,port2,port3 -j iptables Cours Sécurité des réseaux port1,port2,port3 -j A ajout, D supprime, I insère, F efface toutes les règles mais pas la stratégie par défaut, L liste 99
  100. 100. Les commandes de iptables associées à la gestion des chaînes sont les suivantes : -N : création d'une nouvelle chaîne (iptables -N INTERNET) -X : suppression d'une chaîne vide (iptables -X INTERNET) -P : Mise en place de la règle par défaut pour une chaîne existante (iptables -P INPUT DROP). Seules les chaînes INPUT, iptables Cours Sécurité des réseaux (iptables -P INPUT DROP). Seules les chaînes INPUT, FORWARD et OUTPUT peuvent avoir une règle par défaut et les seules cibles disponibles sont ACCEPT et DROP. -L : lister les règles d'une chaîne (iptables -L INTERNET) -F : effacer les règles d'une chaîne (iptables -F INTERNET) 100
  101. 101. Exemple Création d'une chaîne spécifique # iptables -N ssh On indique à la chaîne INPUT que tout ce qui concerne ssh doit être transmis à cette nouvelle chaîne # iptables -A INPUT -p tcp --dport 22 -j ssh Cours Sécurité des réseaux On rajoute nos règles de filtrages dans la chaîne ssh • on accepte que le voisin se connecte # iptables -A ssh -s ip_machine_du_voisin -j ACCEPT • on interdit au reste du monde de se connecter # iptables -A ssh -j DROP 101
  102. 102. iptables Cours Sécurité des réseaux 102
  103. 103. iptables Cours Sécurité des réseaux 103
  104. 104. Interdire accès depuis l’extérieur (eth1) Autoriser accès ssh (administratif) Autoriser voie de retour Règles • iptables -A INPUT -i eth1 -j DROP Exemple Cours Sécurité des réseaux • iptables -A INPUT -i eth1 -j DROP • iptables -I INPUT 1 -p tcp --dport 22 -j ACCEPT • iptables -I INPUT 2 -m state --state ESTABLISHED -j ACCEPT 104
  105. 105. Suivi de connexion Le module 'state' définit plusieurs états possibles pour les flux réseaux : - NEW : c'est une nouvelle connexion - ESTABLISHED : on connaît déjà cette connexion (elle est passée par l'état NEW il y a peu de temps) - RELATED : cela permet d'identifier une connexion qui serait liée ou Cours Sécurité des réseaux - RELATED : cela permet d'identifier une connexion qui serait liée ou dépendant d'une connexion déjà ESTABLISHED. - INVALID : tout ce qui n'est pas correctement identifiable 105
  106. 106. Exemple: FTP le protocole FTP utilise 2 connexions TCP pour communiquer. • Une sert à envoyer les commandes du client vers le serveur et • Une sert à envoyer les données du serveur vers le client. Dans son fonctionnement standard, un client FTP se connecte sur le port 21 du serveur FTP. Le client indique ensuite au serveur sur quel port il (le client) recevra les données. Le serveur FTP va alors établir une connexion Cours Sécurité des réseaux client) recevra les données. Le serveur FTP va alors établir une connexion depuis son port 20 vers le port (>1023) indiqué par le client : Client FTP (port source aléatoire 'a') -----> Serveur FTP (port 21) Client FTP (port 'a') ----> Serveur FTP (port 21) (le client indique au serveur FTP sur quel port il devra envoyer les données, par ex 3084) Serveur FTP (port 20) -----> Client FTP (port 3084) (le serveur transfert des données vers le client) 106
  107. 107. Si le client est protégé par un firewall netfilter, l'administrateur devrait donc autoriser toutes les connexions venant de l'extérieur vers tous les ports supérieurs à 1023 du client. • Pas d’intérêt pour le firewall conntrack va permettre de détecter qu'une connexion FTP est établie (au moment où le client se connecte sur le port 21 du serveur) et ouvrir de manière dynamique le filtrage pour cette Exemple: FTP Cours Sécurité des réseaux serveur) et ouvrir de manière dynamique le filtrage pour cette connexion spécifique vers le port que le client aura choisi. On commence par tout interdire : # iptables -A INPUT -j DROP # iptables -I INPUT 1 -p tcp --sport 20 -m state --state ESTABLISHED -j ACCEPT 107
  108. 108. Exemples: Opérations la table filter Créer les règles suivantes : • interdire tout paquet entrant • effacer la règle iptables -A INPUT -j DROP iptables -D INPUT 1 • Paramètre protocole: interdire le protocole icmp iptables -A INPUT -p icmp -j DROP Cours Sécurité des réseaux iptables -A INPUT -p icmp -j DROP • paramètre source: interdire le protocole icmp provenant de localhost iptables -A INPUT -p icmp -s localhost -j DROP • chaîne OUTPUT paramètre destination: interdire tout paquet à destination de localhost iptables -A OUTPUT -d localhost -j DROP 108
  109. 109. • paramètre inversion: interdire un paquet s'il ne provient pas de localhost iptables -A INPUT -s ! localhost -j DROP • paramètre interface d'entrée: interdire tout paquet entrant par eth0 iptables -A INPUT -i eth0 -j DROP Exemples: Opérations la table filter Cours Sécurité des réseaux iptables -A INPUT -i eth0 -j DROP • interdire un paquet s'il provient de lo iptables -A INPUT -i lo -j DROP • paramètre interface de sortie: interdire tout paquet sortant par eth0 iptables -A OUTPUT -o eth0 -j DROP 109
  110. 110. • paramètre destination port: interdire tout paquet à destination du port ftp iptables -A INPUT -p tcp --dport 21 -j DROP • paramètre source port: interdire tout paquet sortant par eth0 dont le numéro de port source est inférieur à 1024 iptables -A OUTPUT -o eth0 -p tcp --sport :1023 -j DROP iptables -A OUTPUT -o eth0 -p udp --sport :1023 -j DROP Exemples: Opérations la table filter Cours Sécurité des réseaux iptables -A OUTPUT -o eth0 -p udp --sport :1023 -j DROP • paramètre flag TCP: interdire toute tentative d'initialisation de connexion TCP provenant de eth0 iptables -A INPUT -i eth0 -p tcp --syn --dport :1023 -j DROP 110
  111. 111. • paramètre flag icmp: interdire tout paquet entrant correspondant à un ping iptables -A INPUT -p icmp --icmp-type echo-request -j DROP • interdire toute réponse à un ping iptables -A OUTPUT -p icmp --icmp-type echo-reply -j DROP • extension mac: interdire tout paquet entrant par Exemples: Opérations la table filter Cours Sécurité des réseaux • extension mac: interdire tout paquet entrant par eth0 dont l'adresse mac n'est pas celle du voisin iptables -A INPUT -i eth0 -m mac --mac-source ! 00:50:FC:23:2D:D7 -j DROP 111
  112. 112. Exercice Cours Sécurité des réseaux Créer les règles suivantes : 1. Forwarder tout paquet venant de vmnet1 vers vmnet2 2. Forwarder tout paquet relatif à une connexion déjà établi ou en rapport avec une connexion déjà établi de vmnet2 vers vmnet1 3. Autoriser tout paquet input (vmnet2) relative à une connexion déjà établi ou en rapport avec une connexion déjà établi 4. Autoriser tout input au Firewall du réseau interne 112
  113. 113. Solution 1. iptables -A FORWARD -i vmnet1 -o vmnet2 -j ACCEPT 2. iptables -A FORWARD -i vmnet2 -o vmnet1 -m state -- state ESTABLISHED,RELATED -j ACCEPT 3. iptables -A INPUT -i vmnet2 -m state --state ESTABLISHED,RELATED -j ACCEPT Cours Sécurité des réseaux ESTABLISHED,RELATED -j ACCEPT 4. iptables -A INPUT -i vmnet1 -s 0/0 -d 0/0 -j ACCEPT 113
  114. 114. Chapitre 3: Système de détection d’intrusion Cours Sécurité des réseaux d’intrusion 114
  115. 115. Motivations • Limites du firewall : • Protection limitée • Ne protège pas contre les attaques internes • Les techniques et les outils d’intrusions ne cessent de se sophistiquer. • Nécessité d’automatiser le processus de détection Cours Sécurité des réseaux • Nécessité d’automatiser le processus de détection d’intrusions. • Nécessité de collecter les traces d’intrusions pour servir comme preuve. • Nécessité de détecter les attaques ayant réussi à surpasser les mécanismes de sécurité déployés. 115
  116. 116. Motivations Cours Sécurité des réseaux Prévention Détection Réaction Hypothèse sur la détection l’activité des utilisateurs malveillants est observable. Les activités légitimes et malveillantes possèdent des signes différents 116
  117. 117. Définitions Détection d’Intrusions: L’identification de • Ceux qui utilisant le système sans autorisation (ex: intrus). • Ceux qui ont un accès légitime au système mais sont en train d’abuser de leurs privilèges. Cours Sécurité des réseaux mais sont en train d’abuser de leurs privilèges. • Les tentatives d’utilisation aux systèmes sans autorisation et les tentatives d’abus de privilèges. 117
  118. 118. Définitions Système de Détection d’Intrusions: un système informatique permettant de • Analyse en temps réel ou différé des évènements en provenance des différents systèmes. • Détection des signes de violation de la politique Cours Sécurité des réseaux • Détection des signes de violation de la politique de sécurité. • Alerte en cas d’occurrence d’une attaque • Collecte des traces d’intrusions pour servir comme preuve. • Réaction aux attaques. 118
  119. 119. Caractéristiques d’un IDS Architecture • Centralisée • Distribuée Source de données • Réseau • Système Méthode de détection Comportement après détection d’intrusions • Passif • actif Mécanisme de collection • Surveillance directe • Surveillance indirecte Cours Sécurité des réseaux Méthode de détection d’intrusions • Approche par scénario • Approche comportementale Senseurs • Internes • Externes • Surveillance indirecte 119
  120. 120. Composantes d’un IDS Prétraitement (Preprocessing) Données capturées /évènements Activité L’activité système estL’activité système est observableobservable Cours Sécurité des réseaux Activité Modèle de détection Composante de détection Alarmes Modèle de décision Composante de Décision Action 120
  121. 121. Erreurs commises par un IDS False Positives • L’IDS considère une activité légitime comme malveillante (erreur d’interprétation) False Negatives Cours Sécurité des réseaux False Negatives • L’IDS considère une activité malveillante comme légitime Les erreurs False Negatives sont plus graves que les erreurs False Positives 121
  122. 122. surveillance directe/indirecte Fiabilité: Les données surveillées indirectement peuvent être attaquées avant leurs utilisation Complétude: Une source indirecte (ex: log) peut ne pas contenir toutes les données nécessaires Volume: Dans une surveillance indirecte, les données sont extraites sans connaissance du besoin de l’IDS Cours Sécurité des réseaux sont extraites sans connaissance du besoin de l’IDS grand volume de données inutiles. Performance: L’analyse des sources indirectes engendre des traitements lourds (filtrage, transformation,...) dégradation de performances. Temps: La surveillance directe permet une détection plus rapide et donc une réaction à temps. 122
  123. 123. Source de données Réseau: Network-based IDS Cours Sécurité des réseaux Système: Host-based IDS 123
  124. 124. Network-based IDS Utilise le trafic réseau comme source de données en configurant la carte réseau en mode promiscious. Détecte les attaques véhiculées à travers le réseau, en analysant le contenu des paquets. La majorité de ces IDS utilisent l’approche par scénario. Vérifie l’existence d’une signature d’attaques dans le contenu des paquets: Cours Sécurité des réseaux des paquets: • Une chaîne de caractère (ex: "cat"++">/.rhosts" ou “cgi- bin/phf?”) • Une tentative de connexions sur des ports utilisés pour véhiculer les attaques (ex: TCP 1234). • Un contenu malveillant de l’entête TCP (ex: scan de ports par envoi de paquets avec des flags SYS et FIN). Exemples: Snort, Bro, Cisco IDS 124
  125. 125. Avantages • Surveille toutes les machines d’un seul réseau • Ne dépend pas du contenu des machines (versions OS, applications, etc). • Insensible aux attaques sur des machines du réseau. • Peut détecter des attaques réseau: scan, dénis de service, etc. Inconvénient Network-based IDS Cours Sécurité des réseaux Inconvénient • L’utilisation des switch pose des problèmes. • Surveiller un trafic > 100 MB/S est actuellement un défi. • Ne permet pas de savoir si l’attaque a réussi ou non. • Ne réagit pas efficacement pour stopper les attaques. • Ne peut pas surveiller un trafic crypté. 125
  126. 126. Host-based IDS(H-IDS) Une intrusion au niveau machine peut être définie comme suit: • Modification, effacement, accès illicite aux données. • Modification système. • Exécution de programmes. • Remonté de privilège (devenir root). • Installation de programmes (i.e. Trojan). H-IDS: Application installée sur le système surveillé. Cours Sécurité des réseaux H-IDS: Application installée sur le système surveillé. Surveille les attaques au niveau des OSs et des applications. • Analyse les fichiers logs, les fichiers d’audit système, les messages d’erreurs, la base de registres, etc. • Vérifie la séquence d’actions utilisateur, la séquence d’appels système réalisée par les applications, etc. • Calcule l’intégrité des fichiers sensibles (ex: /etc/passwd) Ex: RealSecure, Tripwire, BlackICE, Swatch 126
  127. 127. Avantages • Indépendance à la bande passante et au cryptage. • Justesse de détection: détecte si l’attaque a réussi ou non • Adapté aux applications. • Comprend le contexte et peut être capable de stopper l’attaque. Inconvénients Host-based IDS(H-IDS) Cours Sécurité des réseaux Inconvénients • Ne garantie pas l’intégrité des alertes générées si elles résident sur un système compromis • Peut causer la dégradation des performances des systèmes surveillés. • Forte dépendance aux OSs et aux applications. • Nécessite un agent par machine. 127
  128. 128. Analyse Approche par scénario: Misuse Detection, signature-based detection Cours Sécurité des réseaux Approche comportementale: Anomaly Detection 128
  129. 129. Approche par Scénario Utilise des signatures d’attaques • Connaissance à l’avance de ce que l’intrus peut faire et comment. • nécessité d’un modèle de l’attaque: Séquences d’appels système, motif (pattern) de trafic réseau, etc. • Signature: représente un comportement ou un scénario d’un abus. Compare ce qui est capté à ces signatures d’intrusions moyennant des règles: • Cours Sécurité des réseaux moyennant des règles: • Tout comportement qui vérifie la signature est classé abusif (misuse) • Example: buffer overflow • Une chaîne trop longue est passée en argument à une fonction • Example: SYN flooding (deni de service) • Emission d’un grand nombre de paquets SYN sans envoyer par la suite les paquets ACKs correspondants. • Exemple phf attack • Existence de la chaîne de caractère «get /cgi-bin/phf?» dans un paquet 129
  130. 130. Approche par Scénario Fonctionnement semblable aux systèmes antivirus. Taux réduit de false positives puisque la vérification se fait contre des attaques connus à l’avance. Cours Sécurité des réseaux connus à l’avance. Taux élevé de false negatives • Ne détecte par les attaques inconnues. • Beaucoup d’attaques permettent d’échapper à ce type d’IDS. 130
  131. 131. Approche comportementale Idée de base: “anormal” = “soupçonneux” Modélisation des comportements des utilisateurs/Applications afin de déterminer des profils types • Un profil est un ensemble de métriques sous forme de valeurs seuil, et d’intervalles de valeurs. Toute déviation par rapport au profil type est considérée comme intrusive. Cours Sécurité des réseaux comme intrusive. • Ex: Un employé d’une banque effectue régulièrement des requêtes au serveur pour effectuer des opérations de débit/crédit (il s’agit donc d’un échange transactionnel avec des trames courtes). Si la nature des flux détectés concerne des trames de longueur proche de MTU alors génération d’une alerte. 131
  132. 132. Approche comportementale Nécessite une définition du comportement normal. Détection des nouvelles attaques et leurs variations. Apprentissage automatique. Taux élevé de false positives Cours Sécurité des réseaux Taux élevé de false positives • Un comportement non habituel n’est pas nécessairement malveillant Ne détecte pas les attaques qui se manifestent lentement. Calcul intensif pour la modélisation des comportements. 132
  133. 133. Misuse vs. Anomaly Modification d’un fichier mots de passes Misuse Quatre échecs dans l’ouverture de session Anomaly Échec de connexion à 50 ports séquentiels Anomaly Un paquet UDP en direction du port 1434 Misuse Un url contenant la chaîne de caractères Misuse Cours Sécurité des réseaux Un url contenant la chaîne de caractères /cmd.exe? Misuse Le fichier log contient un enregistrement indiquant une tentative de log en tant que root Misuse Un utilisateur qui d’habitude ouvre une session à 8h00 AM, se connecte à 4h30 Anomaly 133
  134. 134. Exemple de règle SNORT Snort: IDS réseau utilisant l’approche par scénario Génération d’une alerte si un paquet émanant du Alert tcp $EXTERNAL_NET any -> 192.168.1.0/24 143 (content: “|90CB C0FF FFFF|/bin/sh”; msg: “IMAP buffer overflow!”) Cours Sécurité des réseaux réseau externe vers une machine du réseau interne 192.168.1.0/24 en destination du port 143, contient la chaine “|90CB C0FF FFFF|/bin/sh” (signature d’un buffer overflow sur un serveur IMAP). Résultat de détection (alerte générée) #0-(3-1) [snort] IMAP buffer overflow ! 2005-10-10 21:14:00 65.106.21.153:1541 192.168.1.10:143 TC P 134
  135. 135. Réponse IDS Passive: simplement signaler/enregistrer l’attaque. Cours Sécurité des réseaux Active: effet sur l’attaque en progression 135
  136. 136. Réponse active Actions contre l’intrus: assistés par l’administrateur ou automatiques • Filtrage au niveau Firewall de l’adresse source de l’intrus. • Fin de la session Changement de l’état interne de l’IDS. • Cours Sécurité des réseaux • Changement des règles de détection (basculement vers une politique de sécurité plus restrictive). Collecte d’informations additionnelle • Redirection de l’intrus vers des Honeypots (pots de miels permettant de leurrer les intrus). • Sauvegarde des keystrokes (touches clavier tapées) 136
  137. 137. Réponse active Quelque exemples empiriques (Cisco IDS) Kill the sessionTCP Reset Tuer la session Cours Sécurité des réseaux Tuer la session Deny Block attacker Deny Blocking Bloquer l’@ IP de l’intrus 137
  138. 138. Réponse active Quelque exemples empiriques (Cisco IDS) Session Log Session Log Cours Sécurité des réseaux Capture automatique du trafic de l’intrus 138
  139. 139. Réponse passive Affichage d’une alerte Alerte sonore Envoi d’un message d’alerte par pager. Cours Sécurité des réseaux Envoi d’un message d’alerte par pager. Envoi d’un message d’alerte par SMS. Envoi d’un message d’alerte par email. 139
  140. 140. Où placer l’IDS Sonde SondeSonde Cours Sécurité des réseaux Sonde sur le réseau externe: • Visualise tout le trafic (y compris celui bloqué par le Firewall). • Permet de donner une idée sur la nature des attaques et des intrus. • Beaucoup de faux signaux (bruit). Sonde sur le réseau interne: • Analyse le trafic ayant réussi à surpasser le Firewall. • Analyse les attaques internes. Sonde sur la DMZ: • Analyse les attaques ayant réussi à atteindre les serveurs publiques.. 140
  141. 141. Cours Sécurité des réseaux INFRASTRUCTURE À CLÉ PUBLIQUE 141
  142. 142. Introduction Cryptographie symétrique Pas d'intégrité Pas d'identification de l’émetteur Cryptographie asymétrique et gestion des clés Problèmes Distribution des clés Cours Sécurité des réseaux Distribution des clés • Obtenir la clé publique d’une autre entité • Distribuer sa propre clé publique Révocation Révoquer une clé publiée Déterminer si une clé publiée est valide ou non 142
  143. 143. Introduction Cours Sécurité des réseaux 143
  144. 144. Introduction Une autorité de certification (CA) résout ce problème: • Alice envoie sa clé publique au CA • Alice prouve qu’elle détient la clé privée correspondant à la clé publique envoyée • Le CA vérifie l’identité d’Alice Cours Sécurité des réseaux • Le CA vérifie l’identité d’Alice • Le CA signe l’ensemble: clé publique et identité d’Alice avec sa clé privée, le document signé est appelé certificat Quand Bob reçoit le certificat d’Alice, il est sûr que la clé qui y est certifiée est celle d’Alice 144
  145. 145. Certificat X.509 Un certificat électronique (aussi appelé certificat numérique ou certificat de clé publique) peut être vu comme une carte d'identité numérique. Il est utilisé principalement pour identifier et authentifier une personne physique ou morale, mais aussi pour chiffrer des échanges. Cours Sécurité des réseaux Il est signé par un tiers de confiance (Autorité de certification) qui atteste du lien entre l'identité physique et l'entité numérique. Le standard le plus utilisé pour la création des certificats numériques est le X.509. 145
  146. 146. Certificat X.509 Un certificat est le lien entre : - Une identité - Une clé publique - Une période de validité - Un usage (certificat de signature ou certificat de chiffrement) Cours Sécurité des réseaux chiffrement) 146
  147. 147. Format X.509 Cours Sécurité des réseaux 147
  148. 148. Format X.509 Cours Sécurité des réseaux 148
  149. 149. Modes de création Il existe deux façons distinctes de créer des certificats électroniques : le mode centralisé et le mode décentralisé. le mode décentralisé est le mode le plus courant : il consiste à faire créer, par l'utilisateur (ou, plus exactement par son logiciel ou carte à puce) le biclé cryptographique et de joindre la partie publique de la Cours Sécurité des réseaux cryptographique et de joindre la partie publique de la clef dans la CSR. L'Infrastructure n'a donc jamais connaissance de la clé privée de l'utilisateur, qui reste confinée sur son poste de travail ou dans sa carte à puce. 149
  150. 150. Modes de création le mode centralisé consiste en la création du biclé par l'AC : Elle peut ainsi avoir de bonnes garanties sur la qualité de la clé et peut en détenir une copie protégée. En revanche, il faut transmettre à l'utilisateur certes son certificat (qui ne contient que des données publiques) mais aussi sa clé privée ! L'ensemble de Cours Sécurité des réseaux publiques) mais aussi sa clé privée ! L'ensemble de ces deux données est un fichier créé sous le format PKCS#12. Son acheminement vers l'utilisateur doit être entrepris avec beaucoup de précaution et de sécurité, car toute personne mettant la main sur un fichier PKCS#12 peut détenir la clé de l'utilisateur. 150
  151. 151. Modes de création Le mode décentralisé est préconisé pour les certificats d'authentification et de signature (parce que les conditions d'exercice d'une signature juridiquement valide prévoit que le signataire doit être le seul possesseur de la clé : en mode décentralisé, l'ICP n'a jamais accès à la clé privée). Cours Sécurité des réseaux Le mode centralisé est préconisé pour les certificats de chiffrement, car, lorsqu'un utilisateur a perdu sa clé (par exemple, sa carte est perdue ou dysfonctionne), un opérateur peut, au terme d'une procédure de recouvrement, récupérer la clé de chiffrement et la lui remettre. 151
  152. 152. PKI Une infrastructure à clés publiques (ICP) ou infrastructure de gestion de clés (IGC) ou encore Public Key Infrastructure (PKI), est un ensemble de composants physiques (des ordinateurs, des équipements cryptographiques ou encore des cartes à puces), de procédures humaines (vérifications, validation) et de logiciels (système et application) en vue de gérer le cycle de vie des certificats numériques. Une infrastructure à clés publiques délivre un ensemble de Cours Sécurité des réseaux Une infrastructure à clés publiques délivre un ensemble de services pour le compte de ses utilisateurs: enregistrement des utilisateurs (ou équipement informatique) ; génération de certificats ; renouvellement de certificats ; révocation de certificats ; publication de certificats ; publication des listes de révocation (comprenant la liste des certificats révoqués) ; identification et authentification des utilisateurs (administrateurs ou utilisateurs qui accèdent à l'ICP) ; archivage et recouvrement des certificats 152
  153. 153. Demande de certificat Cours Sécurité des réseaux 153
  154. 154. Composants de PKI L'IETF distingue 4 catégories d'ICP : l'autorité de certification (AC ou CA) qui signe les demandes de certificat (CSR : Certificate Signing Request) et les listes de révocation (CRL : Certificate Revocation List). Cette autorité est la plus critique ; l'autorité d'enregistrement (AE ou RA) qui crée les certificats, et effectue les vérifications d'usage sur l'identité de l'utilisateur final (les certificats numériques sont nominatifs et uniques pour Cours Sécurité des réseaux final (les certificats numériques sont nominatifs et uniques pour l'ensemble de l'ICP) ; l'autorité de dépôt (Repository) qui stocke les certificats numériques ainsi que les listes de révocation (CRL) ; l'entité finale (EE : End Entity) qui utilise le certificat 154
  155. 155. Cours Sécurité des réseaux 155
  156. 156. Cours Sécurité des réseaux 156
  157. 157. Cours Sécurité des réseaux 157
  158. 158. Cours Sécurité des réseaux 158
  159. 159. Cours Sécurité des réseaux 159
  160. 160. Cours Sécurité des réseaux 160
  161. 161. Cours Sécurité des réseaux 161
  162. 162. Cours Sécurité des réseaux 162
  163. 163. Cours Sécurité des réseaux 163
  164. 164. Cours Sécurité des réseaux 164
  165. 165. Cours Sécurité des réseaux 165
  166. 166. Cours Sécurité des réseaux 166
  167. 167. Cours Sécurité des réseaux 167

×