Les firewalls

Transcription

Les firewalls
Célérier Nicolas
http://users.skynet.be/nistorm
Les firewalls
Travail de fin d'études secondaires
Remerciements
Qu’il me soit permis de remercier M. Meurice DE DORMALE, Professeur au Collège
Sainte-Gertrude à Nivelles, ainsi que Philippe TEMESI, Technicien, Expert Linux et Firewall.
Table des matières
Introduction ............................................................................................................................. 1
1. Introduction à la notion de sécurité ..................................................................................
1.1. Pourquoi pirater un système ? ......................................................................................
1.1.1. Pour le fun, le défi ..............................................................................................
1.1.2. En politique ........................................................................................................
1.1.3. Par vengeance .....................................................................................................
1.2. Comment se fait-il qu’un système puisse être piraté ? .................................................
1.2.1. Mauvaise administration .....................................................................................
1.2.2. Les trous de sécurité (« Security hole » ) ............................................................
1.2.2.1. Hardware et logiciels ........................................................................
1.2.2.2. Denial of services .............................................................................
1.2.2.3. Autres méthodes ...............................................................................
1.2.3. Collaborateurs véreux .........................................................................................
1.3. Comment se protéger ? .................................................................................................
3
3
4
4
5
5
6
7
7
7
7
8
8
2. Les firewalls ........................................................................................................................
2.1. Introduction à la notion de firewall .............................................................................
2.1.1. Rôle d’un firewall ............................................................................................
2.1.2. Avez-vous besoin d’un firewall ? ....................................................................
2.2. Firewall software .........................................................................................................
2.2.1. Linux SuSe 8.1 Professionnel ..........................................................................
2.2.1.1. Description du firewall software .......................................................
2.2.1.2. Objectif à atteindre ............................................................................
2.2.1.3. Réaction du firewall en sortie ...........................................................
2.2.1.3.1. Routage ...........................................................................
2.2.1.3.2. Masquerading / NAT ......................................................
2.2.1.3.3. Service mandataire (proxy) .............................................
2.2.1.3.4. Deny ................................................................................
2.2.1.3.5. Reject ..............................................................................
2.2.1.4. Réaction du firewall en entrée ..........................................................
2.2.2. Les firewalls software sous Windows .............................................................
2.3. Firewall hardware ........................................................................................................
9
9
9
10
11
11
11
13
15
15
15
16
17
17
17
18
18
3. Les protections ....................................................................................................................
3.1. Blocage de ports ..........................................................................................................
3.1.1. D’un client vers le serveur d’une entreprise ....................................................
3.1.2. D’une entreprise vers l’extérieur .....................................................................
3.1.3. Le proxy d’une entreprise ................................................................................
3.2. Blocage conditionnel ...................................................................................................
3.2.1. Les IP sources ..................................................................................................
3.2.2. Par authentification ..........................................................................................
3.2.3. Le nombre de connections ...............................................................................
3.2.4. La gestion du matériel ......................................................................................
3.3. Dislocation de paquets IP ............................................................................................
3.4. SSH ..............................................................................................................................
3.4.1. Le cryptage des données ..................................................................................
3.4.2. L’authentification des machines ......................................................................
3.5. RSA .............................................................................................................................
19
19
19
20
20
21
21
22
23
23
24
25
25
26
27
4. Conclusion ........................................................................................................................... 28
5. Lexique ................................................................................................................................ 28
Bibliographie .......................................................................................................................... 29
Annexe ..................................................................................................................................... 29
Introduction
Depuis la création d’internet, le but premier est d’améliorer les vitesses de transmission des
données, en ne se souciant pas de la sécurité dans un premier temps.
Au début, il n’y avait que peu de personnes ayant accès à internet, et la plupart des
administrateurs possédaient des bases rudimentaires en termes de sécurité, ce qui
n’empêchait pas des individus de violer des systèmes bien entendu.
De nos jours, ce n’est plus le cas : chacun peut avoir accès à internet chez lui en n’ayant
aucune connaissance informatique, et il est même facile de monter un serveur web chez soi
en n’ayant qu’une connaissance médiocre de la sécurité.
Internet se démocratisant de plus en plus, tout le monde en parle ! Que ce soit dans les
journaux, à la télévision, dans les livres … : naviguer sur la toile est devenu monnaie
courante.
Naviguer pour certains devient alors trop simple, trop commun, ils vont vouloir se
démarquer. Ces internautes vont donc vouloir en connaître plus : quelles sont les origines
d’internet ? Comment fonctionne t-il ? Qu’est-ce qu’une adresse IP ? Comment fonctionne
un serveur web ?
Tant de questions auxquelles ils pourront bientôt répondre et devenir des bidouilleurs, des
pirates ! Hackers ou crackers, ils scrutent les ordinateurs du réseau dans l’espoir d’y déceler
une faille, pour tenter une intrusion ou pour provoquer un plantage ! Et cela peut-être sur
votre ordinateur, pour le meilleur et pour le pire.
Rassurez vous ! Les programmeurs ne vous ont pas laissé sans armes contre ces pirates. Les
firewalls (ou pare-feu en français) vont vous permettre de protéger vos PC en filtrant les
données entrantes et sortantes.
Les firewalls - 1 -
Maintenant, c’est peut-être vous qui vous poserez des questions ? Qu’est-ce qu’un firewall ?
Qu’est-ce qui se cache derrière ce nom ? Comment un firewall fonctionne t-il ?
C’est ce que nous allons tenter de vous expliquer dans ce TFE !
Les firewalls - 2 -
1. Introduction à la notion de sécurité :
Tout au long de ce travail je vous parlerai d’adresse IP, c’est donc pourquoi j’ai décidé de
commencer mon travail de fin d’étude en vous expliquant le fonctionnement du protocole
TCP/IP.
Le protocole qui est à la base d’internet, qui permet de transmettre des données, est le
protocole TCP/IP. Il est assez ingénieux, mais n’est pas très sur en termes de sécurité.
Le protocole TCP (Transmission Control Protocol), lorsque vous voulez envoyer une
information, va découper celle-ci en plusieurs petits paquets facilement transportable.
Ensuite, le protocole IP (Internet Protocol), en prenant le chemin le plus court, va faire
parvenir les paquets à la machine souhaitée. Chez le destinataire, TCP va reconstituer
l’information de départ à partir des paquets reçus. Sur le réseau, chaque machine est
identifiée par un numéro unique, l’adresse IP, composée de 12 chiffres maximum. Exemple :
80.201.172.236
Afin que les paquets ne soient envoyés que sur un seul et même ordinateur au final, ils
comportent chacun des données de contrôle, telles que les adresses IP de l’expéditeur et du
destinataire.
Maintenant que vous en connaissez un peu plus sur le TCP/IP, nous pouvons commencer.
Dans ce chapitre, je vous expliquerai les raisons qui poussent certaines personnes à pirater,
pourquoi un système peut-être piraté et pour finir je vous dirai comment vous protéger.
1.1 Pourquoi pirater un système ?
Les principales raisons pour lesquelles des personnes attaquent des systèmes sont au nombre
de trois. La première, la plus fréquente, est pour le fun, la deuxième est d’un point de vue
politique. Et pour finir, la troisième, par vengeance.
Les firewalls - 3 -
1.1.1. Pour le fun, le défi :
Pirater pour le fun, pour le défi, est la première cause de piratage. Ce sont généralement des
personnes âgées de moins de 25 ans qui s’y adonnent.
Lorsque vous piratez pour le fun, il ne faut pas nécessairement être un pro du piratage. Cela
peut aller du piratage d’un simple site internet, au piratage d’un site internet
gouvernemental. Vous pouvez aussi pirater l’ordinateur d’un ami, ou d’un ennemi.
Mais à quoi cela peut-il servir ? Les principales raisons sont les suivantes :
La première et la plus fréquente, pour montrer ce dont vous êtes capable, que vous savez
bidouiller, rentrer dans des systèmes, les modifier. Par exemple, lorsque vous voulez épater
vos amis en leur montrant que vous savez pirater des sites internet, même les leurs, ou leur
voler des mots de passe.
La deuxième raison, lorsque vous n’acceptez pas certaines idées que revendique un site
internet. Imaginez qu’un site web parle de choses complètement dénuées de sens,
dangereuse, pédophile, etc. … N’est-ce pas un beau défi utile ?
Ainsi certains pirates de haut niveau considèrent le hacking comme un jeu. Kevin Mitnick,
après être sorti de prison disait dans une interview pourquoi il piratait des systèmes : « Pour
échapper à la réalité, pour le fun ».
1.1.2. En politique :
Les systèmes informatiques gouvernementaux ont beau être parmi les mieux protégés du
monde, ce n’est pas pour cela qu’ils ne sont pas inviolables. Avec la politique du « zéro
papier », appliquée par beaucoup de sociétés et par les gouvernements, l’espionnage
intergouvernemental est alors possible. Ainsi les gouvernements, alliés entre eux ou non,
vont s’espionner, pour connaître des informations confidentielles.
Prenons un exemple concret, qui a eu lieu durant la dernière décennie aux Etats-Unis. Ceuxci ont été la cible d’espionnage industriel et technologique. En 1997, l’ASIS (American
Les firewalls - 4 -
Society for Industrial Security), a identifié plusieurs pays qui se livraient à de l’espionnage
industriel aux Etats-Unis. Les pays principaux étaient les suivants : l’Allemagne, la France,
Israël, la Chine et la Corée du Sud. A l’époque, quatre de ces pays étaient alliés des EtatsUnis.
Cela ne se passe pas qu’au niveau intergouvernemental mais aussi au sein des pays mêmes.
Les sites web des partis politiques par exemple, peuvent être la cible des hackers. Ceux-ci
peuvent en modifier le contenu. Une telle attaque s’évalue généralement en terme de perte
d’image ou de crédibilité vis à vis des personnes qui verront cela. En effet, les hackers
remplacent généralement les pages par des photos pornographiques ou changent certaines
phrases ayant pour but de ridiculiser ces sites web.
1.1.3. Par vengeance :
Cette cause de piratage est assez rare.
Plusieurs situations peuvent illustrer cela. Par exemple, lorsqu’un de vos amis vous à fait un
sale coup ou lorsque vous vous êtes fait licencier par votre patron.
Dans les boites d’haute technologie, afin d’éviter au maximum qu’un employé ne se venge,
on lui apprend qu’il est licencié et qu’il doit quitter son bureau dans les minutes qui suivent,
avec des personnes qui veilleront à ce qu’il ne fasse rien qui pourrait par la suite causer
préjudice à l’entreprise. En effet, il pourrait détruire des fichiers, causer une faille dans le
système pour l’exploiter plus tard, etc. …
1.2. Comment se fait-il qu’un système puisse être piraté ?
Nous verrons dans cette partie pourquoi un système sait être piraté. Trois problèmes
majeures sont expliqués : la mauvaise administration, les trous de sécurité, ainsi que les
collaborateurs véreux.
Les firewalls - 5 -
1.2.1. Mauvaise administration :
C’est dans les petites entreprises, chez les indépendants et chez les privés qu’une mauvaise
administration du système, due à la mauvaise connaissance (ou pas) de la sécurité
informatique, se retrouve généralement. Ce problème se retrouve moins dans les grosses
entreprises.
En effet, celles-ci doivent faire plus attention aux attaques, et engagent du personnel
qualifié, rien que pour s’occuper de la sécurité de leur système ; ce que les indépendants et
les petites entreprises ne font pas, faute de moyen.
Cependant, si ces derniers veulent tout de même protéger leur système, ils peuvent très bien
demander à une personne travaillant déjà pour eux de s’occuper de la sécurité, mais en plus
du travail qu’il fait déjà. Cela aura pour conséquence que la personne ne saura pas s’occuper
de la sécurité du système à 100%, et elle ne sera probablement pas experte en sécurité.
Ces petites entreprises peuvent aussi avoir recours à une société externe. Mais cela peut
engendrer certains problèmes.
Primo, cette société externe n’a pas une vision globale de l’entreprise. En effet, elle ne
connaît pas l’entreprise à 100%
Secundo, des problèmes de communication peuvent exister entre cette société et vous. Notre
entreprise, ne s’y connaissant pas trop en sécurité, demandera peut-être une solution qui
n’offrira pas une protection optimale, oubliera de spécifier certains critères, certaines
machines, … à la société externe.
Tertio, des problèmes d’évolution, de réparations d’urgences, la prise en charge de la
sécurité de l’entreprise par une nouvelle société peuvent aussi intervenir dans l’insécurité du
système.
Les firewalls - 6 -
1.2.2. Les trous de sécurité ( Security Hole ) :
1.2.2.1. Hardware et logiciels :
Les trous de sécurité se présentent ou bien dans le hardware ou les logiciels existants.
Pour les supprimer, dans le hardware, il y a possibilité de remplacer le firmware présent par
un plus récent, de flasher les puces, etc. … Pour les logiciels, des patchs et des mises à jour
existent.
Tous les défauts qui ne sont pas encore connus ne possèdent pas de patchs ou de mises à
jour. Il faudra attendre qu’une faille sois exploitée par un pirate ou que la société fabriquant
ces moyens de protections la découvre pour qu’une mise à jour, un firmware, etc. soient mis
au point.
1.2.2.2. Denial of services :
C’est une attaque qui consiste à faire planter le système distant. Cela est assez pratique pour
les sites internet. En effet, ce genre d’attaque peut mettre hors service une page web, et donc
les personnes ne peuvent plus y avoir accès.
1.2.2.3. Autres méthodes :
D’autres méthodes pour provoquer des trous de sécurité, comme l’overflow, le spoofing, ou
d’autres attaques standards peuvent fonctionner et provoquer des trous de sécurité.
L’overflow est un débordement de capacité. Prenons l’exemple d’un serveur web comme
Google qui est une moteur de recherche (http://www.google.com/). Ce site tourne donc sur
une machine qui fait office de serveur web. Tout tourne en mémoire sur ce serveur
(OS, site, …). Lorsque vous vous rendez sur leur page, vous pouvez choisir des mots de
recherche. Ce champ accepte donc des variables. Si on arrive à faire déborder ces variables
pour les faire passer en code exécutable, le hacker peut s’emparer du système.
Les firewalls - 7 -
Le spoofing, ou usurpation d’identité, est une technique qui permet à une machine d’être
authentifiée auprès d’une autre grâce à des paquets semblant provenir d’une adresse source
approuvée. On peut donc soit dévier du trafic qui ne nous est pas destiné, ou prendre
l’adresse IP d’un autre et s’en servir.
1.2.3. Collaborateurs véreux :
Ce cas se retrouve dans les petites ou les grandes entreprises. Les raisons peuvent être
diverses. La principale est le fruit d’une vengeance suite à un licenciement.
Dans les grandes entreprises d’IT, il n’y a pas de préavis. La personne licenciée doit partir
dans les minutes après qu’on le lui ai dit et est surveillée pour être sûr qu’elle ne fasse rien
d’anormal (comme détruire certaines choses, mettre des backdoors, …). En effet, la société
pourrait perdre des millions.
1.3. Comment se protéger ?
Pour être protégé de manière optimale, plusieurs choses sont importantes.
La première se situe au niveau software. En effet, il vaut mieux avoir un antivirus et un
firewall pour protéger votre système contre les virus et les intrusions.
La deuxième est au niveau des mises à jour de vos programmes. Non pas seulement de votre
antivirus et de votre firewall, mais des programmes qui ont accès à la connexion internet. En
effet, des failles de sécurité sont découvertes tout les jours dans vos programmes favoris tel
que votre navigateur internet (Internet Explorer, Mozilla, Opera, …) dans votre logiciel de
messagerie (Outlook, Eudora, …) et même dans votre OS (Operating system comme
Windows, Linux, …). Il faudra donc, pour supprimer ces failles, installer des patchs, des
versions plus récentes des programmes utilisés, etc…
Evidemment, dans les grandes sociétés, cela n’est pas toujours facile car il faut bien vérifier
que tout refonctionne comme avant. Le problème se pose moins chez les particuliers.
Les firewalls - 8 -
2. Les firewalls :
C’est dans ce chapitre que nous allons commencer à parler des firewalls, à mieux
comprendre leur fonctionnement. Vous retrouverez aussi dans ce chapitre la partie pratique
de mon travail : un firewall software configuré sous Linux. Nous aborderons aussi les
firewalls hardware.
2.1. Introduction à la notion de firewall :
Le rôle d’un firewall est de protéger un réseau intérieur contre toute intrusion du dehors.
Lorsque vous êtes connecté à internet, les risques d’intrusion peuvent être réduits, mais pas
éliminés. Un firewall ne pourra donc jamais remplacer la supervision et la bonne gestion de
vos systèmes.
2.1.1. Rôle d’un firewall :
A la base, un firewall isole votre réseau intérieur d’un réseau extérieur. Les machines
placées en amont ne peuvent pas voir celles placées en aval du firewall. Ainsi le réseau
extérieur ne « voit » que le firewall apparaissant comme unique source et destination du
trafic de votre organisation.
Cette description est assez simpliste. En effet, elle ne s’applique que dans le cas d’un petit
réseau et non dans le cas d’un réseau étoffé.
Le rôle du firewall repose sur deux techniques de base : le filtrage des paquets de données et
courroie de transmission.
La première est la technique la plus élémentaire pour protéger un réseau. Chaque paquet
reçu est comparé avec un ensemble de règles, pour choisir le traitement à réaliser. Plusieurs
stratégies pour le filtrage de paquets sont envisageables. Vous pouvez par exemple décider
de bloquer tout ce qui peut être dangereux, ou alors, mais plus restrictif, bloquer tout par
défaut.
Les firewalls - 9 -
La deuxième sert à masquer les machines de votre réseau derrière le firewall. Cela permet
donc à un serveur de se faire passer pour la machine à l’origine d’un paquet. Par exemple, si
un utilisateur demande une page web à un serveur HTTP, et que cette requête traverse le
firewall, ce dernier retransmettra le paquet comme s’il était à l’origine de la requête. Ainsi,
une seule machine est visible sur internet et vous n’avez besoin que d’une seule adresse IP,
les machines de votre réseau pouvant alors disposer d’adresses IP privées.
2.1.2. Avez-vous besoin d’un firewall ?
Tout cela dépend du type d’utilisateur que vous êtes et de votre connexion. En effet, les
besoins en protections ne sont pas les mêmes si vous êtes un particulier qui surfe de temps
en temps sur internet ou si vous employez votre connexion internet 24 heures sur 24 pour
votre entreprise et son site web. De plus, votre bande passante n’est pas la même lorsque
vous êtes connecté avec un modem 56Kbps ou avec une connexion ADSL/Câble. En effet,
votre bande passante est alors plus ou moins grande, votre IP est dynamique ou statique
(c’est généralement le cas pour les utilisateurs du câble) ce qui peut faciliter la tâche du
pirate.
Si vous êtes un particulier, des firewalls logiciels tels que Norton Firewall ou Zone Alarm
devraient faire l’affaire. Créer un firewall sous Linux serait une perte de temps ou en avoir
un spécifique serait une perte d’argent. En effet, en tant que petit utilisateur sur la toile,
votre système n’est pas connecté en permanence à internet, vos heures de connexion sont
aléatoires, votre adresse IP est probablement dynamique, et vous consommez une grande
partie de votre bande passante. Un pirate aura donc plus de mal à vous pirater.
Par contre, si vous avez un site web d’entreprise, il est mieux d’avoir un firewall plus
spécifique. Un firewall créé sous Linux, et donc gratuit, peut très bien faire l’affaire face à
un firewall spécifique qui lui peut coûter des milliers de francs.
Mais attention ! Il ne faut pas non plus oublier qu’un firewall peut vous compliquer
l’existence ! Ainsi, si la personne ne connaît pas grand chose en sécurité, ou vraiment très
peu, elle ne pourrait plus faire certaines choses si elle ne sait pas que le problème vient du
firewall. En effet, un firewall ne fait pas qu’empêcher les intrus d’accéder à votre système. Il
empêche aussi le trafic légitime d’en sortir.
Les firewalls - 10 -
2.2. Firewall software :
Les firewalls softwares, ou logiciels, sont les plus répandus chez les particuliers car ces
firewalls coûtent beaucoup moins cher que les firewalls hardwares. Certains sont gratuits,
d’autres payants et coûtent en moyenne 60€. Evidemment, cette baisse de prix entraîne un
niveau de protection moins évolué.
Nous avons regardé comment le firewall réagissait lorsque nous étions sur internet et
lorsque faisions certaines actions.
Je vous parlerai principalement d’un firewall software que j’ai configuré avec Philippe
TEMESI sous Linux SuSe dans sa version 8.1 Professionnelle.
2.2.1. Linux SuSe 8.1 Professionnel :
Ce firewall software sous Linux SuSe 8.1 Professionnel constitue la partie pratique de mon
travail approfondi.
2.2.1.1. Description du firewall software :
La configuration hardware de notre firewall était la suivante :
 Processeur Pentium 2 400Mhz
 128Mo de mémoire SDRAM
 Disque dur de 6Go
 2 cartes réseaux 10/100
Le système d’opération était Linux SuSE 8.1 Professionnel
Le minimum de mémoire RAM à mettre dans un petit serveur de PME est de 64Mo.
Lorsque le serveur est un peu plus gros 128Mo sont conseillés. Cela peut monter jusqu’à
1Go pour les gros sites.
Les firewalls - 11 -
Pour avoir accès à internet, nous n’avions pas d’autres possibilités que de connecter la
première carte réseau à un autre firewall hardware.
L’idéal pour le disque dur est d’être d’au moins 5, 6 Go, le minimum étant 2 Go.
500Mo sont réservés au système d’exploitation et à ses applications. Le reste peut alors être
utilisé pour mettre des informations en cache. En effet, il est plus intéressant de télécharger
sur un réseau local que sur internet car il faut payer les excédents de Go et cela permet
d’augmenter les performances d’un point de vue bande passante.
Pour créer un firewall et qu’il ait un sens, il faut au moins deux interfaces réseaux. Cela
nous permet de ne pas mélanger le trafic entre les deux interfaces. Le trafic passe donc par
des filtres et le réseau est mieux protégé contre les attaques. Il est aussi impossible de sniffer
(capturer des données) d’un côté à l’autre. Par exemple, si vous êtes sur internet, vous ne
pouvez pas sniffer ce qui se passe dans le réseau interne. Seule une personne dans le réseau
interne peut sniffer le trafic du réseau interne.
La première interface réseau peut par exemple être reliée à internet, et la deuxième relier le
réseau interne. Il peut bien entendu y avoir plus de deux interfaces réseaux (vers d’autres
réseaux locaux, le web, l’intranet, …)
Les firewalls - 12 -
Lors de notre travail, les deux interfaces réseaux étaient « eth0 » et « eth1 ». Eth0 et eth1 car
nous étions sur un réseau local (donc avec des cartes réseaux ethernet).
Le première interface réseau, eth0, était relié à un autre firewall donnant accès à internet.
Son adresse IP était 192.168.0.23 et était dynamique. La deuxième interface réseau, eth1,
n’était reliée à rien. Elle n’avait donc pas d’adresse IP
Interfaces réseaux
eth0
eth1
Adresse IP
192.168.0.23
Rien pour le moment
Type d’IP
Dynamique
Rien
2.2.1.2. Objectif à atteindre :
L’objectif à atteindre est le suivant : il faut que le firewall relie l’entreprise en réseau local à
internet. La première interface, eth0, sera reliée à internet avec une adresse IP dynamique ou
statique. Tandis que la seconde reliera l’entreprise avec une IP fixe de réseau local.
Interfaces réseaux
Eth0
Eth1
Adresse IP
Dynamique/Statique
Adresse fixe de réseau local
Vers
Internet
Réseau de l’entreprise
Il faudra donc pour chaque interface réseau un routage et savoir ce qui passera.
Maintenant, les deux grandes questions sont :
1)
Qu’accepte-t-on venant d’internet ?
Nous avons notre firewall d’un coté et de l’autre notre client avec une adresse IP
quelconque. Il va donc demander quelque chose qui se trouve derrière le firewall et devra
passer par celui-ci avant de recevoir ce qu’il a demandé.
Les firewalls - 13 -
2) Que laisse-t-on faire aux utilisateurs du réseau local ?
Nous avons un pc sur le réseau local et un serveur de l’autre coté. L’utilisateur veut atteindre
le serveur qui se trouve de l’autre coté. Il devra donc passer par le firewall.
Ce sont les principaux cas qui se passent avec un firewall. Laisser entrer et sortir des
informations.
Analysons maintenant les réactions du firewall, en entrée ainsi qu’en sortie, lorsqu’il accepte
et lorsqu’il refuse de laisser passer une information.
Les firewalls - 14 -
2.2.1.3. Réaction du firewall en sortie :
Lorsqu’un employé du réseau interne d’une entreprise veut accéder à internet, ou à d’autres
services comme le serveur de mails, il doit passer par le firewall de l’entreprise.
Lorsque le firewall accepte que l’employé accède à ce qu’il a demandé, trois cas peuvent
être envisagés :
2.2.1.3.1. Routage :
Premièrement, le firewall peut faire du routage pur et dur, ce qui est très basique pour un
firewall. L’employé va donc passer par le firewall, et accéder à ce qu’il demande. Le serveur
verra cette personne avec sa propre adresse IP, et non pas avec celle du firewall.
N’oublions cependant pas que l’employé doit avoir une adresse IP internet et non pas une
adresse IP d’un réseau interne. En effet, les adresses internes (généralement de ce genre :
192.168.0.xxx) d’un réseau ne sont pas compatibles avec les services se trouvant sur
internet.
2.2.1.3.2. Masquerading / NAT
Deuxièmement, le firewall peut faire du « Masquerading / NAT », ou plus simplement,
transition d’adresse IP. Cela revient toujours à faire du routage, mais en moins basique.
Les firewalls - 15 -
L’itinéraire est toujours le même : l’employé veut accéder à quelque chose sur internet et
doit passer par le firewall de l’entreprise … Mais il y a un hic ! L’employé dispose d’une
adresse IP du réseau interne de l’entreprise et ne peut donc pas aller sur le serveur …
C’est ici qu’intervient la transition d’adresse IP. L’employé va être vu comme s’il était le
firewall, qui lui dispose d’une ou plusieurs adresses IP internet.
Mais pourquoi ne pas avoir tout simplement donné une adresse IP internet à l’employé
comme dans le cas précédent ? Tout simplement car il est assez rare d’avoir une IP officielle
sur tout les PC du réseau local (imaginez qu’une société ait vingt mille employés, … ca fait
beaucoup d’adresses IP internet !) et cela permet en plus de renforcer la sécurité.
2.2.1.3.3. Service mandataire (proxy) :
Troisièmement, il peut y avoir un proxy derrière le firewall. L’employé demande au firewall
de faire tout à sa place, et le proxy lui renverra les informations demandées.
L’avantage est que tout se fait en local. (Voir 3.1.3. Le proxy d’une entreprise)
Les firewalls - 16 -
Le firewall peut très bien accepter que des informations sortent, tout comme il peut refuser
que l’employé ait accès à certaines pages, certaines informations. Le firewall peut alors lui
refuser l’accès de deux manières : par « Deny » ou « Reject »
2.2.1.3.4. Deny
L’employé reçoit une réponse du firewall lui disant que ce qu’il demande est interdit, qu’il
n’a pas le droit d’accéder à tel ou tel service.
2.2.1.3.5. Reject
Ici, l’employé ne reçoit aucune réponse. Il fait sa demande, mais rien ne se passe …
Le but du reject est de mettre plus longtemps à scanner un serveur ou autre, laissant la
personne voulant l’atteindre dans l’attente : elle ne sait pas si il y a quelque chose ou non, et
si il y a quelque chose, c’est peut-être parce que le réseau est surchargé.
2.2.1.4. Réaction du firewall en entrée :
Lorsque quelqu’un tente d’accéder par exemple au site d’une entreprise, il doit passer par le
firewall de celle-ci, ou directement sur une machine de l’entreprise.
Encore une fois, cet employé pourrait recevoir l’information demandée, tout comme cette
information pourrait lui être refusée.
Les firewalls - 17 -
Ici, c’est très simple, soit on accepte et le firewall renvoie la personne sur le serveur web,
soit le firewall lui fournit les informations qu’il a demandé. Et lorsque cette personne ne
peut pas accéder à ce qu’elle demande, le firewall lui en refuse l’accès par deny ou reject.
2.2.2. Les firewalls software sous Windows :
Les firewalls software pour windows ont la particularité (du moins pour la plupart) d’être
déjà quasiment configurés et ne demandent pas autant de connaissance que celui que nous
avons monté nous même sous Linux. L’installation se fait comme n’importe quel autre
programme.
Les produits les plus connus sont Norton Firewall, Zone Alarm, Kaspersky Anti-Hacker, …
2.3. Firewall hardware :
Les firewalls hardware les plus simples sont sous forme de boîtier incluant deux connecteurs
réseau. Le premier pour relier le réseau interne, le second pour relier l’extérieur (Internet par
exemple)
Les sociétés les plus réputées fabriquant des firewalls hardware sont : Cisco, Alturion,
Nokia, 3com …
Les prix de ces pare-feu vont de 2.500€, et plus. Le haut de gamme de chez alturion coute
approximativement trois millions d’euros
Les firewalls hardware ont aussi la particularité d’être très résistants aux pannes : il n’y a pas
de mémoire volatile, ni de disque dur. Ils ne sont pas non plus SPF, Single Point of Failure,
c’est à dire que tout est redondant : si une puce, ou d’autres composants cessent de
fonctionner, un deuxième vient prendre le relais.
Les firewalls - 18 -
3. Les protections
Dans ce chapitre nous parlerons dans un premier temps des règles que peut appliquer un
firewall, à savoir le blocage de port, le blocage conditionnel et la dislocation de paquets.
Dans un deuxième temps nous vous parlerons du SSH et du RSA
3.1. Le blocage de port
Une IP ne suffit pas pour exécuter des tâches sur un réseau. Il faut des ports, qui vont
permettre à l’ordinateur de pouvoir distinguer les différentes sources de données et ainsi
exécuter l’application souhaitée.
Plusieurs cas peuvent se présenter, nous vous présenterons les plus fréquents.
3.1.1. D’un client vers le serveur d’une entreprise :
Nous avons plusieurs clients qui veulent se connecter au serveur web d’une entreprise. Etant
donné que c’est un serveur web, seul le port 80 sera accessible et autorisé lorsque les clients
voudront se connecter sur le serveur. Le firewall laissera donc passer tout les clients qui
veulent voir le site web de l’entreprise. Par contre, les clients qui veulent accéder à une autre
porte que la porte 80, par exemple la porte 5631, du serveur ne pourront pas y accéder car le
trafic sur ce port n’est pas autorisé. Le firewall leur bloque donc l’accès.
Les firewalls - 19 -
3.1.2. D’une entreprise vers l’extérieur :
Nous voici dans l’autre sens. Ici, ce sont les clients de l’entreprise qui veulent accéder à
différente application. Dans l’exemple ci-dessous, nous remarquons que les clients peuvent
voir des pages web, mais qu’ils ne peuvent pas aller sur Msn Messenger.
En effet, le firewall bloque tout accès au port 1863 aux personnes de l’entreprise. Le port
1863 étant celui utilisé par le programme Msn Messenger.
3.1.3. Le proxy d’une entreprise :
Ce genre de blocage de ports se retrouve plus souvent dans les grandes entreprises. Lorsque
les clients de l’entreprise veulent aller sur un site web ou accéder à d’autres services (FTP,
mail,…), ils doivent d’abord passer par le proxy. Le proxy demandera les informations au
serveur et les renverra à l’utilisateur les ayant demandées. S’ils essaient de ne pas passer par
le proxy, ils ne peuvent rien atteindre.
Le rôle d’un proxy est de limiter le nombre de connexions sortantes. En effet, seul le proxy
accède à internet en direct.
Les firewalls - 20 -
3.2. Le blocage conditionnel :
Le blocage conditionnel est un peu plus complexe que le blocage de ports. Il peut y en avoir
de plusieurs sortes. Tout comme le blocage de ports, les blocages conditionnels nous
permettent de bloquer l’accès à des sites web, des réseaux internes d’entreprises, etc.. Nous
parlerons des quatre méthodes de blocages conditionnels les plus fréquents.
3.2.1. Les IP sources :
Pour refuser l’accès à un serveur, nous pouvons nous baser sur les IP sources.
C’est à dire que nous pouvons par exemple refuser l’accès d’un site web selon l’adresse IP
de l’utilisateur qui tente de s’y connecter.
Ainsi, un fournisseur d’accès internet peut n’accepter que les connexions venant de chez ses
propres clients pour accéder à certaines pages (comme la gestion de l’abonnement, le
paramétrage des comptes de courrier électronique, …)
C’est le cas avec le fournisseur d’accès belge Skynet.
Les firewalls - 21 -
3.2.2. Par authentification :
Avant que le firewall ne laisse passer un client, il faut que celui-ci s’authentifie. Il peut le
faire grâce à un login et un mot de passe, ou bien par un code généré.
Le plus souvent, lorsque l’on parle de code généré, on parle de « Secure ID ». Ces codes
sont valables pendant une minute et sont fait de six chiffres. Aujourd’hui, utiliser des Secure
ID est monnaie courante. En effet, vous utilisez ce système pour vos connecter à votre
compte bancaire via internet.
Prenons un exemple concret. Nous avons deux personnes qui veulent accéder à un compte
bancaire. Entre les clients et le serveur sécurisé, il y a le firewall et le serveur Secure ID.
Le premier demande pour se connecter au serveur sécurisé en donnant la Secure ID, qu’il a
générée, au firewall. Le firewall va alors envoyer cette clé au serveur Secure ID pour savoir
si la clé est bonne ou non (1). Pour notre premier client, elle est bonne. Le serveur Secure ID
renvoie alors une confirmation au firewall disant que la clé envoyée est bonne (2). Le
firewall va donc laisser le client accéder à son compte.
C’est la même chose pour le deuxième jusqu’au moment ou le firewall à envoyé la clé au
Les firewalls - 22 -
serveur Secure ID. Ici, la clé est incorrecte. Le serveur Secure ID envoie donc l’information
au firewall comme quoi la clé est incorrecte (2). Le firewall ne laissera donc pas passer le
client.
3.2.3. Le nombre de connections :
Un firewall peut vérifier le nombre de connexion simultanée chez une personne pour qu’elle
ne se connecte pas plus de 2, ou 3 fois simultanément à un même site.
3.2.4. La gestion du matériel :
Cette méthode de protection est généralement utilisée sur les réseaux ethernet. Ici, on vérifie
physiquement où se trouve la connexion internet grâce aux « Mac Address ». Cette Mac
Address est un code spécifique à chaque carte réseau.
Cette méthode est plus souvent utilisé dans les grandes sociétés.
Les firewalls - 23 -
3.3. Dislocation de paquets :
Ici, le firewall regarde ce qu’il y a dans chaque paquets d’informations envoyés par le client
vers le serveur de l’entreprise.
Dans notre exemple, le client essaie de se connecter au serveur web de l’entreprise. Entre les
deux, nous avons notre firewall qui analyse ce que demande le client. Le firewall va
s’assurer de la nature des paquets, de leur contenu. Il ne faut pas que les informations que le
client envoie sur le serveur web soient autres que de l’http et donc à destination du port 80.
En effet, les autres protocoles sont interdits.
Un firewall est capable de faire de la dislocation de paquets pour d’autres protocoles bien
connus tel que FTP, POP, SMTP, etc…
Avant que le firewall ne fasse une dislocation des paquets, il exécute d’abord les protections
par blocage de ports et les blocages conditionnels. En effet, regarder à l’intérieur de chaque
paquet demande beaucoup de ressources, il ne faut donc pas faire cela inutilement.
Le firewall peut aussi utiliser des systèmes de détection, tels que l’IDS. En effet, il existe
certaines méthodes pour contrer certains envois de paquets envoyés d’une manière plus
spéciale. Snort est un système IDS (http://www.snort.org).
Les firewalls - 24 -
3.4. SSH :
Avant qu’il n’y ait SSH, il y avait des services comme Telnet qui permettaient d’envoyer des
informations. Malheureusement, Telnet ne cryptait rien, et une personne qui sniffait le trafic
entre deux réseaux pouvait facilement voir ce qui passait d’un réseau à l’autre et ainsi voler
des données personnelles telles que des mots de passe, des textes, etc. …
Il fallait donc remédier à ce problème, et la réponse fut le « Secure Shell » ou SSH.
SSH apporta deux nouveautés majeures par rapport à Telnet : le cryptage des données, et un
système d’authentification de machines.
3.4.1. Le cryptage des données :
Grâce au cryptage de données, la moindre information est cryptée, plus rien ne passe en
clair. Ainsi, il est beaucoup plus difficile pour les pirates de sniffer des logins et des mots de
passe. Celui-ci peut toujours les sniffer, mais il sera obligé de les décrypter. Le décryptage
peut prendre très peu comme beaucoup de temps. Cela dépend de la puissance de
chiffrement, qui peut-être de 1 bit, à l’infini de bits.
Si l’émetteur envoie une information à une autre personne en crypté, comment le
destinataire fait il pour la décrypter ? Et si il peut la décrypter, le sniffer pourra en faire de
même ! C’est ici qu’interviennent les clés publiques et les clés privées !
L’expéditeur crypte l’information grâce à la clé publique du destinataire et celui-ci décrypte
l’information grâce à sa clé privée, que lui seul possède ! Le sniffer, qui ne possède pas la
clé privée du destinataire, devra donc trouver la clé privée pour arriver à lire le message !
Si la puissance de chiffrement est petite, comme du 16 bits, cela ne demandera que quelques
minutes à l’ordinateur du sniffer pour trouver la clé privée … Mais si la puissance de
chiffrement est plus grande, du 1024 bits par exemple, il n’y arrivera pas !
Les firewalls - 25 -
Pourquoi ? Tout simplement parce que la clé devient de plus en plus grande suivant la
puissance du chiffrement. Même si nous utilisions tous les ordinateurs sur terre, avec leur
puissance actuelle, la recherche d’une clé privée de 1024 bits prendrait, accrochez-vous
bien, plus de temps que l’âge de l’univers pour être décryptée ! … Notre sniffer peut donc
tout de suite aller se rhabiller !
Lorsqu’une clé publique est générée, une clé privée l’est aussi en même temps. Ainsi,
chaque clé publique va de paire avec une, et une seule clé privée. Notre destinataire
possédant la clé privée, il n’aura aucune difficulté pour décrypter le message de l’expéditeur
qui a été crypté avec la clé publique du récepteur.
Sceptique, je vous entend déjà dire : « Oui, mais si une personne lui vole sa clé privée, cette
personne pourra lire le message ».
Mais il faut savoir que ces clés sont impossibles à mémoriser … En effet, elles sont
composées de nombres, de lettres en majuscules ou minuscules, et sont très longues …
De plus, mais moins fréquent, des mots de passe peuvent être rajoutés à ces clés, ce qui
rendra la tâche du sniffer encore plus difficile !
En effet, il devra à la fois voler la clé privée, mais aussi un mot de passe …
Rapidement, les clés publiques et les clés privées sont générées grâce à une formule
mathématique qui est : (A x B) MOD N = 1. Cette méthode de cryptage est appelée RSA et
est utilisée par SSH. Nous en reparlerons dans le point suivant.
3.4.2. L’authentification des machines :
L’authentification de machines sur un serveur est une chose assez pratique, et de sécurisant
grâce au système de clés publiques et clés privées.
Par exemple, vous vous connectez à un serveur X pour la première fois. Lors de cette
première connexion, un échange de clés publiques s’effectuera entre le client et le serveur,
qui sera votre login et votre mot de passe pour aller dessus. Ce dernier va mémoriser votre
Les firewalls - 26 -
clé publique. Ainsi, à chaque connexion, le serveur regardera si votre clé publique
correspond à sa clé privée, et vous ne devrez plus taper de nom d’utilisateur, ni de mot de
passe pour être authentifié.
3.5. RSA
Ce système de cryptographie est le plus connu et le plus sûr de nos jours.
L’abréviation RSA provient des noms des trois mathématiciens qui l’ont mis au point en
1977 : Rivest, Shamir et Adleman.
Le RSA se base sur la formule mathématique dont nous parlions plus haut, à savoir :
(A x B) MOD N = 1. Cette formule générant, je vous le rappelle, une paire de clé publique
et privée.
Comme le RSA se base sur cette formule, il répondra à la même problématique que celle-ci,
c’est-à-dire qu’il est impossible de trouver grâce à la clé publique A, la clé privée B.
La nouveauté du RSA, se trouve dans l’utilisation de nombres premiers, ce qui le rend plus
sécurisé. En effet, il n’existe pas actuellement sur terre une fonction mathématique
permettant de les trouver. Nous sommes donc obligés de les « découvrir » lorsqu’on échoue
en essayant de les diviser par tous ceux existant déjà.
Nos trois mathématiciens se sont alors demandés si le N, de (A x B) MOD N = 1, pouvait ne
pas être le même N que celui utilisé comme constante dans l’algorithme de chiffrement final
… Et Bingo ! C’est possible !
Vous retrouverez un exemple en annexe.
Les firewalls - 27 -
4. Conclusion
Je conclurai mon travail de fin d’étude en répondant à sa question fondamentale : quel est le
degré d’utilité des firewalls ?
Nous l’avons montré à travers les différents chapitres de ce travail, que l’importance d’avoir
un firewall varie selon le type d’utilisateur que vous êtes.
Si vous utilisez votre connexion en tant que simple utilisateur, l’importance d’avoir un
firewall sera moindre que si vous utilisiez votre connexion pour héberger le site web de
votre entreprise. Ce besoin sera d’autant plus grand selon l’ampleur de votre entreprise, si
vous ne voulez pas être victime d’une perte de crédibilité et tout ce qui en découle. Imaginez
une société spécialisée dans la mise en place de firewall, ou dans la sécurité sur internet en
général, se faire pirater sa page web … Imaginez-vous les conséquences !
Ainsi, comprenez l’importance d’avoir une bonne protection, des firewalls bien configurés,
pour des sites gouvernementaux, des sites de partis politiques. C’est primordial !
Nous ne devons donc pas, utilisateurs lambda, céder à la panique. En effet, nous ne sommes
pas des cibles potentielles pour les pirates. Les petits pirates en herbes qui scanneront le
réseau à la recherche de failles, chercheront les ordinateurs les plus faciles à hacker, et un
firewall de base les fera bien vite fuir …
5. Lexique
Les définitions de certains mots provenant d'un livre, je ne peux vous les mettre sur ce site.
Néanmoins je vous recommande quelques sites proposant un dictionnaire online :
http://www.dicofr.com/
http://www.onversity.com/
Les firewalls - 28 -
Bibliographie
Ouvrages de références généraux
Sécurité Optimale 2e édition, écrit par un hacker (anonyme), éd. CampusPress Référence.
Linux Sécurité, écrit par Robert L. Ziegler, éd. CampusPress Référence.
Les articles et les revues spécialisées
Login n°98, dossier « Cryptographie » : Codes secrets : Les bases de la cryptographie, p31-41
Linux Magazine, novembre 2001, dossier « SSH », p16-24
Contacts personnels
Philippe Temesi (Société Ebug, Nivelles)
Internet
http://www.commentcamarche.com
http://www.secuser.com
http://sebsauvage.net/comprendre/proxy/
Interview et histoire de Kevin Mitnick. 10/03/2000
http://www.emmanuellerichard.com/Articles/ArticleScanBIS/Articlesscan/Libe_kevin.htm
Le p2p et les port … 22/03/2003
http://www.sandvine.co.uk/news/pr_detail.asp?ID=22
Onversity (définitions)
http://www.onversity.com/
Annexe
L'annexe provenant d'une revue (Login n°98 – Dossier Cryptographie, page 40 : Le RSA ou
l'utilisation des nombres premiers), je ne peux vous la mettre sur ce site.
Les firewalls - 29 -