Protecting your IP network infrastructure - PowerPoint PPT Presentation

1 / 70
About This Presentation
Title:

Protecting your IP network infrastructure

Description:

IP R&D Manager, Security Officer - COLT Telecom. kaneda_at_securite.org ... adresse MAC virtuelle. 00-00-0c-07-ac- groupe HSRP l'interface virtuelle HSRP n'envoie ... – PowerPoint PPT presentation

Number of Views:225
Avg rating:3.0/5.0
Slides: 71
Provided by: scu61
Category:

less

Transcript and Presenter's Notes

Title: Protecting your IP network infrastructure


1
Protection de linfrastructure réseau IP en
environnement Cisco (routeurs et commutateurs)
gt Nicolas FISCHBACH IP Engineering Manager -
COLT Telecom nico_at_securite.org -
http//www.securite.org/nico/ gt Sébastien
LACOSTE-SERIS IP RD Manager, Security
Officer - COLT Telecom kaneda_at_securite.org -
http//www.securite.org/kaneda/ version
1.01
2
Programme
  • Sécurité réseau
  • Les attaques à lencontre
  • des protocoles des couches liaison et réseau
  • des protocoles de routage
  • Détection et prévention des dénis de services et
    des vers
  • Analyse de trafic
  • MPLS et IPv6
  • Sécurité des équipements (routeurs et
    commutateurs)
  • SNMP et administration distante
  • Authentification, Autorisation et Audit (AAA)
  • Listes de contrôle daccès (ACLs)
  • Vérification dintégrité

3
Les protocoles de la couche liaison
  • Les protocoles de la couche liaison de données
  • ARP - Address Resolution Protocol
  • CDP - Cisco Discovery Protocol
  • VLAN - Virtual LAN
  • STP - Spanning Tree Protocol
  • D/VTP - Dynamic, VLAN Trunking Protocol
  • Trafic et adressage unicast, broadcast et
    multicast

4
Attaques contre les protocoles
  • Les attaques connues (et anciennes)
  • Pollution de cache ARP, annonces ARP gratuites,
    messages ARP/DHCP falsifiés
  • Outils dsniff, hunt, etc.
  • Les attaques plus récentes
  • Paquets HSRP/VRRP falsifiés
  • Attaques contre STP/VTP
  • Saut de VLAN
  • Les attaques à venir
  • Attaques avancées contre les protocoles de
    routage
  • Rootkits et modules noyau dynamiques (LKM)

5
Filtrage STP et par adresse MAC
  • Fixez les adresses MAC par port (et si possible
    la relation adresse IP/adresse MAC)
  • Activez BPDU-Guard (Bridge PDU) pour filtrer STP
  • Limitez le trafic de type broadcast

set port security ltmod/portgt enable
01-02-03-04-05-06 shutdown
! MLS (Multi Layer Switch) in hybrid mode (Sup w/
CatOS, MSFC w/ IOS) set spantree disable set
spantree portfast bpdu-guard-enable ! MLS in
native mode (CatIOS on the Sup and
MSFC) spanning-tree portfast bpduguard
set port broadcast ltmod/portgt 0.01
6
VLANs partionnement de réseau (1)
  • Le problème des VLANs
  • Les VLANs nont pas été conçus pour fournir un
    mécanisme de sécurité, mais sont utilisés
    couramment pour le partitionnement réseau
  • Les commutateurs multiniveau (commutateur avec un
    module de routage) constituent un point faible
    dans la sécurité du réseau
  • Nutilisez pas le VLAN natif 1
  • Le problème de VPMS
  • VLAN Policy Management Server permet
    laffectation dun équipement à un VLAN par
    rapport à son adresse MAC

7
VLANs partionnement de réseau (2)
  • Saut de VLAN
  • Est possible si
  • vous utilisez DTP
  • un port est dans le même VLAN que le VLAN natif
    du trunk (injection de trames 802.1q)
  • Les ponts entre VLANs (VLAN bridge) permettent de
    faire passer des protocoles non routables entre
    les VLANs
  • Private VLAN (4k, 6k) et Edge Ports (29xx, 35xx)
  • Isolation du port, nest pas basé sur les
    adresses IP/MAC ou le VLAN
  • Des équipements dans le même VLAN ne peuvent pas
    communiquer directement entre eux

set vlan 2 ltmod/portgt clear trunk ltmod/portgt 1
8
Protocoles VTP
  • VLAN Trunking Protocol
  • Permet une gestion centralisée des VLANs
    (architecture maître/esclave)
  • Format du message identique à CDP (SNAP HDLC
    0x2003)
  • Communique via les ports en mode trunk
  • Mesures de sécurité
  • Placez les commutateurs en mode VTP transparent
    et affectez un mot de passe au domaine VTP

set vtp domain ltdomaine.vtpgt password ltmot de
passegt set vtp mode transparent
9
Protocoles DTP
  • Dynamic Trunking Protocol
  • Permet la configuration automatique de ports en
    mode trunk
  • Format du message identique à CDP (SNAP HDLC
    0x2004)
  • Tous les ports dun commutateur sont en mode
    automatique par défaut
  • Mesures de sécurité
  • Désactivez DTP sur tous les ports

