Vous êtes sur la page 1sur 8

Filtrage de paquets: principe

Filtrage du trafic entrant et du trafic sortant


Le firewall laisse passer certains p q p paquets et rejette dautres p q j paquets selon sa politique de scurit

Chapitre 8
Contrle daccs, Filtrage et ACL
Rseau interne LAN Trafic sortant Trafic entrant Rseau externe Internet

Firewall Fi ll matriel ou logiciel

Filtrage de paquets: principe


Le filtrage se fait en analysant les en-ttes des protocoles, en p priorit IP, UDP et TCP. , En gnral, on dfinit une rgle de filtrage en considrant
1. 2. 3. 4. 5. 5 6. 7.

Exemple de rgles de filtrage


Politique: Autoriser lextrieur accder au service web sur le rseau
priphrique

Internet
Adresse IP source Adresse IP destination Port source P Port destination Protocole encapsul (ICMP UDP TCP) (ICMP, UDP, TCP ) Flag ACK (de TCP) Type du message ICMP
Routeur externe Routeur interne

192.168.22.35
Web/80 TCP

Rseau Priphrique

Rseau Priv
Prot
TCP TCP Tous

Rgle Direction paquet


A Sortant Entrant Toutes

IP Source
192.168.22.35 Toutes Toutes

IP Dest
Toutes 192.168.22.35 Toutes

Port Source
80 > 1023 Tous

Port Dest
> 1023 80 Tous

ACK=1
Oui -----

Action
Autoriser Autoriser Refuser

A chaque rgle de filtrage est associ une action:


Laisser passer le paquet ou L i l t Dtruire/Rejeter le paquet
3

B C

Types de filtrage
Filtrage sans tat: Stateless
Filtrage simple: Regarder chaque paquet part et le g g comparer une liste de rgles prconfigures (ACL) Implment sur les routeurs et les systmes dexploitations

Types de filtrage
Filtrage tat: Statefull
Tracer les sessions et les connexions dans des tables d'tats internes au Firewall Dcider en fonction des tats de connexions Exemple: vrifier que chaque paquet d'une connexion est bien la suite du prcdent paquet et la rponse un paquet dans l'autre sens Lapplication des rgles est possible sans lire les ACL L li ti d l t ibl li l chaque fois (les paquets dune connexion actives seront accepts)
5 6

Limites
Utiliser un trop grand nombre de rgles pour que le Firewall offre une relle protection Sensibles aux attaques IP spoofing / IP flooding; attaques DoS

Types de filtrage
Filtrage applicatif (firewall de type proxy )
Ralis au niveau de la couche Application Permet dextraire les donnes du protocole applicatif p pp pour les tudier Chaque protocole est filtr par un processus ddi

Processus de dveloppement de filtres


Dfinition des rgles de filtrage
Utiliser le maximum de critres (@IP, port, ACKetc) (@IP port ACK etc) Permet de mieux lutter contre les attaques

Pour chaque service interne et externe


Dfinir des rgles pour autoriser les utilisateurs interne accder des services externes Dfinir des rgles pour autoriser des utilisateurs externes accder des serveurs (services) sur le rseau interne

Limites
Problmes de performance pour les rseaux grand trafic
7

Pour n r i P r un service autoriser t ri r


Accepter le flux dans les deux sens (client serveur et serveur client)

Pour un service bloquer


Il suffit de bloquer le flux du client serveur
8

Processus de dveloppement de filtres


Exemple:
Soit la politique: Accepter HTTP en entre et en sortie et rien dautre.
Autoriser les utilisateurs internes accder aux serveurs web externes Autoriser les utilisateurs externes accder au serveur web interne
A B C D E Rgle Direction g Entrant

Processus de dveloppement de filtres


Exemple de rgles
@ source Externe @ Dest. 192.168.22.35 Externe Externe Interne Toutes Protocole Port src. TCP TCP TCP TCP Tous >1023 80 >1023 80 Tous Port dest. 80 >1023 80 >1023 Tous ACK=1 --oui --oui --Action Autoriser Autoriser Autoriser Autoriser Refuser

Sortant 192 168 22 35 192.168.22.35 Sortant Entrant Toutes Interne Externe Toutes

Objectif : dvelopper les rgles correspondantes


Web/80 TCP

Internet

192.168.22.35
Web/80 TCP

Web/80 TCP

Internet
A B D

192.168.22.35
Web/80 TCP

Rseau Priphrique

Client externe Client interne

Rseau Priphrique
C

Rseau Priv
9

Rseau Priv

10

Firewall matriel / logiciels


Firewalls matriels
Routeurs filtrants Firewalls sous forme de botiers

Firewalls matriels / logiciels Fi ll t i l l i i l

