les listes de controle d'accès (access-lists)

59
1 Les Listes de Controle d'Accès (ACCESS-LISTS)

Upload: tamika

Post on 23-Jan-2016

39 views

Category:

Documents


0 download

DESCRIPTION

Les Listes de Controle d'Accès (ACCESS-LISTS). 1. Généralités Listes de Controle d'Accès 2. Sécuriser l'accès au routeur 3. Dynamic Access-List - Lock and Key 4. Filtrage de sessions 5. CBAC (Context Based Access Control) 6. Alternative au Listes de Controle d'Accès. Les Access Lists. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Les Listes de Controle d'Accès (ACCESS-LISTS)

1

Les Listes de Controle d'Accès

(ACCESS-LISTS)

Page 2: Les Listes de Controle d'Accès (ACCESS-LISTS)

2

1. Généralités Listes de Controle d'Accès

2. Sécuriser l'accès au routeur

3. Dynamic Access-List - Lock and Key

4. Filtrage de sessions

5. CBAC (Context Based Access Control)

6. Alternative au Listes de Controle d'Accès

Page 3: Les Listes de Controle d'Accès (ACCESS-LISTS)

3

Les Access Lists• Généralités

• Une Liste d'Accès est une séquence d'actions d'autorisation (permit) ou d'interdiction (deny) sur des adresses ou des protocoles de couches supérieures.

• Il existe différents types de Liste d'Accès:

- Standard (Standard) - Etendue (Extended) - Nommée (Named) - Dynamiques

Transmission de paquetssur l'interface

Liste d'AccèsAccèsLigne Terminal virtuel

(IP)

Page 4: Les Listes de Controle d'Accès (ACCESS-LISTS)

4

Les Access Lists• Les numéros de Listes d'Accès

Numéro de Liste d'Accès Description

1 à 99 Access List Standard IP

100 à 199 Access List Etendue IP

200 à 299 Protocole Type-Code Access List

300 à 399 DECnet Access List

400 à 499 XNS Access List Standard

500 à 599 XNS Access List Etendue

600 à 699 Apple Talk Access List

700 à 799 Adresses MAC Acces List

800 à 899 IPX Access List Standard

900 à 999 IPX Access List Etendue

1000 à 1099 IPX SAP Access List

1100 à 1199 Adresses MAC Acces List Etendue

1200 à 1299 IPX Adresses agrégées Access list

1300 à 1399 Access List Standard IP (extension)

2000 à 2699 Access List Etendue IP (extension)

Page 5: Les Listes de Controle d'Accès (ACCESS-LISTS)

5

Les Access Lists• La syntaxe des Listes d'Accès

Router(config)#access-list access-list-number {deny|permit}source [source-widcard] [log]

Router(config)#access-list access-list-number {deny|permit}source [source-widcard] destination destination-wildcard[precedence precedence] [tos tos] [established] [log][time-range time-range-name]

Page 6: Les Listes de Controle d'Accès (ACCESS-LISTS)

6

Les Access Lists• Les Listes d'Accès nommées

• Les Access-Lists nommées ne sont pas compatibles avec les releases inférieures à la Release IOS 11.2.

• Un nom ne peut pas être utilisé pour plusieurs type d'Access-lists.

• Usuellement, seuls les filtres de routes et de paquets peuvent utiliser les Access-lists nommées.

• Utilisez no permit et no deny pour retirer des entrées individuelles de la liste

RTA(config)#ip access-list extended WEBONLYRTA(config-ext-nacl)#permit tcp any 10.0.0.0 0.255.255.255 eq 80RTA(config-ext-nacl)#deny ip any 10.0.0.0 0.255.255.255RTA(config-ext-nacl)#permit ip any anyRTA(config-ext-nacl)#^Z

RTA#show access-listsExtended IP access list WEBONLY permit tcp any 10.0.0.0 0.255.255.255 eq www deny ip any 10.0.0.0 0.255.255.255 permit ip any any

Page 7: Les Listes de Controle d'Accès (ACCESS-LISTS)

7

Les Access Lists• Rappels

• Points à considérer avant de configurer des Listes de controle d'Accès

1. Les Listes d'accès nommées ne sont pas compatibles avec des releases IOS plus anciennes que IOS 11.2.

2. Toutes les Listes d'Accès n'acceptent pas un nom. Usuellement seules les Listes d'Accès de filtres de routes et de paquets sur des interfaces peuvent utiliser un nom.

3. Une Liste d'Accès standard et une Liste d'Accès étendue ne peuvent pas avoir le même nom.

Page 8: Les Listes de Controle d'Accès (ACCESS-LISTS)

8

Les Access Lists• Configuration

• Definit une liste d'accès IP standard en utilisant un nom:

router(config)# ip access-list standard name

1. Dans le mode de configuration access-list , spécifiez une ou plusieurs conditions permi ou deny:

router(config-std-nacl)# deny| permit  {source [source-wildcard] | any}[log]

2. Exit access-list configuration mode:

router(config-std-nacl)# exit

• Liste d'Accès standard

Page 9: Les Listes de Controle d'Accès (ACCESS-LISTS)

9

Les Access Lists• Configuration

• Definit une liste d'accès IP étendue en utilisant un nom :

router(config)#ip access-list extended name

1. Dans le mode de configuration access-list , spécifiez une ou plusieurs conditions permit ou deny:

router(config-ext-nacl)# deny | permit protocol source source-wildcard destination destination-wildcard [precedence precedence] [tos tos] [established] [log] [time-range time-range-name]