set trunk off all
10
Protocoles CDP (1)
  • Cisco Discovery Protocol
  • Protocole développé par Cisco
  • Communique sur tout lien supportant HDLC
  • Trafic multicast
  • Informations échangées nom/identifiant de
    léquipement, adresse réseau, identifiant du
    port, fonctionnalités, plate-forme, version
    logicielle, préfixe réseau IP
  • Format du message

11
Protocoles CDP (2)
  • Déni de service
  • Possibilité dutiliser toute la mémoire (avis de
    sécurité)
  • Mesures de sécurité
  • Routeurs
  • Désactivation globale
  • Désactivation par interface
  • Commutateurs (globalement ou par port)

no cdp run
interface xy no cdp enable
set cdp disable ltmod/portgt
12
Les protocoles de la couche réseau
  • La couche réseau et les protocoles de routage
  • IP nintègre pas de mécanisme de sécurité
  • ICMP fuite/divulgation dinformations et
    risques associés
  • HSRP/VRRP redondance du prochain saut
  • RIP/RIPv2 pas dauthentification (v1) et
    inondation
  • OSPF trafic multicast et risques liés aux
    DR/BDR
  • BGP coeur de lInternet (risques liés aux RR et
    aux peerings)
  • Les protocoles méconnus ou peu utilisés
  • IS-IS
  • (E)IGRP

13
Protocoles BGP (1)
  • Border Gateway Protocol
  • Version 4
  • Ecoute sur le port 179/tcp
  • Authentication MD5 (trop rarement utilisée)
  • Liaison point-à-point pour les interfaces
    directement connectées ou multi-hop pour les
    routeurs non-adjacents
  • Des outils dinjection de routes BGP existent
    (dans des cercles privés)
  • Format du message BGP UPDATE

14
Protocoles BGP (2)
  • Où se trouvent les risques ?
  • Points déchanges (GIX) les FAI sont souvent
    connectés sur la même infrastructure partagée (un
    commutateur par exemple) filtrez les AS_path et
    les préfixes
  • Vos clients/fournisseurs directs filtrez par
    adresses IP sur les interfaces
  • Configuration multi-hop (attaque par
    interception)
  • Que faut-il surveiller ?
  • Les AS_path annoncés par les fournisseurs
  • Les AS_path reçus par dautres FAI qui
    contiennent votre ASN (via des serveurs de
    routes)
  • Si les routes/chemins changent (surtout la/le
    meilleur(e))
  • Les changements ARP (commutateurs publiques dans
    les IX)

15
Protocoles BGP (3)
  • Mesures de sécurité additionnelles
  • Nutilisez pas le même mot de passe avec tous vos
    partenaires
  • Journalisez les changements et utilisez IPsec

router bgp 65000 bgp log-neighbor-changes
network x.x.x.x neighbor y.y.y.y remote-as
65001 neighbor y.y.y.y password ltMD5passwordgt
neighbor y.y.y.y version 4 neighbor y.y.y.y
prefix-list theirnetworks in neighbor y.y.y.y
prefix-list ournetworks out neighbor y.y.y.y
maximum-prefix 120000 neighbor y.y.y.y route-map
ourASpath out ip prefix-list ournetworks seq 5
permit z.z.z.z/17 ip prefix-list ournetworks seq
10 deny 0.0.0.0/0 le 32 ip prefix-list
theirnetworks seq 5 permit k.k.k.k/19 ip as-path
access-list permit ltASgt( ltASgt) route-map
ourASpath permit 10 match as-path 99
16
Protocoles BGP (4)
  • Outils dinjection de routes, quel est le
    challenge ?
  • Trouver les partenaires eBGP
  • par interception
  • grâce à SNMP
  • grâce aux route-servers et aux  looking
    glasses  publiques
  • adresses IP proches, .1, .254, etc.
  • Injectez la mise à jour
  • par interception (messages ARP falsifiés sur les
    commutateurs publiques)
  • par synchronisation avec la session TCP existante
  • Mesures de sécurité / futur ?
  • S-BGP (Secure BGP)

17
Prédiction de numéro de séquence TCP
  • Le problème des numéros de séquence initiaux
  • IOS vulnérable gt IOS  moins  vulnérable
  •  Corrigé  à partir des versions 12.0(15) et
    12.1(7)
  • Les NSI sont (encore) liés au temps/à lhorloge

Source http//razor.bindview.com/publish/papers/
tcpseq.html
18
Protocoles OSPF (1)
  • Open Shortest Path First
  • Protocole numéro 89
  • Trafic multicast  facile  dinjecter des LSAs
  • Mesures de sécurité
  • Authentifiez les échanges OSPF
  • Placez le réseau en mode NBMA

interface xy !ip ospf authentication-key ltkeygt
ip ospf message-digest-key 1 md5 ltkeygt router
ospf 1 area 0 authentication message-digest
interface xy ip ospf network non-broadcast route
r ospf 1 neighbor x.x.x.x
19
Protocoles OSPF (2)
  • Mesures de sécurité (suite)
  • Ne mettez pas les interfaces qui ne doivent pas
    échanger des LSAs OSPF dans la configuration
     réseau  dOSPF ou enlevez les par exclusion
    via des interfaces passives
  • Journalisez les changements
  • Il nest pas possible de filtrer ce qui est
    annoncé par OSPF (uniquement entre des AS OSPF),
    le mot clé network est un  faux ami 
  • Il est possible de filtrer ce que lon reçoit

