Beruflich Dokumente
Kultur Dokumente
Réseaux
- Parfeux-
Pourquoi un pare-
pare-feu?
• Définition: Programme, ou un matériel, chargé de protéger du monde
extérieur en contrôlant tout ce qui se passe, et surtout tout ce qui ne doit
pas circuler entre internet et le réseau local privé
privé.
Université de Paris 5
© Ahmed Mehaoua - 2
Master 1 - Informatique
Analogie avec une ville fortifiée
• Ville
– Population et biens à protéger de l’attaque de bandes de brigands
• Protection
– Enceinte (cloison) avec un nombre limité des points de passage
dont on contrôle l’accès
Université de Paris 5
© Ahmed Mehaoua - 3
Master 1 - Informatique
Pourquoi un pare-
pare-feu?
• Définition: Programme, ou un matériel, chargé de protéger du monde
extérieur en contrôlant tout ce qui se passe, et surtout tout ce qui ne doit
pas circuler entre internet et le réseau local privé
privé.
• Pourquoi un pare-feu:
– Contrôle: gérer les connexions sortantes à partir du réseau local
– Sécurité: protéger les réseaux internes des intrusions venant de l’extérieur
– Vigilance: surveiller et tracer le trafic entre le réseau local et internet
• Rôle principale: séparation et protection du réseau privé et INTERNET
– Limiter les accès: filtrage, masquage et le relais
– Empêcher les attaques, tout en laissant passer le trafic utile
– Permet de bloquer les backdoors, les spyware et certains vers
Université de Paris 5
© Ahmed Mehaoua - 4
Master 1 - Informatique
Relations intérieur <-
<-> extérieur
Besoin de contrôler l’accès
Empêcher que n
n’importe
importe quel utilisateur puisse accéder à
n’importe quelle donnée
Politique d’autorisation
• 4 Stratégies:
1 Tout autoriser
1.
2. Tout interdire
3. Tout autoriser et interdire ce qui est dangereux
• Déconseillé
4. Tout couper et autoriser ce qui est utile
• La L b bonne solution
l ti
Université de Paris 5
• Ce qui n’est pas explicitement permis est interdit
Master 1 - Informatique
© Ahmed Mehaoua - 5
Filtrage par le pare-
pare-feu
• Tous les trafics (entrants et sortants) doivent passer par le pare-feu
– Analyse chaque paquet (@IP, ports, protocoles, etc.)
– Résultat de ll’analyse:
analyse: Accepter ou rejeter selon certaines conditions
• Seul le trafic autorisé par les politiques de sécurité pourra traverser le pare-
feu
• M
Masquage d adresses:
des d substitution
b tit ti ddes IP src par soit
it sa propre IP
IP, soit
it
une @IP d’un ensemble d’@IP libre
• Le Firewall est un des outils de réalisation de la politique de sécurité
• Il ne suffit pas à bien protéger le réseau tout seul
– Aucune efficacité pour les délits perpétrés à l’intérieur de l’entreprise
• Un Firewall n’est pas un antivirus (il faut le protéger contre les infections
virales)
• Il est sujet à des menaces (intrusion, modification des configs et des traces
de journalisation)
j )
– Il doit être accompagné d’outils, de mesures et de procédures de sécurité
– Connaissance des technologies de réseau et leur faiblesses
– Connaissance des menaces: apprendre, analyser, prévenir et corriger les vulnérabilités
Université de Paris 5
© Ahmed Mehaoua - 6
Master 1 - Informatique
Filtrage par paquet
• Le filtrage est constitué d’une liste de règles
– basées sur les entêtes des paquets
• S’il y a une correspondance,
d lla règle
è l estt appliquée
li é ((accepter/rejeter)
t / j t )
• Sinon, la politique par défaut est appliquée:
– Rejet: ce que l’on ne permet pas expressément est interdit
– T
Transmission:
i i on permet ce quii n’est
’ pas expressément
é iinterdit.
di
• L filt
Le filtrage estt constitué
tit é d’une
d’ liliste
t dde règles
è l
– basées sur les entêtes des paquets
• S’il y a une correspondance, la règle est appliquée (accepter/rejeter)
• Sinon, la politique par défaut est appliquée:
– Rejet: ce que l’on ne permet pas expressément est interdit
– Transmission: on permet ce qui n’est pas expressément interdit.
Université de Paris 5
© Ahmed Mehaoua - 7
Master 1 - Informatique
DMZ
• Définition DMZ: une zone démilitarisée (DMZ) est un sous-réseau
se trouvant entre le réseau local et le réseau extérieur
• Propriétés:
– Les connexions à la DMZ sont autorisées de n’importe où.
– Les connexions à partir de la DMZ ne sont autorisées que vers l’exterieur.
• Intérêts:
– Rendre des machines accessible à partir de l’extérieur
– Serveur Web, EMAIL, DNS, etc.
Université de Paris 5
© Ahmed Mehaoua - 8
Master 1 - Informatique
Historique sous Linux
• 3 générations du parefeu:
1. Ipfw (IP Firewall) : filtrage basique, peu flexible et inefficace pour les
configurations complexes (jusqu’à la version 2.1.102 du noyau)
2. IP chains: amélioration d’ipfw tjrs en utilisation (2.2.0 < version < 2.4)
3 Netfilter (commande iptables): améliorations de filtrage et de translation
3.
d’adresses par rapport à ipchains (à partir des noyaux 2.4)
– Iptables: c’est un parefeux qui permet de contrôler les paquets avec le système
Linux.
– Rejeter les paquets non autorisés par les règles
– Router les paquets d’un réseau envers un autre
– Gestion du NAT/PAT, modification des entêtes
– Traçage (audit/log)
– Filtrage par @IP source ou destination, port source ou destination
– Filtrage par protocole (TCP,
(TCP UDP)
– Filtrage basé sur les couches réseau et transport (L3 & L4)
– Filtrage basé sur les @ MAC (possible dans le noyau 2.6)
Université de Paris 5
© Ahmed Mehaoua - 9
Master 1 - Informatique
Fonctionnalités
Trois Fonctionnalités:
Université de Paris 5
© Ahmed Mehaoua - 11
Master 1 - Informatique
Principe de fonctionnement
Université de Paris 5
© Ahmed Mehaoua - 13
Master 1 - Informatique
Filtrage: Exemples (1)
( )
– Effacer de toutes les règles: Iptables –F
– Filtrage basé sur le protocole: iptables –A INPUT –p udp –dport 514 –j ACCEPT
• Iptables
I t bl –p icmp
i –help
h l : pour plus
l d de dét
détails
il sur iicmp
– @ MAC: iptables
p –A INPUT –p
p tcp
p –m mac --mac-source 00:bb:aa:cc:ed:08 –jj DROP
– Port redirection: iptables –t nat –A PREROUTING –p tcp –dport 2323 –j REDIRECT –to-ports 23
Université de Paris 5
© Ahmed Mehaoua - 14
Master 1 - Informatique
Filtrage: Exemples (2)
( )
• Changement de la politique par défaut: iptables –P FORWARD DROP
• Pour éviter l’attaque « SYN flooding », accepter 5 segments TCP ayant le bit SYN
positionné par seconde
iptables –A INPUT –p tcp –syn –m limit --limit 5/s –j ACCEPT
2. route add –net 10.0.0.0/24 netmask 255.255.255.0 gw 192.168.1.20 && route –nr
3. nano /etc/sysctl.conf
y et modifier la valeur du net.ipv4.ip_forward
p p_ de 0 à 1
Université de Paris 5
© Ahmed Mehaoua - 15
Master 1 - Informatique
DoS, DDoS: SYN Flooding
• SYN FLOOD: inondation SYN
• Un attaquant harcèle le serveur avec TCP SYN (demande d’ouverture d’une
connexion)
• Mais il ne répond pas au message final
• TCP instaure une connexion semi-ouverte ppour q
quelques
q minutes ((~75s))
• Les messages SYN peuvent engorger le module TCP
SY AC
SY + A
N K
N CK
SYN
SYN+ACK
ACK
N victime
i ti
SY ACK
N+ 182.108.0.7
SY K
AC
DoS
K CK
N YN
AC + A
SY S
Université de Paris 5
© Ahmed Mehaoua - 16
Master 1 - Informatique DDoS
Protection contre SYN Flooding
• SIMPLE:
• Limitation de nb de SYN envers un serveur
• Avancé
• Le Pare-Feu temporise les paquets SYN et génère lui-même un SYN-ACK
• C
C’est
est seulement s’il
s il reçoit un ACK qu
qu’ilil envoie au serveur le SYN original
Université de Paris 5
© Ahmed Mehaoua - 17
Master 1 - Informatique
Information sur les vulnérabilités
• Vulnérabilités associées aux protocoles
• Usurpation d’adresse pour déjouer le contrôle d’accès
• @ MAC,
MAC @IP (IP spoofing),
fi ) N° ded portt
• IP Address Spoofing : on change la source IP d’un paquet
• L’attaquant ne voit pas les réponses
• Solution: ne pas acheminer hors d’un
d un réseau de paquets avec une @ source n’appartenant
n appartenant
pas à ce réseau
Université de Paris 5
© Ahmed Mehaoua - 18
Master 1 - Informatique
Information sur les vulnérabilités
• Vulnérabilités liées à ICMP
• 32 types de messages ICMP. Qui les connaît tous ?
• Echo request (ping) – echo reply (pong), etc.
• Très utilisé pour des attaques par déni de service
• 8 ping simultanés de taille 1000octets saturent une linge à 64 kb/s
• Attaque SMURF: envoi de messages ping vers une adresse de diffusion et renvoi
des réponses vers une victime (yahoo en 2000)
• Pilotage d’attaque DDoS (Distributed Denial of Service) dépuis l’extérieur d’un
site avec des messages (echo/reply)
ly
ep
R
P
M
ICMP request
IC
@IP dst: 193.108.117.255
@IP src:141.115.64.20
Université de Paris 5
© Ahmed Mehaoua - 19
Master 1 - Informatique Source Victime
192.168.0.7 141.115.64.20
Linux comme routeur
1. echo 1 > /proc/sys/net/ipv4/ip_forward
2. Supposons que le réseau privé est connecté à l’interface eth1, et le réseau publique à eth0
– /sbin/iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT (laisser l’extérieur
répondre à nos requêtes)
– /sbin/iptables -A
A FORWARD -ii eth1 -o
o eth0 -jj ACCEPT
Université de Paris 5
© Ahmed Mehaoua - 20
Master 1 - Informatique
NAT
• Network Address Translation (RFC 3022)
• Les @IP publiques disponible sont rare
• P t
Partage d’une
d’ seule
l @ IP entre
t plusieurs
l i machines
hi d
dans un LAN
• Ex: réseau domestique avec N ordinateurs et une seule adresse
• Pour 100 postes, une seule adresse publique
• NAT est une solution à court terme au problème du manque d’adresses
Université de Paris 5
© Ahmed Mehaoua - 21
Master 1 - Informatique
NAT
• À l’intérieur du LAN, chaque machine a une adresse IP
• À l’extérieur, une adresse IP publique est utilisée
• LAN <== Boîtier
B îti NAT ==> INTERNET
– Boîtier NAT: conversion des adresses dans les paquets entrant/sortant de
l’internet
– Sens LAN ==> INTERNET: correspondance non ambiguë
– Sens INTERNET ==> INTRANET: unicité ?
– Paquet contenant l’@
l @ IP source
– Pour enlever l’ambiguité: changement du numéro de port src du protocole
de transport (changement des: @IP + N° de port)
Université de Paris 5
© Ahmed Mehaoua - 22
Master 1 - Informatique
NAT
Université de Paris 5
© Ahmed Mehaoua - 23
Master 1 - Informatique
Fonctionnalités NAT
Université de Paris 5
© Ahmed Mehaoua - 24
Master 1 - Informatique
MASQUERADE
Université de Paris 5
© Ahmed Mehaoua - 25
Master 1 - Informatique
Transfert de ports
Université de Paris 5
© Ahmed Mehaoua - 26
Master 1 - Informatique
Suivi des connexions
• Suivi des connexions disponible (conntrack)
– Quatre états possibles pour une connexion :
1. NEW: nouvelle connexion établie
2. ESTABLISHED: la connexion analysée est déjà établie
3. RELATED: La connexion est en relation avec une connexion déjà
établie
4. INVALID: le paquet reçu n’appartient à aucune des trois catégories
précédents.
• Exemples:
– Autoriser tous paquets émis concernant des connexions déjà établies
iptables –A OUTPUT –m state --state ESTABLIDED, RELATED –j ACCEPT
– Relayer tous paquets concernant des nouvelles connexions sur le port 22
iptables –A FORWARD –p tcp --dport 22 –m state --state NEW –j ACCEPT
Université de Paris 5
© Ahmed Mehaoua - 27
Master 1 - Informatique
Journalisation et Diagnostic
• Traces iptables : possibilité de tracer certaines actions
iptables
• Les logs
g p
permettent de retrouver les tentatives d’attaque
q
• Exemple:
– iptables –A OUTPUT –jj LOG ((nano /etc/syslog.conf)
y g )
– iptables –A INPUT –j LOG
– iptables –A FORWARD –j LOG
• Rajouter une régle pour traces les paquets rejetés
– Iptables –N LOG_DROP
– Iptables
I t bl –A A LOG_DROP
LOG DROP –jj LOG –log-prefix
l fi `ssh
h access attempt
tt t`
iptables –A LOG_DROP –p tcp –dport 22 –j DROP
Université de Paris 5
© Ahmed Mehaoua - 28
Master 1 - Informatique