2. Sortie du mode de configuration access-list :

router(config-ext-nacl)#exit

• Liste d'Accès standard

Page 10: Les Listes de Controle d'Accès (ACCESS-LISTS)

10

Les Access Lists• Les "Time-based Extended Access-list"

• Utilisation d'une "time-based Access List" depuis l'IOS release 12.01(T) avec la commande time-range

• Bénéfice de l'utilisation de "Time based" Access List :1. Permet plus de controle sur l'autorisation d'accès à des ressources pour un utilisateur2. Fixe les politiques de sécurité "time-based" suivantes :

• Périmètre de sécurité utilisant les fonctions "Cisco IOS Firewall" ou les Access Lists. • Confidentialité des données avec "Cisco Encryption Technology" ou IP Security Protocol (IPSec).

3. Fonctions de politiques de routage et mise en file d'attente améliorées4. Efficacité pour le coût de reroutage automatique de trafic5. Supporte la qualité de service (QoS), service-level agreements (SLAs) quand les fournisseurs de service peuvent changer dynamiquement le Committed Access rate (CAR).6. Controle des messages de "logging"

Page 11: Les Listes de Controle d'Accès (ACCESS-LISTS)

11

Les Access Lists• Les "Time-based Extended Access-list"

• Configuration

1. Definir un nom d'intervalle de temps: router(config)#time-range time-range-name

2. Utilisez les commandes periodic et absolute:

router(config-time-range)# periodic days-of-the-week hh:mm to[days-of-the-week] hh:mm

router(config-time-range)# absolute [start time date] [end time date]

3. Sortie du mode de configuration intervalle de temps:

router(config-time-range)#exit

Page 12: Les Listes de Controle d'Accès (ACCESS-LISTS)

12

Les Access Lists• Les "Time-based Extended Access-list"

• Configuration - Exemple

• Seules les listes d'accès nommées ou étendues IP et IPX peuvent utiliser des intervalles de temps.

• Dans la configuration ci-dessous, RTA est configuré avec la liste-d'accès nommée STRICT et deux intervalles de temps, NO-HTTP et UDP-YES: - L'instruction deny empêche le trafic web les jours de la semaine de 8h à 18h. - L'instruction permit autorise le trafic UDP le week-end de 12h à 20h

RTA(config)#time-range NO-HTTPRTA(config-time-range)#periodic weekdays 8:00 to 18:00RTA(config-time-range)#exitRTA(config)#time-range UDP-YESRTA(config-time-range)#periodic weekend 12:00 to 20:00RTA(config-time-range)#exitRTA(config)#ip access-list extended STRICTRTA(config-ext-nacl)#deny tcp any any eq http time-range NO-HTTPRTA(config-ext-nacl)#permit udp any any time-range UDP-YESRTA(config-ext-nacl)#deny udp any any range netbois-ns netbios-ssRTA(config-ext-nacl)#permit ip any any

Page 13: Les Listes de Controle d'Accès (ACCESS-LISTS)

13

Les Access Lists• Configuration de commentaires

• Rend la configuration des ACLs plus facile à lire• Disponible depuis la release 12.0.2(T) de l'IOS Cisco• Commande:

- router(config)#access-list access-list number remark remark - router(config-std-nacl)#remark remark

RTA(config)#access-list 101 remark Autorise Admin Sous-réseau Telnet vers ServeursRTA(config)#access-list 101 permit tcp 192.168.1 0.0.0.255 172.16.1.0 0.0.0.255 eq 23RTA(config)#access-list 101 deny tcp any 172.16.1.0 0.0.0.255 eq 23RTA(config)#access-list 101 remark autorise SNMP pour Admin du host uniquementRTA(config)#access-list 101 permit udp host 192.168.1.250 any eq 161RTA(config)#access-list 101 deny udp any any eq 161RTA(config)#access-list 101 permit ip any any

Page 14: Les Listes de Controle d'Accès (ACCESS-LISTS)

14

Les Access Lists• Appliquer des Access-Lists

• Les listes de contrôle d'accès sont appliquées à: - Une ou plusieurs interfaces - Pour du trafic entrant ou sortant

• Rappelez-vous que vous pouvez appliquer un liste de contrôle d'accès par protocole, par interface et par direction (in ou out)

• Les Accès-List en sortie demandent moins de temps CPU que les listes d'accès en entrées et par conséquent sont préférables.

• Commande:

- Router(config-if)#ip access-group access-list-number | access-list-name in|out

Page 15: Les Listes de Controle d'Accès (ACCESS-LISTS)

15

Les Access Lists• Appliquer des Access-Lists

• Sécuriser l'accès au routeur - Les ports "Terminal virtuel"

• Les listes d'accès étendues peuvent être utilisées pout bloquer Telnet (TCP 23) - Doivent être configurées pour chaque interface IP sur le routeur

• Appliquer une liste d'accès standard aux lignes vty est un meilleur choix.

• RTA(config)#access-list 5 permit 200.100.50.0 0.0.0.255• RTA(config)#access-list 5 permit host 192.168.1.1• RTA(config)#line vty 0 4• RTA(config-line)#access-class 5 in

PortsVirtuels(vty 0-4)

PortPhysique (E0)

0 1 24

3

Page 16: Les Listes de Controle d'Accès (ACCESS-LISTS)

16

Les Access Lists• Appliquer des Access-Lists

• Sécuriser l'accès au routeur - Accès au Serveur Web IOS

