• Aucun résultat trouvé

Pare-feu. Saiida LAZAAR Département Mathématiques & Informatique S. LAZAAR, ENSA 1

N/A
N/A
Protected

Academic year: 2022

Partager "Pare-feu. Saiida LAZAAR Département Mathématiques & Informatique S. LAZAAR, ENSA 1"

Copied!
36
0
0

Texte intégral

(1)

Pare-feu

Saiida LAZAAR

Département Mathématiques & Informatique

S. LAZAAR, ENSA 1

(2)

Plan

• Principe et fonctionnement

• Les attaques contre les pare feu

• Pare feu applicatif

• Pare feu dynamique

• Proxy

• DMZ

• Pare feu personnel

(3)

Pare-feu

Introduction:

Chaque ordinateur connecté à internet est exposé aux attaques de pirates.

La méthodologie généralement employée par les pirates consiste à scruter le réseau (en envoyant des paquets de données de manière aléatoire) à la recherche d'une machine connectée, puis à chercher une faille de sécurité afin de l'exploiter.

Cette menace est d'autant plus grande que la machine est connectée en permanence à internet pour plusieurs raisons :

•La machine cible est susceptible d'être connectée sans pour autant être surveillée

•La machine cible est généralement connectée avec une plus large bande passante

•La machine cible ne change pas (ou peu) d'adresse IP.

3 S. LAZAAR, ENSA

(4)

Un pare-feu (coupe-feu, garde-barrière - firewall), est un système permettant de protéger un ordinateur des intrusions provenant d'internet.

Le pare-feu est un système permettant de filtrer les paquets de données

échangés avec le réseau, il s'agit ainsi d'une passerelle filtrante comportant au minimum les interfaces réseau suivante :

• une interface pour le réseau à protéger (réseau interne)

• une interface pour le réseau externe

(5)

Les attaques contre les firewalls

• La première étape lors d'une attaque est de déterminer les règles actives sur le pare-feu.

• Le but est simple : savoir quels ports ne sont pas filtrés (utiliser un scan).

• Nmap peut déterminer quels ports sont ou ne sont pas filtrés. Exemple :

[root@nowhere.net /root]# nmap 192.168.1.2

Starting nmap V. 2.54BETA31 ( www.insecure.org/nmap/ )

Interesting ports on (192.168.1.2) : (The 1549 ports scanned but not shown below are in state : closed)

Port State Service 21/tcp filtered ftp 22/tcp filtered ssh

111/tcp open sunrpc 515/tcp open printer 1024/tcp open kdm

Nmap run completed -- 1 IP address (1 host up) scanned in 1 second

Les ports 21 (ftp) et 22 (ssh) sont filtrés. S. LAZAAR, ENSA 5

(6)

Le système firewall est un système logiciel, reposant parfois sur un matériel réseau dédié, constituant un intermédiaire entre le réseau local (ou la machine locale) et un ou plusieurs

réseaux externes.

Il est possible de mettre un système pare-feu sur n'importe quelle machine et avec n'importe quel système pourvu que :

–La machine soit suffisamment puissante pour traiter le traffic ;

–Le système soit sécurisé ;

(7)

De quoi protège un pare-feu?

Voici les principaux problèmes contre lesquels un pare-feu correctement configuré peut vous protéger:

• Les chevaux de Troie et autres logiciels espions qui tentent de lire des données à votre insu sur votre PC, voire de le commander à distance.

• L'accès par une "porte dérobée":

de nombreux programmes possèdent ce que l'on appelle des

"portes dérobées" ("backdoor") ouvrant un accès de l'extérieur.

D'autres prévoient un service de télémaintenance dont il peut être fait un usage abusif. Le pare-feu peut y faire obstacle.

• Les bombes e-mail sont des attaques durant lesquelles un utilisateur reçoit encore et toujours le même mail. Le pare-feu peut les contrer.

• Les virus: les pare-feu peuvent aussi contribuer à protéger un réseau contre les virus. Cela ne dispense pas pour autant l'utilisateur ayant un pare-feu de prendre les mesures de prévention d'usage.