router ospf 1 log-adjacency-changes network
x.x.x.x passive-interface default no
passive-interface xy
router ospf 1 distribute-list ltACLgt in
distribute-list ltACLgt out
20
Protocoles HSRP/VRRP (1)
  • Hot Standby Routing Protocol
  • Redondance du prochain saut (RFC 2281)
  • Fuite dinformation adresse MAC virtuelle
  • 00-00-0c-07-ac-ltgroupe HSRPgt
  • linterface virtuelle HSRP nenvoie pas dICMP
    redirect
  • Un groupe HSRP peut contenir plus de deux
    routeurs, il nest pas nécessaire de rendre un
    routeur inactif, il suffit de devenir le maître
  • Virtual Router Redundancy Protocol (RFC 2338)
  • Supporte lauthentification MD5 (IP
    Authentication Header)

21
Protocoles HSRP/VRRP (2)
  • Mesures de sécurité
  • Activez lauthentification par mot de passe
  • Changez ladresse MAC virtuelle
  • Utilisez IPsec (recommandation Cisco), mais nest
    pas trivial (trafic multicast, ordre des
    processus, limité à un groupe avec deux routeurs)

interface xy standby 10 priority 200 preempt
standby 10 authentication p4ssw0rd standby 10 ip
x.x.x.x
interface xy standby 10 mac-address ltmac-addressgt
22
Dénis de services détection (1)
  • La technique  ancienne 
  • ACLs, charge CPU, charge de la ligne, xIDS
  • Netflow
  • Journalisation des données réseaux (AS, flux IP,
    protocoles, etc)
  • Données envoyées en clair sur le réseau à un
    point central
  • Avec CEF activé Netflow effectue uniquement la
    journalisation et les statistiques
  • Sans CEF le routeur passe en mode commutation
    Netflow
  • Seul le trafic sortant sur une interface est
    comptabilisé
  • Visualisation des données sh ip cache flow
  • Export des données

ip flow-export version 5 origin-as ip flow-export
destination x.x.x.x interface xy ip route-cache
flow
23
Dénis de services détection (2)
  • Distribution (in)habituelle du trafic par
    protocole
  • TCP 90 (HTTP, FTP, SMTP, outils peer-to-peer)
  • UDP 10 (DNS, SNMP, outils de streaming)
  • ICMP lt 1
  • IGMP lt 1
  • Surtout des paquets de 64 octets
  • RRDtool et Netflow permettent de grapher les
    tendances et de détecter des changements ou des
    anomalies