• RTA(config)#access-list 17 permit 202.206.100.0 0.0.0.255 RTA(config)#ip http server RTA(config)#ip http access-class 17

• L'application d'une access-class à un serveur HTTP IOS ne nécessite pas le mot clé in car ce service accepte uniquement des connexions entrantes.

Page 17: Les Listes de Controle d'Accès (ACCESS-LISTS)

17

Les Access Lists• Listes d'accès dynamiques - Lock and Key

• Fonctionnalité IOS qui permet aux utilisateurs d'ouvrir temporairement une porte dans un pare-feu sans compromettre les restrictions de sécurité configurées.

• Est configuré en utilisant un type de liste d'accès étendue appelé liste d'accès dynamique.

• Les utilisateurs "Lock and Key" sont typiquement des utilisateurs avec privilèges ou des administrateurs système.

• Les listes d'accès dynamiques permettent à des utilisateurs désignés d'obtenir un accès temporaire à des ressources à partir d'une adresse IP quelconque ou à partir d'une adresse IP spécifique que vous choisissez.

Page 18: Les Listes de Controle d'Accès (ACCESS-LISTS)

18

Les Access Lists• Listes d'accès dynamiques - Lock and Key

1. Vous voulez permettre à un utilisateur ou à un groupe d'utilisateurs d'accéder de manière sécurisée à un host de votre réseau protégé via Internet.

- "Lock-and-Key" authentifie l'utilisateur permet un accès limité au travers de votre routeur pare-feu mais uniquement pour ce host ou ce sous-réseau et pour une durée déterminée.

2. Vous voulez que certains utilisateurs d'un réseau distant accèdent à un host du réseau d'entreprise protégé par un pare-feu.

- "Lock and Key" requiert l'authentification des utilisateurs avant d'autoriser l'accès à des hosts protégés.

Page 19: Les Listes de Controle d'Accès (ACCESS-LISTS)

19

• Listes d'accès dynamiques - Lock and Key

Les Access Lists

• Fonctionnement

Serveur

10.1.1.1Permit 10.1.1.1 pour toute adresse IP jusqu'à ce que le temps permis soit écoulé

Ouvrir une session Telnet depuis 10.1.1.1

Username, Password ?

Utilisateur Claire, Password Csecret

Utilisateur Claire valide

Fermeture de la session Telnet

Page 20: Les Listes de Controle d'Accès (ACCESS-LISTS)

20

Les Access Lists• Listes d'accès dynamiques - Lock and Key

• Fonctionnement

IOS Cisco

4. Liste d'accès

Serveurde

FichiersServeur

TACACS+

IOS Cisco1. Initiation du Login2. Challenge

3. Réponse

5. Données

Internet

Site d'entreprise

Site distant

Page 21: Les Listes de Controle d'Accès (ACCESS-LISTS)

21

Les Access Lists• Listes d'accès dynamiques - Lock and Key

• Fonctionnement

IOS Cisco

4. Liste d'accès

Serveurde

FichiersServeur

TACACS+

IOS Cisco1. Initiation du Login2. Challenge

3. Réponse

5. Données

Internet

Site d'entreprise

Site distant

1. L'utilisateur ouvre une session Telnet vers un routeur pare-feu configuré pour "Lock and Key"

Page 22: Les Listes de Controle d'Accès (ACCESS-LISTS)

22

Les Access Lists• Listes d'accès dynamiques - Lock and Key

• Fonctionnement

IOS Cisco

4. Liste d'accès

Serveurde

FichiersServeur

TACACS+

IOS Cisco1. Initiation du Login2. Challenge

3. Réponse

5. Données

Internet

Site d'entreprise

Site distant

2. IOS sur Routeur a- Le routeur reçoit un paquet Telnet b- Le routeur ouvre une session Telnet c- Le routeur demande un nom d'utilisateur et un mot de passe d- Le routeur réalise l'authentification avec le serveur TACACS+ e- Si l'authentification est réussie, la connexion Telnet est libérée f- L'IOS Cisco crée une entrée temporaire dans la liste d'accès dynamique

Page 23: Les Listes de Controle d'Accès (ACCESS-LISTS)

23

Les Access Lists• Listes d'accès dynamiques - Lock and Key

• Fonctionnement

IOS Cisco

4. Liste d'accès

Serveurde

FichiersServeur

TACACS+

IOS Cisco1. Initiation du Login2. Challenge

3. Réponse

5. Données

Internet

Site d'entreprise

Site distant

3. L'utilisateur échange des données à travers le pare-feu

Page 24: Les Listes de Controle d'Accès (ACCESS-LISTS)

24

Les Access Lists• Listes d'accès dynamiques - Lock and Key

• Fonctionnement

IOS Cisco

4. Liste d'accès

Serveurde

FichiersServeur

TACACS+

IOS Cisco1. Initiation du Login2. Challenge

3. Réponse

5. Données

Internet

Site d'entreprise

Site distant

4. L'IOS efface l'entrée temporaire de la liste d'accès quand une durée configurée est atteinte ou lorsque l'administrateur efface cette entrée.

- La durée peut un temps donné ou une valeur absolue. - L'entrée temporaire de la liste d'accès n'est pas automatiquement effacée lorsque l'utilisateur termine la session .

Page 25: Les Listes de Controle d'Accès (ACCESS-LISTS)

25

Les Access Lists• Listes d'accès dynamiques - Lock and Key

• Configuration