7 S. LAZAAR, ENSA

(8)

Fonctionnement d'un système pare-feu

Un système pare-feu contient un ensemble de règles prédéfinies permettant:

D'autoriser la connexion (allow)

De bloquer la connexion (deny)

De rejeter la demande de connexion sans avertir l'émetteur (drop).

L'ensemble de ces règles permet de mettre en œuvre une méthode de filtrage dépendant de la politique de sécurité adoptée par l'entité.

On distingue habituellement deux types de politiques de sécurité permettant :

• soit d'autoriser uniquement les communications ayant été explicitement autorisées :

"Tout ce qui n'est pas explicitement autorisé est interdit".

(9)

Le filtrage simple de paquets

Un système pare-feu fonctionne sur le principe du filtrage simple de paquets « stateless packet filtering ».

Il analyse les en-têtes de chaque paquet de données échangé entre une machine du réseau interne et une machine extérieure.

Ainsi, les paquets de données échangées entre une machine du réseau extérieur et une machine du réseau interne transitent par le pare-feu et

possèdent les en-têtes suivants, systématiquement analysés par le firewall :

adresse IP de la machine émettrice ;

adresse IP de la machine réceptrice ;

type de paquet (TCP, UDP) ;

numéro de port (un port est un numéro associé à un service ou une application réseau).

Le type de paquet et le numéro de port donnent une indication sur le type de service utilisé.

9 S. LAZAAR, ENSA

(10)
(11)

...

Les ports reconnus (dont le numéro est compris entre 0 et 1023) sont associés à des services courants.

(les ports 25 et 110 sont par exemple associés au courrier électronique, et le port 80 au Web).

La plupart des dispositifs pare-feu sont au minimum configurés de manière à filtrer les communications selon le port utilisé.

• Il est généralement conseillé de bloquer tous les ports qui ne sont pas indispensables (selon la politique de sécurité retenue).

• Le port 23 est par exemple souvent bloqué par défaut par les dispositifs pare-feu car il correspond au protocole Telnet

• Les données échangées par Telnet ne sont pas chiffrées, ce qui signifie qu'un individu est susceptible d'écouter le réseau et de voler les éventuels mots de passe circulant en clair.

11 S. LAZAAR, ENSA

(12)

...

(13)

Le filtrage dynamique

Le filtrage simple de paquets ne s'attache qu'à examiner les paquets IP

indépendamment les uns des autres, ce qui correspond au niveau 3 du modèle OSI.

La plupart des connexions reposent sur le protocole TCP, qui gère la notion de session, afin d'assurer le bon déroulement des échanges.

De nombreux services (le FTP par exemple) initient une connexion sur un port statique, ouvrent dynamiquement (manière aléatoire) un port afin d'établir une session entre la machine faisant office de serveur et la machine cliente.

Ainsi, il est impossible avec un filtrage simple de paquets de prévoir les ports à laisser passer ou à interdire.

Pour y remédier, le système de filtrage dynamique de paquets est basé sur

l'inspection des couches 3 et 4 du modèle OSI, permettant d'effectuer un suivi des transactions entre le client et le serveur.

Le terme anglo-saxon est « stateful inspection » ou « stateful packet filtering »,

« filtrage de paquets avec état ».

13 S. LAZAAR, ENSA

(14)

Plus de précision:

• Pour le protocole Ftp (et les protocoles fonctionnant de la même façon), il faut gérer l'état de deux connexions.

• En effet, le protocole Ftp, gère un canal de contrôle établi par le client, et un canal de données établi par le serveur.

• Le Firewall devra donc laisser passer le flux de données établi par le serveur.

• Ce qui implique que le Firewall connaisse le protocole Ftp, et tous les protocoles fonctionnant sur le même principe.

• Cette technique est connue sous le nom de filtrage dynamique (Stateful Inspection) et a été inventée par Checkpoint

(15)

...