Source Flowscan from UW-Madison
(http//wwwstats.net.wisc.edu/)
24
Dénis de services détection (3)
  • Netflow sur les commutateurs-routeurs
  • Le mode de flux Netflow par défaut ne tient
    compte que de la destination (ladresse source
    nest pas enregistrée)
  • Activez le mode  full-flow  (impact sur les
    performances sur les modules de supervision SE1)
  • Visualisation des données
  • Le Netflow  du pauvre  ntop ?

! MLS in hybrid mode set mls flow full ! MLS in
native mode mls flow ip full
! MLS in hybrid mode set mls ent ! MLS in native
mode show mls ip
25
Dénis de services prévention (1)
  • Unicast RPF (Reverse-Path Forwarding)
  • Nécessite CEF (Cisco Express Forwarding) ou dCEF
  • Nécessite IOS 12.x et consomme 30Mo de mémoire
  • Mode strict les datagrammes IP sont vérifiés,
    la route vers ladresse IP source doit pointer
    vers linterface dentrée
  • Seulement la meilleure route est dans la FIB (si
    multi-path ou des routes de même poids ne sont
    pas utilisés)
  • Les routes asymétriques sont supportées
  • Vérifiez les poids et les métriques utilisés
    dans BGP si vous utilisez le mode strict ou
    dans une configuration à liens multiples

26
Dénis de services prévention (2)
  • Unicast RPF (Reverse-Path Forwarding)
  • Mode strict (des ACLs peuvent être utilisées pour
    la journalisation et les exceptions)
  • Mode non-strict (loose), les datagrammes passent
    le test si le préfixe réseau est dans la FIB

ip cef distributed interface xy ip verify
unicast reverse-path allow-self-ping acl
ip verify unicast source reachable-via any
27
Dénis de services prévention (3)
  • Limitation du trafic ICMP, UDP et TCP SYN
  • La limitation du trafic UDP peut devenir un
    problème si votre client est une société de
    streaming

interface xy rate-limit input access-group 100
8000 8000 8000 \ conform-action transmit
exceed-action drop rate-limit output
access-group 100 8000 8000 8000 \
conform-action transmit exceed-action drop
ltgt access-list 100 deny tcp any host x.x.x.x
established access-list 100 permit tcp any host
x.x.x.x access-list 101 permit icmp any any
echo access-list 101 permit icmp any any
echo-reply
28
Dénis de services prévention (4)
  • TCP Intercept
  • Autant daspects positifs, que daspects négatifs
  • Si TCP Intercept est activé le routeur passe en
    mode commutation de processus (process switching)
    et ne reste pas en mode CEF
  • Lhôte destination doit renvoyer un RST (un rejet
    silencieux engendre un déni de service local)
  • Problème identique si vous utilisez des routes
    vers Null0 (route vers un trou noir)

ip tcp intercept list 100 ip tcp intercept
connection-timeout 60ip tcp intercept
watch-timeout 10ip tcp intercept one-minute low
1500ip tcp intercept one-minute high
6000 access-list 100 permit tcp any x.x.x.0
0.0.0.255
29
Dénis de services prévention (5)
  • Filtrage ICMP avancé
  • Ne laissez passer que les messages ICMP
     critiques 
  • Le filtrage ICMP est une source de dispute, à
    chacun de se faire sa propre idée (unreachables,
    parameter-problem, etc)

interface xy ip access-group 100 in access-list
100 deny icmp any any fragments access-list 100
permit icmp any any echoaccess-list 100 permit
icmp any any echo-replyaccess-list 100 permit
icmp any any packet-too-bigaccess-list 100
permit icmp any any source-quenchaccess-list 100
permit icmp any any time-exceededaccess-list 100
deny icmp any anyaccess-list 100 permit ip any
any
30
Dénis de services prévention (6a)
  • Techniques avancées BGP/Null0 1/2
  • Choisissez une adresse du bloc TEST-NET et
    configurez une route vers Null0 sur tous les
    routeurs pour cette adresse
  • Sur un routeur BGP maître, changez le prochain
    saut pour le réseau source à filtrer par cette
    adresse IP
  • Redistribuez ces adresses via BGP dans votre AS
    et uRPF va supprimer le datagramme (au niveau de
    la LC, pas du RP)
  • Ne redistribuez pas ces informations à vos
    partenaires utilisez un AS privé ou une
    communauté en  no-export 

router bgp ltASgt network ltsourceOfDDOSgt mask
ltnetmaskgt route-map ddos-nh route-map ddos-nh
set ip next-hop ltTEST-NETIPaddrgt ip route
ltTEST-NETgt 255.255.255.0 Null0
31
Dénis de services prévention (6b)
  • Techniques avancées BGP/Null0 2/2

32
Dénis de services prévention (7)
  • Techniques avancées BGP/CAR/FIB 1/2
  • Marquez le réseau dont vous voulez limiter la
    bande passante avec une communauté spécifique et
    redistribuez ces informations depuis le routeur
    BGP maître à tous ses clients

router bgp ltASgt network ltdestOfDDOSgt mask
ltnetmaskgt neighbor x.x.x.x route-map ddos-rl
out neighbor x.x.x.x send community access-list
10 permit ltdestOfDDOSgt route-map ddos-rl match
ip address 10 set community ltASgt66 no-export ip
route ltdestOfDDOSgt 255.255.255.0 Null0
33
Dénis de services prévention (8)
  • Techniques avancées BGP/CAR/FIB 2/2
  • Sur les routeurs changez le QosID dans la FIB par
    rapport à cette communauté et limitez la bande
    passante par rapport à ce QosID

router bgp ltASgt table-map ddos-rl ip community
list 1 permit ltASgt66 route-map ddos-rl match
community 1 set ip qos-group 66 interface xy
bgp-policy source ip-qos-map rate-limit input
qos-group 66 ...
34
Filtrage entrant et sortant (1)
  • Ce quil ne faudrait jamais voir/laisser
    passer/router
  • RFC 1918 (10.0.0.0/8, 172.16.0.0/12,
    192.168.0.0/16)
  • 0.0.0.0/x, 127.0.0.0/8
  • 169.254.0.0/16 (auto-configuration quand DHCP est
    indisponible)
  • 192.0.2.0/24 (Netname TEST-NET, comme
    example.com)
  • Les adresses multicast (classe D) et les réseaux
    E.T. (E)
  • Les plages dadresses utilisées par certains
    vendeurs (192.0.0.192 pour certaines imprimantes)
  • Les blocs réservés (ARIN - bogon networks)
  • Les datagrammes destinés à ladresse de broadcast
    ou avec source destination

35
Filtrage entrant et sortant (2)
  • Ce quil faudrait voir/laisser passer/router
  • Vos plages dadresses uniquement
  • Exemple de filtrage par ACL (IX, uplinks, CPE)
  • Exemple de filtrage avec routage/forwarding dans
    Null0

interface xy access-group in 100 access-group
out 100 access-list 100 deny ip host 0.0.0.0
any access-list 100 deny ip 127.0.0.0
0.255.255.255 255.0.0.0 0.255.255.255 access-list
100 deny ip 10.0.0.0 0.255.255.255 255.0.0.0
0.255.255.255 access-list 100 deny ip 172.16.0.0
0.15.255.255 255.240.0.0 0.15.255.255 access-list
100 deny ip 192.168.0.0 0.0.255.255 255.255.0.0
0.0.255.255 access-list 100 deny ip 192.0.2.0
0.0.0.255 255.255.255.0 0.0.0.255 access-list 100
deny ip 169.254.0.0 0.0.255.255 255.255.0.0
0.0.255.255 access-list 100 deny ip 240.0.0.0
15.255.255.255 any access-list 100 permit ip any
any ! Or permit ip ltyour network prefixes onlygt
ip route 10.0.0.0 255.0.0.0 null0 ip route
172.16.0.0 255.240.0.0 null0 ip route 192.168.0.0
255.255.0.0 null0
36
Détection des vers et protection (1)
  • Comment détecter un nouveau vers
  • Nombre (inhabituel) de nouveaux flux HTTP/SMTP et
    journalisation sur les serveurs
  • Comment vous protéger avec NBAR (Network-Based
    Application Recognition)?
  • Nécessite CEF
  • Disponible à partir de 12.1(5)T
  • Comme TCP Intercept - en a ton vraiment besoin ?
  • Effet de bord la session TCP est déjà établie
    mais le serveur ne reçoit pas la requête HTTP GET
  • Impact sur les performances 20 CPU

37
Détection des vers et protection (2)
  • Classification des flux entrants avec NBAR et
    filtrage des flux sortants avec des ACLs

! Class-based inbound marking class-map match-any
http-hacks match protocol http url cmd.exe !
Policy map to mark inbound policy-map
mark-inbound-http-hacks class http-hacks set ip
dscp 1 ! Apply the service policy to the
 attacking  interface int xy service-policy
input mark-inbound-http-hacks ! Block with an ACL
access-list 100 deny ip any any dscp 1 log
access-list 100 permit ip any any ! Apply the ACL
to the  protected  interface int xy ip
access-group 100 out
38
Détection des vers et protection (3)
  • Classification des flux entrants et politique
    basée sur une classe

! Class-based inbound marking class-map match-any
http-hacks match protocol http url cmd.exe !
Policy map to mark inbound policy-map
drop-inbound-http-hacks class http-hacks policy
8000 4000 2000 conform-action drop exceed-action
\ drop violate-action drop ! Apply the service
policy to the  attacking  interface int xy
service-policy input police-inbound-http-hacks
39
Détection des vers et protection (4)
  • Classification des flux entrants et routage en
    fonction dune politique

! Class-based inbound marking class-map match-any
http-hacks match protocol http url cmd.exe !
Policy map to mark inbound policy-map
mark-inbound-http-hacks class http-hacks set ip
dscp 1 ! Apply the service policy to the
 attacking  interface int xy service-policy
input mark-inbound-http-hacks ! Create a
route-map access-list 100 permit ip any any dscp
1 route-map route2null 10 match ip address 100
set interface Null0 ! Apply the routing policy to
the  attacking  interface int xy ip policy
route-map route2null
40
Détection des vers et protection (5)
  • Restrictions et limitations de NBAR
  • Supporte jusquà 24 comparaisons concurrentes
    (URL, machines ou type MIME)
  • Ne compare que les 400 premiers octets dune URL
  • Ne gère pas les paquets fragmentés
  • Trafic HTTPS (cest normal -)
  • Paquet provenant ou destiné au routeur
    (impossible de protéger le serveur HTTP local)
  • Ne supporte pas lUnicode (UTF-8/u)
  • Optimisez le scheduler et les expirations

ip nbar resources 600 1000 50 scheduler allocate
30000 2000
41
DDoS/vers recherche/futur
  • Le pire est à venir
  • Recherche très active, mais très peu de
    publications les risques sont trop élevés
  • La plupart des vers existants étaient plutôt
    faibles/gentils
  • Les prochains vers vont-ils encore sattaquer à
    IIS/Outlook ?
  • Quels sont les effets sur la stabilité dInternet
    ?
  • Quelles sont les tendances ?
  • Routeurs utilisés comme source (CERT)
  • De plus en plus complexe et agents plus en plus
    intelligents
  • Utilisation temporaire de blocs non alloués
    (Arbor Networks)

42
Capture de trafic réseau (routeurs)
  • Possibilité daffichage local
  • Capture avec des ACLs
  • Utilisez toujours le tampon et naffichez pas sur
    la console
  • Impact sur les performances Vérifiez la charge
    processeur avec la commande sh proc cpu
  • Envoi des informations sur un équipement distant
  • Tunnel GRE vers un serveur et réinjection du
    trafic dans le tunnel (tunnelx)

access-list 100 debug ip packet detail 100
logging buffered 64000 debugging
43
Capture de trafic réseau (commutateurs)
  • Pas daffichage local
  • Envoi des informations sur un équipement distant
  • Copie du trafic dun port ou VLAN vers un autre
    port
  • Possibilité de ne copier que le trafic désiré
    (VACL utilisant le mot clé capture)
  • RSPAN copie le trafic vers un VLAN (nécessite des
    Catalyst 6000 de bout en bout)
  • 1 or 2 port(s) SPAN en fonction du modèle de
    commutateur
  • Impact sur les performances très faible
    vérifiez la charge à laide de la commande ps -c
    (commande cachée)

! MLS in hybrid mode set span ltsource (mod/port
or VLAN)gt ltdestination portgt ! MLS in native
mode monitor session ltsession idgt ...
set security acl capture-ports ltmod/portgt
44
Principes de configuration (1)
  • Désactivez tous les services non utilisés
  • Activez syslog
  • Synchronisez les horloges avec NTP (authentifié
    si possible)

no ip bootp server no tcp-small-servers no
udp-small-servers
no service finger no service pad no ip http
server no ip source-route
no cdp run no boot network no service config no
ip subnet-zero
no ip identd no ip finger service nagle
service time log datetime localtime show-timezone
msec service time debug datetime localtime
show-timezone msec logging x.x.x.x logging trap
debugging logging source loopback0 logging
buffered 64000 debugging
ntp authentication-key 10 md5 ltkeygt ntp
authenticate ntp trusted-key 10 ntp server
x.x.x.x key 10 ntp access-group peer
20 access-list 20 permit host x.x.x.x access-list
20 deny any
45
Principes de configuration (2)
  • Au niveau de linterface
  • En cas dutilisation de trafic multicast
  • Si possible, utilisez les addresses de loopback

interface xy no ip source-route no ip
directed-broadcast no ip proxy-arp no ip
redirects no ip unreachables ! IP accounting
for the traffic that fails the IP ACLs ip
accounting access-violations no ip mask-reply
no cdp enable
interface xy ! To prevent Auto-RP messages from
entering the PIM domain ip multicast boundary
10 access-list 10 deny 224.0.1.39 access-list 10
deny 224.0.1.40
interface loopback0 ip address x.x.x.x
255.255.255.255
46
Admin SNMP (1)
  • Simple Network Management Protocol
  • v1 RFC1157, nom de communauté pour
    lauthentification
  • v2 RFC1441/1446, sécurité améliorée (party) et
    get-bulk
  • v3 RFC2274, apporte la vérification
    dintégrité, le chiffrement et lauthentification
    par utilisateur
  • Attaques et problèmes connus
  • Les administrateurs réseaux utilisent des
    communautés RW
  • Nom de communauté facile à deviner/trouver
  • Attaques par rejeux et déni de service
  • Fuite dinformation
  • La fonction de découverte automatique des outils
    de gestion de réseaux peut transmettre la
    communauté hors de votre réseau/domaine

47
Admin SNMP (2)
  • Filtrage au niveau IP
  • Définissez une ACL et activez la sur chaque
    interface
  • Possibilité dappliquer des ACLs sur le RP
    (S-train)
  • Filtrage au niveau applicatif
  • Définissez une ACL et utilisez la pour le
    contrôle daccès à lapplication
  • Utilisez des vues pour limiter la portée

interface Ethernet0/0 access-group in
100 access-list 100 permit udp host 192.168.1.1
host 192.168.1.2 eq snmp access-list 100 permit
udp host 192.168.1.2 eq snmp host
192.168.1.1 access-list 100 deny udp any any eq
snmp log-input
snmp-server community r3ad view cutdown RO
10 snmp-server community wr1te RW 10 snmp-server
view cutdown ip.21 excluded snmp-server enable
traps ltgt snmp-server host x.x.x.x snmp-server
source loopback0 access-list 10 permit x.x.x.x
48
Admin SNMP (3)
  • SNMP v3
  • Définissez des utilisateurs/groupes et leurs
    droits
  • Trois avis de sécurité récents
  • Communauté ILMI cachée (la commande show snmp
    community montre toute les communautés)
  • Communauté lecture/écriture visible depuis une
    communauté daccès en lecture seule
  • Déni de service (débordement de tampon)

snmp-server group engineering v3 priv read
cutdown 10 snmp-server user nico engineering v3
auth md5 myp4ss priv des56 mydes56 snmp-server
view cutdown ip.21 excluded access-list 10 permit
x.x.x.x access-list 10 deny any log
49
Admin Secure Shell (1)
  • Support SSHv1 (client et serveur)
  • Routeurs depuis 12.1(1)T/12.0(10)S (utilisez
    une image 3DES), scp depuis 12.2T
  • Commutateurs CatOS 6.x
  • Quels sont les risques et limitations ?
  • Limplémentation CISCO est basée sur SSHv1 et
    souffre des même bogues possibilité de
    retrouver la clé de session, CRC32, analyse de
    trafic (SSHow), attaques par analyse temporelle
  • Impossible de forcer lutilisation de 3DES ou
    dutiliser des clés pour lauthentification des
    utilisateurs
  • Corrigé dans 12.0(20)S, 12.1(8a)E, 12.2(3), ...

50
Admin Secure Shell (2)
  • Configuration SSH
  • Configuration scp

hostname lthostnamegt ip domain-name
ltdomainnamegt crypto key generate rsa ip ssh
timeout 60 ip ssh authentication-retries 3
ip scp server enable
51
Admin IPsec (1)
  • Configuration IPsec
  • Interdit tout trafic sauf IPsec et le trafic
    autorisé
  • Définissez une SA (association de sécurité)
    trafic à chiffrer
  • Définissez une politique IKE

interface xy ip address y.y.y.y 255.255.255.0
ip access-group 100 in access-list 100 permit udp
host x.x.x.x host y.y.y.y eq 500 access-list 100
permit esp host x.x.x.x host y.y.y.y access-list
100 permit ahp host x.x.x.x host
y.y.y.y access-list 100 permit ip ltremoteLANgt
ltlocalLANgt
access-list 110 permit ip x.x.x.x ltwildcardgt
y.y.y.y ltwildcardgt
crypto isakmp policy 1 hash md5 encryption
3des authentication pre-share ! DH group (1024
bits) group 2 crypto isakmp key ltkeygt address
y.y.y.y
52
Admin IPsec (2)
  • Configuration IPsec
  • Définissez le transform-set (mode tunnel
    recommandé, plus facile dutiliser le mode
    transport pour Win2k)
  • Mettez le tout dans une crypto-map
  • Et assignez la à une interface

crypto ipsec transform-set 3desmd5 esp-3des
esp-md5-hmac
crypto map mycryptomap 10 ipsec-isakmp set peer
y.y.y.y set transform-set 3desmd5 match address
110
interface xy crypto-map mycryptomap
53
Admin comptes utilisateurs locaux (1)
  • Utilisateurs locaux
  • Le chiffrement de type 7 est réversible
  • MD5 disponible depuis 12.1(8a)E
  • Mot de passe enable
  • utilisez MD5 (type 5)
  • Méthode daccès
  • Supprimez telnet et activez SSH
  • Sécurisez laccès à la console et au port AUX

service password-encryption enable secret 5 ltgt
service tcp-keepalives-in line vty 0 4
exec-timeout 0 60 access-class 10 in transport
input ssh transport output none \ transport
preferred none access-list 10 permit x.x.x.x
54
Admin comptes utilisateurs locaux (2)
  • Commutateurs

set password ltpasswordgt set enablepass
ltpasswordgt ! For access via sc0 set ip permit
enable set ip permit x.x.x.x y.y.y.y telnet set
ip permit x.x.x.x y.y.y.y ssh set ip permit
z.z.z.z y.y.y.y snmp
55
AAA Authentification / Journalisation
  • Authentification/Audit RADIUS/TACACS
  • Enregistrement des commandes tapées
  • TACACS uniquement
  • Autorisation par commande
  • TACACS uniquement

aaa new-model aaa authentication login default
tacacs enable aaa authentication enable default
tacacs enable aaa accounting exec default
start-stop group tacacs ip tacacs
source-interface loopback0 tacacs-server host
x.x.x.x tacacs-server key K3y
aaa accounting commands 15 default start-stop
group tacacs
56
AAA Autorisation
  • Niveaux de privilèges
  • 1 mode utilisateur lecture uniquement
  • 15 mode privilégié enable
  • Changez le niveau de privilège de certaines
    commandes (limite la fuite dinformation et les
    rebonds)
  • Un utilisateur peut seulement visualiser la
    configuration quil est autorisé à modifier
  • Un utilisateur peut avoir uniquement la
    permission de voir la configuration et puis être
    déconnecté

privilege exec level 15 connect privilege exec
level 15 telnet privilege exec level 15
ssh privilege exec level 15 rlogin privilege exec
level 15 show logging privilege exec level 15
show ip access-lists username seeandgo
privilege autocommand show running
57
AAA Kerberos (1)
  • Routeurs Cisco
  • Telnet cerbèrisé et authentification utilisant
    Kerberos (telnet, SSH et console)
  • Association dune instance à un niveau de
    privilège (définition locale)
  • Fonctionnalité Kerberos V client support
    (Enterprise)
  • Non supporté sur certains modèles (16xx, GSR,
    etc)
  • Commutateurs Cisco
  • Telnet uniquement (SSH disponible à partir des
    versions 6.1 mais sans support Kerberos)
  • Version 5.x pour la SE au minimum
  • Uniquement sur Catalyst 4K, 5K et 6K/6500 (avec
    SE I, non supporté par les SE II)

58
AAA Kerberos (2)
  • Kerberos sur un routeur
  • Kerberos sur un commutateur

aaa authentication login default krb5-telnet
local aaa authorization exec default
krb5-instance kerberos local-realm
COLT.CH kerberos srvtab entry host/... kerberos
server COLT.CH 392.568.0.14 kerberos instance map
engineering 15 kerberos instance map support
3 kerberos credentials forward line vty 0 4 ntp
server 392.568.0.626
set kerberos local-realm COLT.CH set kerberos
clients mandatory set kerberos credentials
forward set kerberos server COLT.CH 392.568.0.682
88 set kerberos srvtab entry host/... set
authentication login kerberos enable telnet
primary set authentication enable kerberos enable
telnet primary set ntp client enable set ntp
server 392.568.0.11
59
Listes de contrôle daccès (1)
  • Filtrage IP avec les ACLs
  • Pas de table détat, pas de réassemblage des
    paquets
  • log-input enregistre aussi linterface et
    ladresse MAC source
  • Seul le premier fragment est contrôlé (sauf si
    utilisation du mot clé fragment)
  • Types dACLs connues
  • Standard basées sur ladresse IP source
    uniquement (1-99, 1300-1999)
  • Etendue contrôle sur les adresses IP, ports,
    protocoles, bit ACK/RST positionné (connexion
    établie), etc. (100-199, 2000-2699, ACLs nommées)

60
Listes de contrôle daccès (2)
  • Autre types dACLS
  • TurboACL utilise une table de hashage (gain si
    5 ACEs)
  • Reflexives filtre dynamique pour les réponses
    (ne fonctionne pas pour les protocoles de type
    H.323)
  • Dynamiques ajoute lauthentification des
    utilisateurs aux ACLs étendues
  • Nommées permet de supprimer simplement une ACE
  • Temporelles spécification dun plage de temps
  • CBAC inspecte le protocole (helper/proxy/fixup
    -like), utilisé en conjonction avec des ACLs
  • MAC filtrage basé sur les adresses MAC (700-799
    en standard, 1100-1199 en étendu)
  • Protocoles filtrage sur le type de protocole
    (200-299)

61
Listes de contrôle daccès(3)
  • Exemple ACL étendue sur un routeur
  • ACLs sur un commutateur/routeur
  • Filtrage définit au niveau 3 (S/E/R/D) envoyé
    dans la NMP (TCAM)
  • Pas dimpact de performance sur la MSCF si les
    commandes log-input, ip unreachables, TCP
    Intercept ne sont pas utilisées
  • VACLs (VLAN) Permet de filtrer le trafic au
    niveau IP et sont inscrites par la PFC dans le
    commutateur

no access-list 100 access-list 100 permit
ltgt access-list 100 deny tcp any range 1 65535
any range 0 65535 log access-list 100 deny udp
any range 1 65535 any range 0 65535
log access-list 100 deny ip any any log-input
62
Commutateurs
  • Commutateurs multiniveau (6509)
  • Mode Natif (fonctionnant sous IOS uniquement)
  • Mode Hybride (IOS et CatOS)
  • ACLs traitées rapidement
  • CatOS 6.2 intègre IOS Firewall feature set
  • Relais dauthentification, CBAC, TCP Intercept,
    RACLs
  • Pas de support dIDS, ni de chiffrement
  • Roadmap MAC-layer VACLs (pour le trafic IP)
  • CatIOS 12.1.x supporte
  • IP Unicast-RPF, TCP Intercept, etc

63
Vérification dintegrité du routeur (1)
  • 4 étapes pour construire un vérificateur
    dintegrité pour IOS/CatOS
  • 1. Stockez les configurations des routeurs et
    commutateurs dans un environnement sûr (CVS par
    exemple)
  • 2. Télechargez la configuration depuis
    léquipement
  • script perl ou expect, telnet, ssh, rsh, tftp,
    scp
  • téléchargement via SNMP (accès RW nécessaire)
  • 3. Vérification automatique (batch) ou lorsque
    la configuration est modifié (message configured
    by ltxyzgt dans les logs ou message SNMP)

snmpset -c ltcommunitygt ltrouterIPgt \
.1.3.6.1.4.1.9.2.1.55.lttftpserverIPgt s ltfilenamegt
64
Vérification dintégrité du routeur (2)
  • 4 étapes pour construire un vérificateur
    dintegrité pour IOS/CatOS
  • 4. Comparez les configurations à laide dun
    script ou utilisez CVS (ou Rancid)
  • Limitations et détails
  • Confiance dans le système (toujours pas de
    rootkit Cisco) et dans le réseau utilisé
    (attaques par interception)
  • Configuration transmise en clair sur le réseau
    (sauf si chiffrement via scp ou IPsec)
  • Il y a deux fichiers startup-config et
    running-config
  • Sauvergardez également les images IOS/CatOS
  • MIBs Cisco CISCO-CONFIG

65
Vérification dintégrité du routeur (3)
  • Cisco IOS rootkit/BoF/FS est-ce possible ?
  • Système propriétaire fonctionnant sur processeurs
    MIPS (nouveaux modèles) ou Mot68K (anciens
    modèles)
  • Programmes au format ELF 32-bit MSB, édition des
    liens statique
  • Possibilités avec laccès à gdb kernelpid
    pid-num ?
  • La ROMMON est-elle un intéressant point de départ
    (gdb local) ?

Inside Cisco IOS software architecture - Cisco
Press - In general, the IOS design emphasizes
speed at the expense of extra fault
protection - To minimize overhead, IOS does not
employ virtual memory protection between
processes - Everything, including the kernel,
runs in user mode on the CPU and has full
access to system resources
66
Vérification dintégrité du routeur (4)
  • Cisco IOS rootkit/BoF/FS problèmes ouverts
  • Aucune commande/outils documentés pour interagir
    avec le noyau, la mémoire, les processus, etc.
  • Possibilités en mode enable engineer ?
  • Possibilité de charger une image IOS modifiée et
    de léxécuter sans redémarrer le routeur ?
  • Le grand nombre dimage disponible rend la tâche
    difficile et un outil pour modifier les images
    est requis
  • Nouvelle possibilité avec lIOS-NG (support de
    modules dynamiques) ?

67
MPLS (1)
  • MultiProtocol Label Switching
  • Circuits virtuels, VPN non chiffrés/authentifiés
  • Equivalent à un circuit de niveau 2 (ATM/FR)
  • IPsec peut être utilisé pour sécuriser le trafic
  • Partitionnement VPN réalisé uniquement lors du
    routage
  • Une table de routage par VPN sur chaque routeur
    PE (VRF)
  • En-tête MPLS ajouté à chaque paquet pour
    identifier le VPN
  • Chaque routeur (LSR) sur le chemin MPLS (LSP)
    gère une table locale (LIB)
  • Len-tête à une signification locale et peut être
    changé à chaque saut

68
MPLS (2)
  • Attaques
  • Injection de paquets marqués
  • Bloqué par défaut sur toute les interfaces
    (CE/PE)
  • Simple en ayant accès à un routeur MPLS
  • Injection de données dans le protocole de
    signalisation ((MP-)BGP et IGPs) pour modifier la
    topologie du réseau MPLS
  • Mesures de sécurité
  • Configuration correcte de tous les routeurs
  • Information MPLS distribuée sur tous les routeurs
    (difficile à rassembler)

69
IPv6
  • IPv6
  • Peu de nouveaux risques
  • Support IPsec natif
  • Risque élevé plus durant la transition IPv4 -gt
    IPv6
  • Ladresse MAC peut faire partie de ladresse IP

70
Thats all folks -)
Dernière version de la présentation lt
http//www.securite.org/presentations/secip/ gt
Merci aux membres du groupe eXperts pour la
relecture et les commentaires, et à vous pour
votre participation.
Image http//www.inforamp.net/dredge/funkycomput
ercrowd.html
Write a Comment
User Comments (0)
About PowerShow.com