• Définition d'une liste d'accès dynamique

• RTA(config)#access-list 101 permit tcp any host 192.168.1.1 eq telnet RTA(config)#access-list 101 dynamic UNLOCK timeout 120 permit ip any any RTA(config)#int s0 RTA(config-if)#ip acces-group 101 in

• timeout xxx dans cette commande est un timeout absolu

Page 26: Les Listes de Controle d'Accès (ACCESS-LISTS)

26

Les Access Lists• Listes d'accès dynamiques - Lock and Key

• Configuration - Authentification

• Utilisation de sa propre base de données locale ou centrlisée sur un serveur RADIUS ou TACACS+.

• Configuration utilisant une base de données locale pour l'authentification - RTA(config)#username scoupy password bert RTA(config)#line vty 0 4 RTA(config-line)#login local

• L'étape finale pour configurer "Lock and Key" est d'autoriser le routeur à créer une entrée d'accès temporaire dans la liste d'accès dynamique.

- router#access-enable [host] [timeout minutes] - La valeur "idle timeout" (dans cette commande) doit être inférieur à la valeur absolue du timeout.

• Configuration des lignes VTY

- RTA(config)#line vty 0 4 RTA(config-line)#autocommand access-enable host timeout 20 - autocommand access-enable : L'accès au travers du pare-feu est crée chaque fois que l'utilisateur s'authentifie via Telnet.

Page 27: Les Listes de Controle d'Accès (ACCESS-LISTS)

27

Les Access Lists• Filtrage de sessions

SYN

SYN ACK

ACK

Host A Host B

• Comment autoriser le trafic permis à entrer et le interdire le trafic non autorisé

• Filtrage du trafic basé 6 bits de code TCP : - URG (Urgent) - PSH (Push) - RST (Reset) - FIN (Finish) - ACK (Acknowledgement) - SYN (Synchronization)

• Les hosts utilisent TCP pour établir une connexion en trois étapes. Cet échange utilise les bits SYN et ACK.

• La liste d'accès étendue peut vérifier si un paquet fait partie d'une connexion déjà établie (Established - Bits ACK ou RST à 1)

Page 28: Les Listes de Controle d'Accès (ACCESS-LISTS)

28

Les Access Lists• Filtrage de sessions

• Argument "Established"

• established argument utilisé avec le mot clé TCP dans une liste d'accès étendue (UDP, ICMP et tous les autres protocoles ne peuvent pas utiliser cet argument)

- router(config)#access-list access-list-number permit tcp source-address source-mask destination-address destination-mask established

- Exemple:

access-list 101 permit tcp any 192.168.1.0 0.0.0.255 establishedaccess-list 101 permit icmp any anyaccess-list 101 permit udp any any eq 53access-list 101 deny ip any 192.168.1.0 0.0.0.255access-list 101 permit ip any any

Page 29: Les Listes de Controle d'Accès (ACCESS-LISTS)

29

Les Access Lists• Reflexive Acces-List

- Les listes d'accès "Reflexive" permettent de filtrer le trafic du réseau sue la base des informations de session des protocoles situés au-dessus d'IP.

• Comme pour l'argument established - Les listes d'accès "Reflexive": - Autorisent les sessions issues de l'intérieur du réseau.

- Interdisent les sessions issues de l'extérieur du réseau.

• Contrairement à l'argument established - Les listes d'accès "Reflexive": - Fonctionnent pour tous les protocoles et pas uniquement TCP.

- Réalisent une correspondance dynamique entre le trafic entrant et les paramètres du trafic sortant .

• Peuvent être définies uniquement avec les listes d'accès étendues nommées

• Moyen très efficace pour sécuriser un réseau car elle évite la majorité des cas de "spoofing" ou de déni de service (DoS).

• Fournit un controle accru sur le trafic entrant et simple à utiliser

Page 30: Les Listes de Controle d'Accès (ACCESS-LISTS)

30

Les Access Lists• Reflexive Acces-List

• Configuration

interface Serial 1 description Accès à Internet via cette interface ip access-group filtresentrants in ip access-group filtressortants out!ip reflexive-list timeout 120!ip access-list extended filtresortants permit tcp any any reflect tcptraffic!ip access-list extended filtresentrants permit bgp any any permit eigrp any any deny icmp any any evaluate tcptraffic

1. Crée la liste d'accès

Page 31: Les Listes de Controle d'Accès (ACCESS-LISTS)

31

Les Access Lists• Reflexive Acces-List

• Configuration

interface Serial 1 description Accès à Internet via cette interface ip access-group filtresentrants in ip access-group filtressortants out!ip reflexive-list timeout 120!ip access-list extended filtresortants permit tcp any any reflect tcptraffic!ip access-list extended filtresentrants permit bgp any any permit eigrp any any deny icmp any any evaluate tcptraffic

1. Crée la liste d'accès2. Crée le filtre

Page 32: Les Listes de Controle d'Accès (ACCESS-LISTS)

32

Les Access Lists• Reflexive Acces-List

interface Serial 1 description Accès à Internet via cette interface ip access-group filtresentrants in ip access-group filtressortants out!ip reflexive-list timeout 120!ip access-list extended filtresortants permit tcp any any reflect tcptraffic!ip access-list extended filtresentrants permit bgp any any permit eigrp any any deny icmp any any evaluate tcptraffic

1. Crée la liste d'accès2. Crée le filtre3. l'applique à une interface

• Configuration

Page 33: Les Listes de Controle d'Accès (ACCESS-LISTS)