Un dispositif pare-feu de type « stateful inspection » est capable d'assurer un suivi des échanges, i.e de tenir compte de l'état des anciens paquets pour

appliquer les règles de filtrage.

De cette manière, à partir du moment où une machine autorisée initie une connexion à une machine située de l'autre côté du pare-feu, les paquets

transitant dans le cadre de cette connexion seront implicitement acceptés par le pare-feu.

Si le filtrage dynamique est plus performant que le filtrage de paquets basique, il ne protège pas pour autant de l'exploitation des failles

applicatives, liées aux vulnérabilités des applications.

Or ces vulnérabilités représentent la part la plus importante des risques en terme de sécurité.

15 S. LAZAAR, ENSA

(16)

Le filtrage applicatif

•Le filtrage applicatif permet de filtrer les communications application par application.

•Le filtrage applicatif opère au niveau 7 (couche application) du modèle OSI, contrairement au filtrage de paquets simple (niveau 3).

•Le filtrage applicatif suppose une connaissance des protocoles utilisés par chaque application.

.

• Le filtrage applicatif suppose donc une bonne connaissance des applications présentes sur le réseau, et notamment de la manière dont elle structure les données échangées (ports, etc.).

(17)

PROXY:

Le proxy est un intermédiaire entre les machines du réseau

interne et le réseau externe, subissant les attaques à leur place.

• Le filtrage applicatif permet la destruction des en-têtes

précédant le message applicatif, ce qui permet de fournir un niveau de sécurité supplémentaire.

Il s'agit d'un dispositif performant, assurant une bonne protection du réseau.

•En contrepartie, une analyse fine des données applicatives requiert une grande puissance de calcul et se traduit donc souvent par un ralentissement des communications, chaque paquet devant être finement analysé.

• Le proxy doit nécessairement être en mesure d'interpréter une vaste gamme de protocoles et de connaître les failles afférentes pour être efficace.

17 S. LAZAAR, ENSA

(18)

Plus de précision:

Il faut nuancer la supériorité du filtrage applicatif par rapport à la technologie Stateful:

Les proxys doivent être paramétrés suffisamment finement pour limiter le champ d'action des attaquants.

ce qui nécessite une très bonne connaissance des protocoles autorisés à traverser le firewall.

Un proxy est plus susceptible de présenter une faille de sécurité

permettant à un pirate d'en prendre le contrôle, et de lui donner un accès sans restriction à tout le système d'information.

(19)

Un serveur proxy (serveur mandataire») est une machine intermédiaire entre les ordinateurs d'un réseau local

(utilisant parfois des protocoles autres que le protocole TCP/IP) et internet.

La plupart du temps le serveur proxy est utilisé pour le web, il s'agit alors d'un proxy HTTP.

Il peut exister des serveurs proxy pour chaque protocole applicatif (FTP, etc.).

19 S. LAZAAR, ENSA

(20)

Fonctionnement d'un proxy:

il s'agit d'un serveur "mandaté" par une application pour effectuer une requête sur Internet à sa place:

Lorsqu'un utilisateur se connecte à internet à l'aide d'une application cliente configurée pour utiliser un serveur proxy, celle-ci va se connecter en premier lieu au serveur proxy et lui donner sa requête.

Le serveur proxy va se connecter au serveur que l'application cliente cherche à joindre et lui transmettre la requête.

Le serveur va ensuite donner sa réponse au proxy, qui va à son tour la transmettre à l'application cliente.

(21)

Mise en place d'un serveur proxy:

Le proxy le plus répandu est Squid, un logiciel libre disponible sur Unix, Windows et Linux.

Squid est un logiciel permettant la réalisation d'un cache pour les clients web. Squid peut aussi jouer le rôle de filtre http.

* Cache : espace où l'on stocke les pages les plus visitées

Squid est un logiciel protégé par la GPL (Gnu Public Licence).

Son url est http://www.squidguard.org

• Squid est un cache proxy :

Squid agit comme un agent qui reçoit des requêtes de clients, les transmet au