Firewall logiciels
Firewall professionnels F ll f l
Firewall libre : Netfilter / iptables Firewall commercial : CheckPoint Firewall 1 ASA, PIX Firewall-1, ASA

Firewall personnels
Kerio, Kerio Zone Alarm Alarm

11

12

Firewall matriel: Routeurs filtrants


Rseau interne ( LAN ) Rseau externe (Internet)

Firewall matriel: Routeurs filtrants


Inconvnients
Accs des parties limites des enttes des paquets. Aucune information de l tat d une communication de bout en bout bout. IP Spoofing Ready : pas dauthentification de lorigine IP-Spoofing d authentification l origine du paquet: ne sait pas si l auteur du paquet est bien celui q qui lmet Sensibles aux attaques p fragmentation q par g
13 14

Un routeur filtrant
Examine chaque paquet afin de dterminer s'il doit l'acheminer ou l'abandonner Bien adapt aux PME Pas de fichiers logs et pas de statistiques

La f fonction d filtrage est implmente dans la de f l l d l plupart des routeurs du march


Sous forme de listes daccs ACL En utilisant une syntaxe spcifique par routeur

Firewall matriel: Firewall sous forme botiers


Conus uniquement pour faire du filtrage OS spcifique, associ au botier Rapidit de traitement Supportent rarement les interfaces WAN ncessit

dtre associs des routeurs pour la connectivit Exemple : E l


Cisco ASA (Adaptive Security Appliance) Cisco PIX (Private Internet eXchange)

Access Control Lists (ACL)

15

16

ACL dans les routeurs


Permet dimplmenter des rgles de filtrage dans les routeurs Contrler laccs entre diffrents rseaux Une ACL cre doit tre associe une interface du routeur o le filtrage sera excut.
Interface in (incoming: paquets entrant dans le routeur) Interface out (outcoming: paquets sortant du routeur)
inbound In access list Les paquets sont traits avant dtre rout vers linterface outbound outbound out access list Les paquets sont traits lorsquils linterface f arrivent l outbound

ACL: Processus de contrle des paquets


Un paquet est compar aux rgles de lACL dune manire squentielle TopDown La comparaison sarrte ds quun paquet vrifie lune des rgles d lACL l de Laction (permit/deny) de la (p / y) rgle trouve est applique au paquet Les ACL se terminent par une rgle deny all implicite g y p pour rejeter les paquets qui ne vrifient aucune rgle

17

18

ACL numbers Router(config)#access-list


? <1-99> <1 99> IP standard access list <100-199> IP extended access list yp <200-299> Protocol type-code access list <300-399> DECnet access list <400-499> XNS standard access list <500-599> XNS extended access list 500 599 t d d li t <600-699> Appletalk access list <700-799> 48-bit MAC address access list <800-899> IPX standard access list <900-999> IPX extended access list <1000-1099> IPX SAP access list <1100-1199> Extended 48-bit MAC address access list <1200-1299> IPX summary address access list 1200 1299 dd li t
19

Standard IP access lists (1-99)


Filtrage en se basant sur ladresse IP source uniquement Se placent prs de la destination Syntaxe
Crer la liste daccs Router(config)# access-list numro-liste-daccs {deny|permit} source [wildcard mask] [log] Associer la liste daccs une interface du routeur: Router(config)# interface [port du routeur] Router(config-if)# ip access-group numro-liste-daccs {in/out}
20

Standard IP access lists (1-99)


Syntaxe
Router(config)# access list numro liste daccs {deny|permit} source access-list numro-liste-d accs [wildcard mask] [log] Source: Hostname or A.B.C.D; any (nimporte quel hte), host (hte particulier) wildcard mask (32 bits)
Les bits 0 signifient que les mmes positions de bits doivent tre vrifies (match) Les bits 1 signifient que les bits de mmes positions sont ignors Exemples

Standard IP access lists (1-99)


Exemple:
Permettre l acheminement du trafic du rseau 192 168 1 0 lacheminement 192.168.1.0 (vers Internet et vers 172.16.0.0) Router(config)# access-list 11 permit 192.168.1.0 0 0 0 255 192 168 1 0 0.0.0.255 Router(config)# int S0 Router(config-if)# ip access group 11 out access-group Router(config)# int E1 Router(config-if)# access-group Router(config if)# ip access group 11 out
172.16.0.0

Router(config)# access-list 14 deny 192.168.16.0 0.0.0.255 (tous les htes) Router(config)# access-list 14 deny 192.168.16.0 0.0.0.127 (1re moiti) Router(config)# access-list 14 deny 192.168.16.128 0.0.0.127 (2me moiti)
21

E1 Internet S0 E0 192.168.1.0 192 168 1 0 22

Extended IP access lists


Filtrage en se basant sur:
@IP source et @IP destination Port source et port destination (filtrage par service) Type de protocole de transport (TCP, UDP)