33

Les Access Lists• Reflexive Acces-List

• Fonctions des listes d'accès "Reflexive"

• Les listes d'accès "Reflexive" contiennent des critères pour définir des accès ou entrées conditionnelles et temporaires. - Création d'une nouvelle session depuis l'intérieur du réseau et fermeture de celle-ci quand elle se termine.

• Evaluation de ces entrées en séquence et lorsqu'une correspondance est trouvée, l'évaluation est terminée.

• Difficile à tromper car plusieurs critères de filtrage sont vérifiés avant de permettre l'accès

Page 34: Les Listes de Controle d'Accès (ACCESS-LISTS)

34

Les Access Lists• Reflexive Acces-List

• Caractéristiques d'une entrée temporaire

• Toujours une entrée de type "permit"

• Spécifie le même protocole que le paquet original sortant

• Spécifie les mêmes ports source et destination (TCP et UDP) que le paquet original sortant, sauf que les numéros de ports sont croisés.

• Pour les protocoles qui n'ont pas de numéros de ports tel ICMP et IGMP d'autres critères sont spécifiés. Par exemple le type de paquet pour ICMP.

• Le trafic entrant est évalué avec l'entrée de la liste d'accès "Reflexive" jusqu'à ce que cette entrée expire. Si le paquet entrant correspond avec les critères de l'entrée celui-ci est acheminé dans le réseau.

• L'entrée expirera lorsque le dernier paquet de la session passera sur l'interface.

• Si aucun paquet pour cette session n'est détecté pendant une durée déterminée (timeout) l'entrée expire. Les entrées temporaires de la liste d'accès "Reflexive" sont effacées en fin de session.

Page 35: Les Listes de Controle d'Accès (ACCESS-LISTS)

35

Les Access Lists• Reflexive Acces-List

• Exemple

• Les listes d'accès "Reflexive" sont configurées sur l'interface externe Serial 1

Interne Externe

InternetSerial1

Reflect (Entrée)

Evalue

• Ceci évite que du trafic IP entre par le routeur et dans le réseau interne sans qu'une session soit déjà établie depuis l'intérieur du réseau

Page 36: Les Listes de Controle d'Accès (ACCESS-LISTS)

36

Les Access Lists• Reflexive Acces-List

• Exemple

• Les listes d'accès "Reflexive" sont configurées sur l'interface interne Ethernet0

Interne Externe

Internet

Reflect (Entrée)

Evalue

ServeurDNS

ServeurWeb

Ethernet0

DMZ

• Ceci autorise le trafic externe à accéder aux services de la DMZ,tels le DNS, mais évite que du trafic IP entre par le routeur et dans le réseau interne sans qu'une session soit déjà établie depuis l'intérieur du réseau.

Page 37: Les Listes de Controle d'Accès (ACCESS-LISTS)

37

Les Access Lists

• Commandes de configuration

• Reflexive Acces-List

1. Définition d'une liste d'accès étendue nommée qui sera appliquée à l'interface de sortie. Router(config)#ip access-list extended extended-list-name

2. Configuration de la liste d'accès étendue nommée pour une entrée décrivant du trafic.

Router(config-ext-nacl)#permit ip-protocol any any reflect name [timeout seconds]

3. Application de la liste d'accès à l'interface de sortie

Router(config-if)#ip access-group extended-list-name out

Page 38: Les Listes de Controle d'Accès (ACCESS-LISTS)

38

Les Access Lists

• Commandes de configuration

• Reflexive Acces-List

4. Définition d'une liste d'accès étendue nommée qui va filtrer le trafic entrant. Router(config)#ip access-list extended extended-list-name

5. Configuration cette liste d'accès étendue nommée pour évaluer le trafic entrant.

Router(config-ext-nacl)#evaluate name

Page 39: Les Listes de Controle d'Accès (ACCESS-LISTS)

39

Les Access Lists

• Commandes de configuration

• Reflexive Acces-List

6. Application de la liste d'accès étendue nommée à l'interface externe pour du trafic entrant. Router(config-if)#ip access-group extended-list-name in

7. (Option) Spécification d'un timeout global pour les entrées de la liste d'accès "Reflexive".

Router(config)#ip reflexive-list timeout seconds

• Les entrées des listes d'accès "reflexive" expirent si aucun paquet pour la session n'a été détecté pendant une durée prédéterminée.

• Le timeout global par défaut est de 300 sec.

Page 40: Les Listes de Controle d'Accès (ACCESS-LISTS)

40

Les Access Lists

• Exemple de configuration

• Reflexive Acces-List

InternetE0 S0

Reflect

Evaluate

• Création de la liste d'accès "reflexive" - RTA(config)#ip access-list extended SORTIE - RTA(config-ext-nacl)#permit ip any any reflect Trafic_permis - RTA(config-ext-nacl)#exit - RTA(config)#interface serial0 - RTA(config-if)#ip access-group SORTIE out

• Création d'une liste d'accès qui correspond au trafic entrant - RTA(config)#ip access-list extended ENTREE - RTA(config-ext-nacl)#evaluate Trafic_permis - RTA(config-ext-nacl)#exit - RTA(config)#interface serial0 - RTA(config-if)#ip access-group ENTREE in

• Si on le désire, un timeout global peut être fixé - RTA(config)#ip reflexive-list timeout 200

Page 41: Les Listes de Controle d'Accès (ACCESS-LISTS)

41