serveur Internet concerné et stocke l'information retournée par le serveur Internet.

Si l'information est demandée plusieurs fois, alors le contenu stocké sera retourné aux clients, ce qui réduit la bande passante utilisée et accélère les opérations.

21 S. LAZAAR, ENSA

(22)

Notion de pare-feu personnel

Dans le cas où la zone protégée se limite à l'ordinateur sur lequel le firewall est installé on parle de firewall personnel (pare-feu personnel).

Un firewall personnel permet de contrôler l'accès au réseau des applications installées sur la machine, et notamment empêcher les attaques du type cheval de Troie, i.e des

programmes nuisibles ouvrant une brêche dans le système afin de permettre une prise en main à distance de la machine par un pirate informatique.

Le firewall personnel permet de repérer et d'empêcher

(23)

Les limites des firewalls

Un système pare-feu n'offre bien évidemment pas une sécurité absolue.

Les firewalls n'offrent une protection que dans la mesure où l'ensemble des communications vers l'extérieur passe

systématiquement par leur intermédiaire et qu'ils sont correctement configurés.

• Ainsi, les accès au réseau extérieur par contournement du firewall sont autant de failles de sécurité.

C'est notamment le cas des connexions effectuées à partir du réseau interne à l'aide d'un modem ou de tout moyen de

connexion échappant au contrôle du pare-feu.

23 S. LAZAAR, ENSA

(24)

Les limites des firewalls

L'introduction de supports de stockage de l'extérieur sur des machines internes peut porter fortement préjudice à la politique de sécurité globale.

Afin de garantir un niveau de protection maximal, il est

nécessaire d'administrer le pare-feu et de surveiller son journal d'activité pour détecter les tentatives d'intrusion et les anomalies.

Il est recommandé d'effectuer une veille de sécurité (utilisation

d’alertes de sécurité) afin de modifier le paramétrage de son

dispositif en fonction de la publication des alertes.

(25)

Zone démilitarisée

DMZ désigne la zone démilitarisée qui sépare la Corée du Nord de la Corée du sud sur 30 km. Elle assure que chacun des deux camps pourra apercevoir une manœuvre de l'ennemi de pénétration de la zone. C'est ce que l'on nomme un no man's land au Royaume-Uni et un glacis en France.

En sécurité informatique, une zone démilitarisée (DMZ) est un sous-réseau isolé par un pare-feu.

Ce sous-réseau contient des machines se situant entre le LAN et le WAN.

La DMZ permet à ses machines d'accéder à Internet et/ou de publier des services sur Internet.

En cas de compromission d'une machine, l'accès vers le réseau interne sera interdit.

Elle est utilisée dans le cadre d'un routage de type NAT, toutes les connexions non redirigées vers les ports définis sont redirigées vers la DMZ.

25 S. LAZAAR, ENSA

(26)
(27)

Architectures sécurisées:

Architecture « accès DMZ via le pare-feu »

• connecter directement le serveur web de l’entreprise sur une des interfaces réseau du pare-feu.

27 firewall

S. LAZAAR, ENSA

(28)

Architecture sécurisée:

Un firewall a en général 3 cartes réseau:

• Une reliée au routeur connectée à Internet,

• une connectée à la DMZ,

• la dernière connectée au LAN local.

(29)

Les firewalls matériels

•Ils se trouvent souvent sur des routeurs achetés dans le commerce par de grands constructeurs comme Cisco ou Nortel.

•Intégrés directement dans la machine, ils font office de « boite noire », et ont une intégration parfaite avec le matériel.

•Leur configuration est souvent relativement ardue, mais leur avantage est que leur interaction avec les autres fonctionnalités du routeur est simplifiée de par leur présence sur le même équipement réseau.

•Souvent relativement peu flexibles en terme de configuration, ils sont aussi peu vulnérables aux attaques, car présent dans la « boite noire » qu'est le routeur.

•De plus, étant souvent très liés au matériel, l'accès à leur code est assez difficile, et le constructeur a eu toute latitude pour produire des système de codes « signés » afin d'authentifier le logiciel (système RSA ou assimilés).

