Professional Documents
Culture Documents
Les systèmes d'information sont aujourd'hui de plus en plus ouverts sur Internet.
Cette ouverture, a priori bénéfique, pose néanmoins un problème majeur : il en
découle un nombre croissant d'attaques de tous genres. La mise en place d’une
politique de sécurité autour de ces systèmes est donc primordiale.
Ce que nous appelons attaque ou intrusion englobe toute pénétration des
systèmes d'information par des personnes externes malveillantes mais aussi les
tentatives des utilisateurs locaux d'accéder à de plus hauts privilèges que ceux
qui leur sont attribués, ou tentatives des administrateurs d'abuser de leurs
privilèges.
Notre exposé à pour but de présenter succinctement deux des principaux moyens
de lutte contre les dites intrusions, à savoir le Firewall et la DMZ
Mais avant cela, il est important, pour comprendre le rôle précis de ces systèmes,
de faire un rappel des principales attaques existantes à l’heure actuelle.
1
1ère Partie : Généralité sur la sécurité des
systèmes informatiques
I. Le principe
1. Définition
La sécurité informatique est l’ensemble des moyens mis en œuvre pour lutter
contre la vulnérabilité accidentelle ou intentionnelle du système.
2. Eléments caractéristiques
a. Disponibilité
Elle demande que l’information ne soit disponible que pour les utilisateurs
autorisés.
b. Confidentialité
Elle demande que l’information ne puisse être consultée que par les
utilisateurs autorisés.
c. Intégrité
Elle demande que l’information ne puisse pas être modifiée sauf par les
utilisateurs autorisés.
d. Authentification
C’est la vérification de l’information liée à une donnée.
2
Des outils comme firewalk, hping ou SNMP Walk permettent quant à eux de
découvrir la nature d’un réseau.
Penetrate :
Utilisation des informations récoltées pour pénétrer un réseau. Des techniques
comme le brute force ou les attaques par dictionnaires peuvent être utilisées pour
outrepasser les protections par mot de passe. Une autre alternative pour
s’infiltrer dans un système est d’utiliser des failles applicatives.
Persist :
Création d’un compte avec des droits de super utilisateur pour pouvoir se
ré infiltré ultérieurement. Une autre technique consiste à installer une application
de contrôle à distance capable de résister à un reboot (ex : un cheval de Troie).
Propagate :
Cette étape consiste à observer ce qui est accessible et disponible sur le réseau
local.
Paralyze :
Cette étape peut consister en plusieurs actions. Le pirate peut utiliser le serveur
pour mener une attaque sur une autre machine, détruire des données ou encore
endommager le système d’exploitation dans le but de planter le serveur.
Après ces cinq étapes, le pirate peut éventuellement tenter d’effacer ses traces,
bien que cela ne soit rarement utile.
Les scans de ports ne sont pas des attaques à proprement parler. Le but des scans
est de déterminer quels sont les ports ouverts, et donc en déduire les services qui
sont exécutés sur la machine cible (ex : port 80/TCP pour un service HTTP). Par
conséquent, la plupart des attaques sont précédées par un scan de ports lors de la
phase Probe qui est comme nous l’avons vu, la première phase des 5P’s dans le
déroulement d’une attaque.
b. IP Spoofing
3
But : usurper l’adresse IP d’une autre machine.
Finalité : se faire passer pour une autre machine en truquant les paquets IP. Cette
technique peut être utile dans le cas d’authentifications basées sur une adresse IP
(services tels que rlogin ou ssh par exemple).
c. ARP Spoofing (ou ARP Redirect)
d. DNS Spoofing
But : fournir de fausses réponses aux requêtes DNS, c'est-à-dire indiquer une
fausse adresse IP pour un nom de domaine.
Finalité : rediriger, à leur insu, des Internautes vers des sites pirates. Grâce à
cette fausse redirection, l’utilisateur peut envoyer ses identifiants en toute
confiance par exemple.
Remarque : Une attaque que nous allons voir ci-après, le Déni de Service, peut
aider à ralentir le trafic du serveur DNS et ainsi permettre de répondre avant lui.
4
De plus, des erreurs peuvent apparaître lors de la configuration d’un logiciel.
Une mauvaise configuration d’un serveur peut entraîner l’accès à des fichiers
importants, ou mettant en jeu l’intégrité du système d’exploitation. C’est
pourquoi il est important de bien lire les documentations fournies par les
développeurs afin de ne pas créer de failles.
b. Les bugs
c. Les scripts
Principalement web (ex : Perl, PHP, ASP), ils s’exécutent sur un serveur et
renvoie un résultat au client. Cependant, lorsqu’ils sont dynamiques (i.e. qu’ils
utilisent des entrées saisies par un utilisateur), des failles peuvent apparaître si
les entrées ne sont pas correctement contrôlées.
Moins connue, mais tout aussi efficace, cette attaque permet de détourner le
trafic entre deux stations. Imaginons un client C communiquant avec un serveur
S. Un pirate peut détourner le trafic du client en faisant passer les requêtes de C
vers S par sa machine P, puis transmettre les requêtes de P vers S. Et
inversement pour les réponses de S vers C.
Totalement transparente pour le client, la machine P joue le rôle de proxy. Il
accédera ainsi à toutes les communications et pourra en obtenir les informations
sans que l’utilisateur s’en rende compte.
4. Le Déni de service
Evoqué précédemment, le déni de service est une attaque visant à rendre
indisponible un service. Ceci peut s’effectuer de plusieurs manières : par le biais
d’une surcharge réseau, rendant ainsi la machine totalement injoignable ; ou bien
de manière applicative en crashant l’application à distance.
Voici quelques attaques réseaux connues permettant de rendre indisponible un
service :
a. SYN Flooding
5
Exploite la connexion en 3 phases de TCP (Three Way Handshake :
SYN / SYN-ACK / ACK). Le principe est de laisser un grand nombre de
connexions TCP en attente. Le pirate envoie de nombreuses demandes de
connexion (SYN), reçoit les SYN-ACK mais ne répond jamais avec ACK. Les
connexions en cours occupent des ressources mémoire, ce qui va entraîner une
saturation et l’effondrement du système.
b. UDP Flooding
Le trafic UDP est prioritaire sur TCP. Le but est donc d’envoyer un grand
nombre de paquets UDP, ce qui va occuper toute la bande passante et ainsi
rendre indisponible toutes les connexions TCP.
Exemple : faire une requête chargen (port 19 / service de génération de
caractères) à une machine en spoofant l'adresse et le port source, pour rediriger
vers echo (port 7 / service qui répète la chaîne de caractères reçue) d'une autre
machine.
c. Packet Fragment
d. Smurfling
le pirate fait des requêtes ICMP ECHO à des adresses de broadcast en
spoofant l'adresse source (en indiquant l’adresse de la machine cible). Cette
machine cible va recevoir un nombre énorme de réponses, car toutes les
machines vont lui répondre, et ainsi utiliser toute sa bande passante.
6
Il s’agit de protéger physiquement le matériel de notre système
informatique ; cette protection se fera par la mise en place d’un
local technique avec accès sécurisé. Tout notre système
informatique devra également être alimenté en courant approprié.
Comme nous l’avons vu, les attaques utilisées par les pirates sont très variées.
Certaines utilisent des failles réseaux et d’autres des failles de programmation.
Nous pouvons donc facilement comprendre que la détection d’intrusions doit se
faire à plusieurs niveaux.
Ainsi, il existe différents types d’IDS dont nous détaillons ci-dessous les
caractéristiques principales.
Objectif : analyser de manière passive les flux en transit sur le réseau et détecter
les intrusions en temps réel.
Un NIDS écoute donc tout le trafic réseau, puis l’analyse et génère des alertes si
des paquets semblent dangereux.
Les NIDS étant les IDS plus intéressants et les plus utiles du fait de
l’omniprésence des réseaux dans notre vie quotidienne, ce document se
concentrera essentiellement sur ce type d’IDS.
Un HIDS se base sur une unique machine, n’analysant cette fois plus le trafic
réseau mais l’activité se passant sur cette machine. Il analyse en temps réel les
flux relatifs à une machine ainsi que les journaux.
7
Généralement utilisés dans un environnement décentralisé, ils permettent de
réunir les informations de diverses sondes placées sur le réseau. Leur appellation
« hybride » provient du fait qu’ils sont capables de réunir aussi bien des
informations provenant d’un système HIDS qu’un NIDS.
Cette technique s’appuie sur la connaissance des techniques utilisées par les
attaquants pour déduire des scénarios typiques. Elle ne tient pas compte des
actions passées de l’utilisateur et utilise des signatures d’attaques (= ensemble de
caractéristiques permettant d’identifier une activité intrusive : une chaîne
alphanumérique, une taille de paquet inhabituelle, une trame formatée de
manière suspecte, …).
8
les protocoles et port utilisés par l’attaque ainsi que le motif qui permettra de
reconnaître les paquets suspects.
Cette technique est également utilisée dans les anti-virus.
c. Analyse de protocoles
Cette méthode se base sur une vérification de la conformité (par rapport aux
RFC) des flux, ainsi que sur l’observation des champs et paramètres suspects
dans les paquets.
L’analyse protocolaire est souvent implémentée par un ensemble de
préprocesseurs, où chaque préprocesseur est chargé d’analyser un protocole
particulier (FTP, HTTP, ICMP, ...).
2. Principe de fonctionnement
Un firewall agit sur un ensemble de règles définies correctement par un
utilisateur se basant généralement sur le principe suivant :
Tout ce qui n'est pas explicitement autorisé est interdit !
Cela signifie que les règles constituant une partie de la configuration du firewall
doivent explicitement autoriser une action ou un flux de données pour que la
connexion puisse s’établir.
a. Filtrage de paquets
9
Internet et les réseaux fonctionnent par envoi/réception de blocs de données
appelées « paquets ». Un firewall analyse chacun de ces paquets sur base d’un
certain nombre de caractéristiques définies dans les règles. Un firewall
fonctionnant sur le principe du filtrage de paquets analyse les en-têtes des
paquets échangés entre deux ordinateurs en considérant les éléments suivants :
• L'adresse IP de la machine émettrice
• L'adresse IP de la machine réceptrice
• Le type de paquet TCP, UDP, ICMP ou IP
• Le service ou port demandé
b. Filtrage de contenu
Certains firewalls permettent en plus du filtrage de paquets d’analyser et de
filtrer les données contenues dans les paquets.
Cela permet dans certains cas de :
• empêcher la consultation de sites web Internet interdits
• empêcher le téléchargement de fichiers ou logiciels malicieux
• empêcher l’envoi et la réception par e-mail de fichiers potentiellement
dangereux.
En plus des fonctionnalités énoncées ci-dessus, certains firewalls vérifient même
que le contenu applicatif du trafic traversant le firewall (protocole applicatif
utilisé, instructions, codification, …) correspond effectivement au protocole
applicatif attendu.
Ceci permet d’éviter par exemple qu’un cracker accède à un cheval de troie en
utilisant un autre protocole applicatif à travers le port 80 (http).
3. Recommandations
Un firewall peut dans certains cas limiter les possibilités accordées à un
utilisateur voulant accéder à un réseau tel qu’Internet. Dans d’autres cas,
l’installation d’un firewall peut donner également une mauvaise impression de
sécurité « j’ai un firewall, je suis totalement protégé ».
Il convient donc d’appliquer les recommandations suivantes pour s’assurer de la
pleine efficacité du firewall :
• Configuration correcte des règles et des différents paramètres du firewall
• Trouver un équilibre entre sécurité et fonctionnalité.
• Le firewall doit assurer une protection adéquate (sécurité) tout en évitant
de limiter trop les fonctionnalités de l’utilisateur (fonctionnalité).
• Il est recommandé de limiter le nombre d’utilisateurs pouvant configurer
et modifier les règles et paramètres du firewall.
10
Exemples
II. La zone démilitarisée ou DMZ
1. Définition et Objectifs
Une DMZ (anglais : De-Militarized Zone ou Réseau de périmètre), ou "zone
démilitarisée" est une partie du réseau local dont l'objectif est d'être accessible
depuis l'extérieur du réseau local, avec ou sans authentification préalable. En
effet, pour des raisons à la fois techniques et stratégiques, les réseaux IP locaux
(LAN) sont (paradoxalement) devenus des zones inaccessibles depuis internet !
Pourquoi nos ordinateurs sont-ils inaccessibles depuis internet ?
Une des raisons du problème réside dans le fait que la pénurie d'adresses IP nous
amène à utiliser, pour les machines du LAN, des adresses dites "privées". Ces
adresses ne doivent jamais être routées par la passerelle du LAN (c'est la norme),
et sont donc déconnectées d’Internet. Évidemment, du point de vue de la
sécurité, cela peut sembler être un "plus" (pour vivre heureux... vivons cachés!);
Cependant, la raison même de l'existence des réseaux est de faire communiquer
les machines, pas de les isoler. Nous allons donc soit acheter une adresse
publique supplémentaire, soit utiliser une astuce au niveau de la passerelle pour
qu'au moins un des serveurs du LAN possède une identité sur Internet.
2. Principe de fonctionnement
Une DMZ utilise la même interface du réseau local de l’entreprise,
mais sur un réseau différent, il y est installé des serveurs
accessibles depuis l’extérieur .Il s’agit notamment du serveur Web,
Serveur de messagerie et FTP.L’utilisation d’une DMZ évite que
des clients externes accèdent au réseau local, se qui réduit
considérablement les risques d’intrusions.
c. La DMZ privée
Elle utilise dans son réseau des adresses IP privées.de ce fait, une règle de
publication doit être installée sur un serveur proxy (ISA par exemple)
pour accéder aux serveurs de la DMZ, ainsi depuis l’extérieur du réseau
c’est l’adresse IP de l’interface du serveur proxy qui est employée pour
accéder aux serveurs.
11
d. La DMZ publique
Elle utilise dans son réseau des adresses IP publiques. À ce moment là,
ISA server fait office de routeur entre son interface externe (coté Internet)
et l’interface coté DMZ. Pour accéder depuis Internet aux serveurs situés
dans la DMZ publique on utilise l’adresse IP propre à chaque serveur.
12
a. Préparation
b. Configuration
13
Conclusion
Le pare-feu et la DMZ sont à l’heure actuelle deux des principaux
éléments intervenants dans la mise en place d’une politique de sécurité.
Leur efficacité permet de réduire considérablement les attaques internes
ou externes.
14
Il convient donc d’effectuer une mise à jour régulière de ses installations
de prévention et/ou de défense, mais aussi de former convenablement le
personnel à l’utilisation du matériel informatique.
Bibliographie
• "Cours de sécurité des systèmes informatiques"
M.K Ulrich
• "Les systèmes de détection d'intrusions"
David Burgermeister, Jonathan Krier
• www.cases.lu
• www.google.fr
15
• www .commentcamarche.com
16