Le controle d'accès CBAC• Context-Based Access Control

• Context-Based Access Control est un ensemble d'outils pour la sécurité • Le filtrage de paquet par CBAC se fait après l'examen des en-têtes des couches 3 et 4

• CBAC fait partie de la fonctionnalité Pare-feu de l'IOS Cisco - Disponible dès l'IOS 11.2 - Des fonctions ont été ajoutées à CBAC dans la Release 12.0.5(T) - La fonctionnalité de Pare-feu n'est pas disponible sur toutes les plateformes

• CBAC c'est: - Plus qu'une liste d'accès améliorée - Un ensemble d'outils de sécurité qui inclut: - Filtrage de trafic - Blocage Java - Inspection de trafic - Traçage d'alerte et audit - Détection d'intrusion

Page 42: Les Listes de Controle d'Accès (ACCESS-LISTS)

42

Le controle d'accès CBAC• Context-Based Access Control

• CBAC a été conçu pour reconnaître un certain nombre de protocoles applicatifs qui permettent à des hosts externes de changer de port pendant le transfert d'informations. • CBAC trace l'état des connexions TCP et UDP incluant les numéros de ports et adresses IP de chaque extrémité.

• Quand le trafic d'un réseau externe tente d'entrer dans le réseau protégé, CBAC vérifie le trafic avec la table d'états pour être certain que le paquet fait partie d'une connexion déjà établie ou autorisée.

• CBAC examine le paquet pour déterminer quel protocole applicatif est utilisé.

• CBAC supporte les protocoles utilisant plusieurs ports. La majorité des protocoles multimédia de type "streaming" et d'autres protocoles (FTP, RPC et SQL*Net) utilise plusieurs ports.

Page 43: Les Listes de Controle d'Accès (ACCESS-LISTS)

43

Le controle d'accès CBAC• Context-Based Access Control

• Fonctionnement

1. L'utilisateur User1 initie une session Telnet

2. Trafic retour de l'utilisateur User1, session Telnet permise

S0

S1E0

3. Autre trafic Telnet bloqué

USER1

Pare-feu

Réseau interne protégé

Page 44: Les Listes de Controle d'Accès (ACCESS-LISTS)

44

Le controle d'accès CBAC• Context-Based Access Control

• Fonctionnement

1. L'utilisateur User1 initie une session Telnet

2. Trafic retour de l'utilisateur User1, session Telnet permise

S0

S1E0

3. Autre trafic Telnet bloqué

USER1

Pare-feu

Réseau interne protégé

• Ouverture temporaire sur les interfaces du pare-feu. Ces ouvertures sont crées quand du trafic reconnu existe dans le réseau interne.

• Ces ouvertures permettent au trafic retour de passer le pare-feu et à des ports additionnels d'entrer dans le réseau interne en retour au travers du pare-feu

• Le trafic en retour est autorisé au travers du pare-feu uniquement si celui-ci fait partie de la même session que le trafic original reconnu par CBAC et sortant par le pare-feu.

Page 45: Les Listes de Controle d'Accès (ACCESS-LISTS)

45

Le controle d'accès CBAC• Context-Based Access Control

• Fonctionnement

1. L'utilisateur User1 initie une session Telnet

2. Trafic retour de l'utilisateur User1, session Telnet permise

S0

S1E0

3. Autre trafic Telnet bloqué

USER1

Pare-feu

Réseau interne protégé

Les listes d'accès en entréesur S0 et S1 sont configuréespour bloquer le trafic Telnet

Pas de listes d'accès configuréesen sortie sur E0

• L'utilisateur USER1 initie une session Telnet au travers du pare-feu, CBAC crée une ouverture temporaire dans la liste d'accès sur S0 pour permettre le trafic Telnet en retour pour la session Telnet de l'utilisateur USER1. • Si nécessaire, CBAC créera une ouverture similaire dans la liste d'accès en sortie sur E0 pour permettre le trafic retour.

Page 46: Les Listes de Controle d'Accès (ACCESS-LISTS)

46

Le controle d'accès CBAC• Context-Based Access Control

• Fonctionnement

• Il est nécessaire de spécifier quels protocoles vous voulez inspecter • Spécifiez une interface et le sens (Entrée ou Sortie) sur laquelle l'inspection est réalisée.

• Seuls les ports de contrôle des connexions sont inspectés et supervisés par CBAC - Sessions FTP : Le port de commande (port 21) et le port des données (port 20) sont supervisés pour les états - Seul le port 21 est inspecté.

• CBAC détecte et évite des attaques au niveau applicatif (Denial os Service -DoS) - CBAC inspecte les numéros de séquence des segments TCP pour vérifier si ceux-ci sont bien dans l'intervalle attendu. - CBAC élimine tout paquet suspect. Vous pouvez configurer CBAc pour qu'il élimine les connexions à demi ouvertes - CBAC peut détecter un taux inhabituel très élevé de nouvelles connexions et générer un message d'alerte. • Avec UDP, service en mode non connecté, il n'y a pas de session. Le paquet UDP est repéré par Adresse Source/destination et ports source/destination. - CBAC détermine si l'espacement de paquets UDP similaires est correct - Timeout configurable

Page 47: Les Listes de Controle d'Accès (ACCESS-LISTS)

47

Le controle d'accès CBAC• Context-Based Access Control

• Où et quand configurer CBAC?

• CBAC ne peut pas filtrer tous les protocoles applicatifs (ports TCP/UDP)• CBAC dans une direction: - Sur une seule interface