29 S. LAZAAR, ENSA

(30)

Pare feu sous Netfilter

Voir note de TP

(31)

S. LAZAAR, ENSA 31

• Netfilter est un filtre de paquets intégré dans le noyau Linux.

Il est composé de tables qui indiquent les traitements qui doivent être appliqués sur les paquets passant par les interfaces réseau.

• La commande "iptables" sert à manipuler ces tables et donc à configurer Netfilter.

• Netfilter permet d'effectuer deux types de traitements différents :

le filtrage, géré par la table filter, qui permet d'accepter ou de rejeter des paquets en fonction de la politique de sécurité de la machine

la translation d'adresses, (NAT) qui permet de modifier l'adresse source ou destination des paquets, pour partager des adresses IP entre plusieurs machines, et qui est gérée par la table nat.

(32)

• Netfilter possède 5 points d'ancrage au niveau de la pile IP :

PREROUTING, qui intercepte tous les paquets entrants par les interfaces ;

INPUT, en coupure des paquets destinés à la machine locale ;

FORWARD, en coupure du trafic à router d'une interface vers une autre ;

OUTPUT, en coupure des paquets émis depuis la machine locale ; POSTROUTING, qui intercepte tous les paquets sur le point de sortir

(33)

S. LAZAAR, ENSA 33

Les grandes Fonctionnalités :

* Gestion dynamique sur les ports

• Analyse des numéros de séquence permettant d'éviter les TCP session hijacking.

* Anti-Spoofing (

* La modification des flags

* Limitation du nombre de paquets / sec (évite les dos) Le fonctionnement des trois tables netfilter

* La table de filtrage Filter est composée des règles INPUT, OUTPUT , FORWARD

* la table de translation d'adresse avec les règles : PREROUTING, OUTPUT, POSTROUTING

(34)

Utilisation de iptables

Si vous avez déjà modifié la configuration et que vous voulez la réinitialiser:

iptables -F iptables -X :

iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP

ou bien au contraire vous êtes super confiant iptables -A OUTPUT -j ACCEPT

(35)

S. LAZAAR, ENSA 35

Machine Linux

DMZ LAN

192.168.1.2

192.168.1.1

192.168.2.2

192.168.2.1

Exemple d’architecture à sécuriser par netfilter

(36)

>> Routeur :

Afin d’activer la fonctionnalité du rouage, on modifie le fichier virtuel du noyau : /proc/sys/net/ipv4/ip_forward tout en tapant la commande :

Echo 1 > /proc/sys/net/ipv4/ip_forward

Références

Documents relatifs

— Difficulté pour gérer certains protocoles : Certains protocoles sont particulièrement délicats à gérer à l’aide de cette technique comme FTP (le suivi des échanges FTP est

L’année de M1 comprend des cours et des travaux dirigés pour un volume de 630 heures par an soit 35 heures en moyenne par semaine avec 9 semaines par périodes à l’université...

Préférez un pare-feu nouvelle génération capable d’agir comme une passerelle de segmentation pour l’implémentation d’une architecture « Zero Trust ». Le Zero Trust

- Nous allons nous concentrer sur le problème de Cauchy et nous allons voir des méthodes d’approximation de type Euler, et Runge Kutta. - Par soucis de simplicité, nous allons

un sornrnaire non exhaustif de I'existant 6 Madagascar relattf A la transmission de donnees et certaines experiences vecues dans ce dornalne: puis, cornpte tenu de

Nous savons maintenant envoyer et recevoir des paquets, mais pour progresser dans notre compréhension des outils réseau, il nous faudrait lire et décortiquer leurs échanges de

Vous devez écrire un programme qui prend une chaîne de caractères en arguments, composée de mots séparés par des espaces (un seul espace entre deux mots), et qui doit remplacer

Le bloc de cours, composante structurelle d’un segment d’un programme, est un. regroupement de cours en fonction de leur caractère obligatoire ou