Extended IP access lists (syntaxe)


Router(config)# access-list numro-liste-daccs {deny|permit} protocol source [source mask] destination [ [ ] [destination mask] [ p ] [operator operand] p ] Router(config)#access-list 112 deny ? <0-255> An IP protocol number eigrp Cisco's EIGRP routing protocol gre Cisco's GRE tunneling iicmp Internet Controll Message P t l I t tC t M Protocol igmp Internet Gateway Message Protocol igrp Cisco s Cisco's IGRP routing protocol ip Any Internet Protocol ipinip IP in IP tunneling nos KA9Q NOS compatible IP over IP tunneling ospf OSPF routing protocol tcp Transmission Control Protocol udp User Datagram Protocol 24

Se placent prs de la source Syntaxe


Crer la liste daccs Router(config)# access list numro liste daccs {deny|permit} protocol access-list numro-liste-d accs source [source mask] destination [destination mask] [operator operand] Associer la liste daccs une interface du routeur: Router(config)# interface [port du routeur] ( g) [p ] Router(config-if)# ip access-group numro-liste-daccs {in/out}

23

Extended IP access lists (syntaxe)


Router(config)# access-list numro-liste-daccs {deny|permit} protocol [ ] [ ] [operator operand] p ] source [source mask] destination [destination mask] [ p Router(config)#access-list 112 deny tcp ? ( g) y p A.B.C.D Source address any Any source host host A single source host Router(config)#access-list 112 deny tcp any ? A.B.C.D Destination address any Any destination host host A single destination host
25

Extended IP access lists (syntaxe)


Router(config)# access-list numro-liste-daccs {deny|permit} protocol [ ] [destination mask] [ p ] [operator operand] p ] source [source mask] destination [ Router(config)#access-list 112 deny tcp any host 172.16.30.2 ? eq Match only packets on a given port number established Match established connections fragments Check fragments gt t Match l M t h only packets with a greater port number k t ith t t b log Log matches against this entry log input log-input Log matches against this entry, including input interface entry lt Match only packets with a lower port number neq Match only packets not on a given port number precedence Match packets with given precedence value range Match only packets in the range of port numbers tos Match packets with given TOS value
26

Extended IP access lists (syntaxe)


Router(config)# access-list numro-liste-daccs {deny|permit} protocol source [ [source mask] destination [ ] [destination mask] [ p ] [operator operand] p ] Router(config)#access-list 112 deny tcp any host 172.16.30.2 eq ? daytime Daytime (13) domain Domain Name Service (53) echo Echo (7) ftp Fil ft File Transfer Protocoll (21) T f P t irc Internet Relay Chat (194) lpd Printer service (515) smtp Simple Mail Transport Protocol (25) sunrpc Sun Remote Procedure Call (111) telnet Telnet (23) www World Wide Web HTTP,80) .etc
27

Extended IP access lists


serveur FTP (TCP/21) 198.150.13.34 et permettre les autres services
Extended ACL Placer la rgle prs de la source Ecrire E i lACL dans le routeur C et lappliquer li t f d l t t l li linterface E0
Router(config)#access-list 113 deny tcp 221. 23.123.0 0.0.0.255 host 198.150.13.34 eq 21 ( g) p p Router(config)#access-list 113 permit ip 221. 23.123.0 0.0.0.255 0.0.0.0 255.255.255.255 Router(config)# int E0 Router(config-if)# ip access-group 113 in

Exemple 1: refuser laccs du rseau 221.23.123.0 au

28

Nommage des ACL


Assigner des noms aux ACL Utile lorsquon a besoin de plus de 99 ACL Exemple
Router(config)#ip access-list standard nom_liste access list nom liste Router(config-std-nacl)# deny host 172.16.2.3 Les paramtres access-list et access-list-number sont implicites Router(config)# int E0 Router(config-if)# ip access-group nom_liste out

Vrification des ACLs


La commande Show:
show access lists access-lists
Montre toutes les ACLs configur dans le routeur

show access-lists {name | number}


Montre lACL spcifi

show ip interface
Montre lACL appliqu linterface (inbound et outbound).

show running-config h i fi
Montre toutes les ACLs et les interfaces o elle sont appliques
29 30

A retenir
Assigner une seule ACL par interface, par protocole et par direction (une seule ACL inbound et une seule ACL ( outbound par interface) Lajout de nouvelle lignes se fait la fin de la liste j g Une ACL se termine par un deny any implicite une liste d accs daccs doit contenir au minimum une ligne permit Les ACL ne permettent pas de filtrer le trafic gnr par le routeur Placer les ACL standards prs de la destination Placer les ACL etendues prs d l source Pl l d de la

31

Vous aimerez peut-être aussi