• CBAC dans deux ditrections sur un ou plusieurs interfaces: - Configuré dans deux directions quand les réseaux de chaque côté du pare-feu doivent être protégés.

• CBAC peut filtrer toutes les sessions TCP/UDP sans inspecter les protocoles applicatifs

• CABC est disponible uniquement pour du trafic IP ( ICMP ne peut pas être inspecté par CBAC)•••

• CU-SeeMe (version Whie Pine)

• FTP

• H323 ( NetMeeting, ProSgare,..)

• Http (blocage Java)

• Java

• Microsoft NetShow

• UNIX commands "r" (rlogin, rexec, rsh)

• RealAudio

• RPC (Sun RPC pas DCE RPC)

• Microsoft RPC

• SMTP (Simple Mail Transfer Protocol)

• SQL*Net

• SreamWorks

• TFTP (Trivial File Transfer Protocol)

• VDOLive

Page 48: Les Listes de Controle d'Accès (ACCESS-LISTS)

48

Le controle d'accès CBAC• Context-Based Access Control

• Choisir une interface

• Il faut décider de configurer CBAC sur une interface interne ou externe du pare-feu

- "Interne" fait référence au côté par lequel les sessions sont initiées pour que leur soit autorisé à traverser le pare-feu - "Externe" fait référence au côté opposé au côté interne. Les sessions ne sont jamais initiées du côté Externe (elles seront bloquées). • Si CBAC est configuré pour les deux directions, il faut configurer un sens en premier. - Quand vous configurez CBAC pour l'autre direction, les désignations d'interface seront échangées.

• CBAC utilise deux topologies de base : - Avec et sans DMZ (Demilitarized Zone)

Page 49: Les Listes de Controle d'Accès (ACCESS-LISTS)

49

Le controle d'accès CBAC• Context-Based Access Control

• Choisir une interface

E0 S0Internet

FiltreCBAC

Interne Externe

E0

S0Internet

FiltreCBAC

Interne Externe

E1

RA

RA DNS/MAIL

HTTPDMZ

• CBAC est configuré sur l'interface S0 ce qui empêche l'ouverture d'une session depuis l'extérieur

• La DMZ (Demilitarized Zone) est définie et son accès se fait par E1.

• La DMZ contient des services accessibles par l'extérieur.

• CBAC empêche l'entrée du trafic dans le réseau interne sauf si celui-ci a été initié depuis le réseau interne.

Page 50: Les Listes de Controle d'Accès (ACCESS-LISTS)

50

Le controle d'accès CBAC• Context-Based Access Control

• Conseils de configurations

• Si votre pare-feu a seulement deux connexions:

- Une vers le réseau Interne - Une vers le réseau Externe

L'utilisation de listes d'accèsen entrée fonctionne très biencar les paquets sont bloquésavant d'avoir une chance d'affecter le routeur lui-même.

Page 51: Les Listes de Controle d'Accès (ACCESS-LISTS)

51

Le controle d'accès CBAC• Context-Based Access Control

• Conseils de configurations

• Interface Externe

- Liste d'accès en sortie sur l'interface Externe : Liste d'accès Standard ou Etendue - Liste d'accès en entrée sur l'interface Externe : Liste d'accès Etendue

• Interface Interne

- Liste d'accès en entrée sur l'interface Interne ou liste d'accès en sortie sur l'interface Externe : Liste d'accès Standard ou Etendue - Liste d'accès en sortie sur l'interface Interne ou liste d'accès en entrée sur l'interface Externe: Liste d'accès Etendue obligatoire - Il n'est pas nécessaire de configurer une liste d'accès Etendue sur chacune des interfaces.

Page 52: Les Listes de Controle d'Accès (ACCESS-LISTS)

52

Le controle d'accès CBAC• Context-Based Access Control

• Définition des Règles d'Inspection CBAC

• Les règles d'inspection CBAC spécifient quels protocols applicatifs IP doivent être inspectés par CBAC sur une interface.

- Une seule règle d'inspection et une exception doivent être utilisées si vous utilisez CBAC dans les deux directions.

- Si CBAC est configuré dans les deux sens sur une seule interface du pare-feu, vous devez configurer deux règles, une pour chaque sens.

- Une règle d'inspection doit préciser chaque protocole applicatif

- La règle d'inspection est une suite d'instructions reprérée par un nom

- Les règles d'inspection ont des options pour controler la génération de messages d'alerte, les traces d'audit et la fragmentation des paquets IP

Page 53: Les Listes de Controle d'Accès (ACCESS-LISTS)

53

Le controle d'accès CBAC • Règles d'Inspection de protocoles applicatifs

• Context-Based Access Control

• Pour configurer l'inspection CBAC pour un protocole applicatif ( sauf RPC et Java), utilisez la commande suivante: - RTA(config)#ip inspect name inspection-name protocol [timeout seconds]

• Répéter cette commande pour chaque protocole:

- RTA(config)#ip inspect name PIX-515 http - RTA(config)#ip inspect name PIX-515 ftp - RTA(config)#ip inspect name PIX-515 udp

• Appliquer à l'interface désirée:

- RTA(config)#interface S0 - RTA(config)#ip inspect PIX-515 out

Protocole Applicatif Mot clé

CU-SeeMe cuseeme

FTP ftp

H323 h323

Microsoft NetShow netshow

UNIX commandes "r"

rcmd

RealAudio realaudio

SMTP smtp

RPC rpc

