Title: ACL mise en oeuvre
1Les Listes de Controle d'Accès(ACCESS-LISTS)
21. Généralités Listes de Controle d'Accès2.
Sécuriser l'accès au routeur3. Dynamic
Access-List - Lock and Key4. Filtrage de
sessions5. CBAC (Context Based Access
Control)6. Alternative au Listes de Controle
d'Accès
3Les 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ès
AccèsLigne Terminal virtuel(IP)
4Les 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)
5Les Access Lists
La syntaxe des Listes d'Accès
Router(config)access-list access-list-number
denypermitsource source-widcard log
Router(config)access-list access-list-number
denypermitsource source-widcard destination
destination-wildcardprecedence precedence tos
tos established logtime-range
time-range-name
6Les 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.255 RTA(config-ext-
nacl)permit ip any anyRTA(config-ext-nacl)ZR
TAshow 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
7Les 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.
8Les Access Lists
Configuration
Liste d'Accès standard
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 anylog 2. Exit
access-list configuration mode
router(config-std-nacl) exit
9Les Access Lists
Configuration
Liste d'Accès standard
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 denyrouter(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
10Les 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 utilisateur - 2. 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ées - 4. Efficacité pour le coût de reroutage
automatique de trafic - 5. 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"
11Les 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 hhmm
todays-of-the-week hhmm
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
12Les 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-ran
ge)periodic weekdays 800 to 1800RTA(config-tim
e-range)exitRTA(config)time-range
UDP-YESRTA(config-time-range)periodic weekend
1200 to 2000 RTA(config-time-range)exit RTA(con
fig)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
13Les 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)acce
ss-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)acces
s-list 101 permit tcp 192.168.1 0.0.0.255
172.16.1.0 0.0.0.255 eq 23 RTA(config)access-list
101 deny tcp any 172.16.1.0 0.0.0.255 eq
23 RTA(config)access-list 101 remark autorise
SNMP pour Admin du host uniquement RTA(config)acc
ess-list 101 permit udp host 192.168.1.250 any eq
161 RTA(config)access-list 101 deny udp any any
eq 161RTA(config)access-list 101 permit ip any
any
14Les 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 inout
15Les 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.
PortPhysique (E0)
4
0
1
3
2
PortsVirtuels(vty 0-4)
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
16Les 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.
17Les 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.
18Les 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.
19Les Access Lists
Listes d'accès dynamiques - Lock and Key
Fonctionnement
Serveur
Ouvrir une session Telnet depuis 10.1.1.1
Permit 10.1.1.1 pour toute adresse IP jusqu'à ce
que le temps permis soit écoulé
Username, Password ?
10.1.1.1
Utilisateur Claire, Password Csecret
Utilisateur Claire valide
Fermeture de la session Telnet
20Les Access Lists
Listes d'accès dynamiques - Lock and Key
Fonctionnement
Site d'entreprise
Site distant
1. Initiation du Login2. Challenge3.
Réponse5. Données
IOS Cisco
IOS Cisco
4. Liste d'accès
Internet
ServeurdeFichiers
ServeurTACACS
21Les Access Lists
Listes d'accès dynamiques - Lock and Key
Fonctionnement
1. L'utilisateur ouvre une session Telnet vers un
routeur pare-feu configuré pour "Lock and Key"
22Les Access Lists
Listes d'accès dynamiques - Lock and Key
Fonctionnement
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
23Les Access Lists
Listes d'accès dynamiques - Lock and Key
Fonctionnement
3. L'utilisateur échange des données à travers le
pare-feu
24Les Access Lists
Listes d'accès dynamiques - Lock and Key
Fonctionnement
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 .
25Les 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
26Les 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)lo
gin 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. - routeraccess-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.
27Les Access Lists
Filtrage de sessions
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)
28Les 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
29Les 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
30Les 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
31Les 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
32Les 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 filtre3.
l'applique à une interface
33Les 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
34Les 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.
35Les Access Lists
Reflexive Acces-List
Exemple
Interne
Externe
Les listes d'accès "Reflexive" sont
configurées sur l'interface externe Serial 1
Serial1
Internet
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
36Les Access Lists
Reflexive Acces-List
Exemple
Interne
Externe
Les listes d'accès "Reflexive" sont
configurées sur l'interface interne Ethernet0
Internet
Ethernet0
Reflect (Entrée)
ServeurDNS
ServeurWeb
DMZ
Evalue
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.
37Les Access Lists
Reflexive Acces-List
Commandes de configuration
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
384. 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
396. 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.
40 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
41Le 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
42Le 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 SQLNet)
utilise plusieurs ports.
43Le controle d'accès CBAC
Context-Based Access Control
Fonctionnement
44Le controle d'accès CBAC
Context-Based Access Control
Fonctionnement
1. L'utilisateur User1 initie une session
Telnet
USER1
3. Autre trafic Telnet bloqué
2. Trafic retour de l'utilisateur User1,
session Telnet permise
S0
S1
E0
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.
45Le controle d'accès CBAC
Context-Based Access Control
Fonctionnement
1. L'utilisateur User1 initie une session
Telnet
USER1
Les listes d'accès en entréesur S0 et S1 sont
configuréespour bloquer le trafic TelnetPas de
listes d'accès configuréesen sortie sur E0
3. Autre trafic Telnet bloqué
2. Trafic retour de l'utilisateur User1,
session Telnet permise
S0
S1
E0
Pare-feu
Réseau interne protégé
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.
46Le 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
47Le 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)
SQLNet SreamWorks TFTP (Trivial File
Transfer Protocol) VDOLive
48Le 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)
49Le controle d'accès CBAC
Context-Based Access Control
Choisir une interface
Interne
Externe
CBAC est configuré sur l'interface S0 ce qui
empêche l'ouverture d'une session depuis
l'extérieur
Internet
RA
S0
E0
FiltreCBAC
Interne
Externe
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.
Internet
S0
RA
DNS/MAIL
E0
E1
DMZ
HTTP
FiltreCBAC
50Le 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.
51Le 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.
52Le 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
53Le controle d'accès CBAC
Context-Based Access Control
Règles d'Inspection de protocoles applicatifs
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
SQLNet sqlnet
StreamWorks streamworks
TFTP tftp
VDOLive vdolive
54Le 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.
55Le 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
56Le 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
57Le 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
58Le 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
59Le 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