SQL*Net sqlnet

StreamWorks streamworks

TFTP tftp

VDOLive vdolive

Page 54: Les Listes de Controle d'Accès (ACCESS-LISTS)

54

Le controle d'accès CBAC• • Context-Based Access Control

• Règles d'Inspection pour Java

• Commande:

- RTA(config)#ip inspect name inspection-name http [java-list access-list] [timeout seconds]

• Exemple de configuration :

- RTA(config)#access-list 24 deny 200.100.50.0 0.0.0.255 - RTA(config)#access-list 24 deny 169.199.0.0 0.0.255.255 - RTA(config)#access-list 24 permit any - RTA(config)#ip inspect name PIX-515 http java-list 24 - RTA(config)#ip inspect name PIX-515 tcp

- RTA(config)#interface S0 - RTA(config)#ip inspect PIX-515 out

• Les Applets Jave peuvent représenter un risque pour la sécurité - Il faut configurer CBAC pour filtrer les Applets Java sur le pare-feu.

• Le filtrage des Applets Java doit faire la distinction entre les Applets certifiées ou non en établissant une liste de sites.

• CBAC ne peut pas détecter ou bloquer les Applets Java encapsulées.

Page 55: Les Listes de Controle d'Accès (ACCESS-LISTS)

55

Le controle d'accès CBAC• • Context-Based Access Control • Règles d'Inspection pour TCP et UDP

• L'inspection CBAC peut être configuré pour permettre l'entrée des paquets TCP et UDP dans le réseau Interne sans inspecter l'application. être inspectés par CBAC sur une interface.

• Avec l'inspection TCP/UDP, les paquets entrants dans le réseau doivent correspondre avec les informations adresse source/destination , ports Source/destination des paquets qui ont quitté le réseau précédemment.

• Avec UDP, le pare-feu permet le retour des paquets s'ils sont reçus dans un temps prédéterminé après la dernière requête transmise.

• Utilisez les commandes suivantes:

- RTA(config)#ip inspect name inspection-name tcp [timeout seconds]

- RTA(config)#ip inspect name inspection-name udp [timeout seconds]

Page 56: Les Listes de Controle d'Accès (ACCESS-LISTS)

56

Le controle d'accès CBAC• • Context-Based Access Control • Fragmentation IP et application d'une règle d'Inspection à une interface

• Pour configurer la fragmentation IP utilisez la commande suivante: - RTA(config)#ip inspect name inspection-name fragment [max number timeout seconds]

• Pour appliquer une règle d'inspection à une interface:

- RTA(config-if)#ip inspect name inspection-name (in |out) • Exemple:

- RTA(config)#interface Ethernet0 - RTA(config)#ip inspect PIX-515 out

Page 57: Les Listes de Controle d'Accès (ACCESS-LISTS)

57

Le controle d'accès CBAC• • Context-Based Access Control

• Timeout globaux

Temps ou valeur de seuilà changer

Commande Valeur par Défaut

Temps d'attente pour l'établissement d'une session TCP après lequel lasession sera effacée.

ip inspect tcp synwait-time seconds 30 secondes

Temps d'attente avant fermeturedéfinitive d'une session TCP quand lepare-feu détecte un indicateur FIN

ip inspect tcp finwait-time seconds 5 secondes

Temps d'attente avant fermeturedéfinitive d'une session TCP surdétection d'inactivité (idle timeout)

ip inspect tcp idle-time seconds 3600 secondes

Temps d'attente avant fermeturedéfinitive d'une session UDP surdétection d'inactivité (idle timeout)

ip inspect udp idle-time seconds 30 secondes

Temps d'attente avant fermeturedéfinitive d'une session DNS surdétection d'inactivité (idle timeout)

ip inspect udp dns-timeout seconds 5 secondes

Page 58: Les Listes de Controle d'Accès (ACCESS-LISTS)

58

Le controle d'accès CBAC• • Context-Based Access Control

• Timeout globaux

Temps ou valeur de seuilà changer

Commande Valeur par Défaut

Nombre de sessions "semi-ouvertes"qui déclenche l'effacement de cessessions

ip inspect max-incomplete high number 500 sessions

Nombre de sessions "semi-ouvertes"qui arrête l'effacement de ces sessions

ip inspect max-incomplete low number 400 sessions

Taux d'établissement de nouvellessessions à partir duquel les sessionssemi-ouvertes sont effacées

ip inspect one-minute high number 500 sessions par minute

Taux d'établissement de nouvellessessions à partir duquel les sessionssemi-ouvertes ne sont plus effacées

ip inspect one-minute low number 400 sessions parminute

Nombre de sessions TCP semi-ouvertesavec la même adresse de host destina-tion qui déclenche l'effacement de cessessions

ip inspect tcp max-incomplete host number block-time minutes

50 sessions0 minute

Page 59: Les Listes de Controle d'Accès (ACCESS-LISTS)

59

Le controle d'accès CBAC• • Context-Based Access Control

• Vérification de CBAC

Commande Fonction

show ip inspect name inspection-name Affiche la configuration d'une règle d'inspection

show ip inspect config Affiche la configuration complète de l'inspectionCBAC

show ip inspect interfaces Affiche la configuration des interfaces auxquellessont affectées des règles d'inspection et des listesd'accès

show ip inspect session [detail] Affiche les sessions qui sont en cours tracées etinspectées par CBAC

show ip inspect all Affiche toute la configuration CBAC, les sessions en cours tracées et inspectées par CBAC