Durcissement d'un routeur Cisco Par Elie MABO Administrateur Systèmes, Réseaux et Sécurité elie.mabo@gmail.com Dernière mise à jour: 20/06/2010 Document rédigé par Elie MABO (Administrateur Systèmes, Réseaux et Sécurité) 1/6
Table des matières A- Contexte et objectif...3 B- Définition de la politique de sécurité du routeur... 3 1- Politique d'acquisition...3 2- Politique de déploiement ou de mise en oeuvre... 3 3- Politique de mot de passe... 3 4- Politique d'exploitation... 3 5- Politique de durcissement... 4 6- Politique de journalisation... 4 C- Sécurisation des accès et mots de passe... 4 1- Configurer la longueur minimale d un mot de passe...4 2- Empêcher les ouvertures de sessions sur les lignes (auxiliaires et virtuelles)...4 3- Autoriser juste les accès distants en SSH (le telnet n'étant pas sécurisé)... 4 4- Configuration de la sécurité supplémentaire pour les lignes VTY... 4 5- Configuration de la sécurité SSH... 4 6- Accorder une attention particulière sur les vulnérabilités SNMP, NTP et DNS...5 7- Désactiver tous les services et comptes inutiles... 5 D- Sécurisation des protocoles de routages... 5 1- Configurer le protocole RIPv2 avec authentification... 5 2- Configurer l authentification du protocole de routage EIGRP...5 3- Configurer l authentification du protocole de routage OSPF...6 4- Verrouiller le routeur à l aide de Cisco autosecure... 6 E- Configuration d un routeur pour l utilisation de SDM... 6 F- Pour conclure...6 Document rédigé par Elie MABO (Administrateur Systèmes, Réseaux et Sécurité) 2/6
A- Contexte et objectif Un routeur est un équipement dédié qui participe au processus d'acheminement des paquets dans un réseau (local ou étendu), depuis une source (émetteur) vers une destination (récepteur). Ses deux principales fonctionnalités sont: La détermination du chemin par lequel doit passer les paquets et l'acheminement de ceux ci vers leur destination. Pour y parvenir, il s'appuie sur une table de routage contenant des informations nécessaires pour le routage des paquets. Ces fonctionnalités font d'un routeur, un dispositif indispensable pour le fonctionnement d'un réseau de grande taille, d'où l'importance de le protéger contre les attaques. Le présent document définit les exigences de sécurité à prendre en compte lors de la mise en service d'un routeur en général, et décrit comment configurer la sécurité sur un routeur Cisco pour assurer son durcissement. J'entends ici par durcissement, l'ensemble des moyens organisationnels et techniques permettant d'assurer la sécurité physique et logique du routeur. B- Définition de la politique de sécurité du routeur 1- Politique d'acquisition Avant d'acquérir un routeur, il convient de définir une politique d'acquisition. Quelles sont les fonctionnalités auxquelles nous souhaitons que le routeur assure? Quel constructeur choisir? Quel est la garantie? Le support estil assuré? faut-il un contrat de maintenance? Telles sont là quelques questions dont les réponses doivent figurer dans la politique d'acquisition. 2- Politique de déploiement ou de mise en oeuvre Une fois le routeur acquis, il convient de définir une politique de mise en oeuvre. Cette politique devra tenir compte de son installation, de sa configuration et de sa mise en service. Par exemple, il doit être placé dans un endroit sécurisé (accès protégé), derrière un dispositif de protection comme un pare-feu par exemple. 3- Politique de mot de passe Les routeurs présentent plusieurs types et niveaux d'accès (telnet, ligne virtuelle (vty), http, ligne auxiliaire, mode enable, etc.). Chacun de ces accès est protégé par un mot de passe. Une politique de mots de passe doit être définie et appliquée pour éviter leur compromission. Par exemple, les mots de passe doivent être changés suivant une périodicité (tous les trois mois par exemple). Ils doivent être forts, c'est à dire composé des chiffres, caractères spéciaux (@!&#), majuscules et minuscules. Ceci permet d'éviter les attaques par dictionnaire ou par force brute. 4- Politique d'exploitation Le routeur étant en service, il convient de définir une politique d'exploitation. Cette politique doit contenir des éléments sur la mise à jour de l'ios, la périodicité des mises à jour des protocoles de routage, les routeurs voisins autorisés à communiquer avec le routeur, la période des interventions sur le routeur (exemple: pas d'intervention lorsque les transactions sont encours), etc. Document rédigé par Elie MABO (Administrateur Systèmes, Réseaux et Sécurité) 3/6
5- Politique de durcissement Il convient de définir une politique de durcissement du routeur. Par exemple, en définissant les rôles et responsabilités des différents intervenants (administrateur réseaux, fournisseurs, etc.), les services et comptes inutiles à désactiver, les types d'accès autorisés, la politique de sauvegarde de la configuration, etc.. 6- Politique de journalisation Un routeur étant un équipement sensible, il est important de le surveiller afin d'avoir une idée sur ses différentes activités (trafic, connexion, etc.). Cette surveillance passe par les fichiers journaux générés par celui ci. Il convient donc de définir une politique de journalisation. Par exemple, comment doivent être utiliser les fichiers journaux, où doivent-ils être stockés? L'envoi des fichiers journaux (log) vers un serveur centralisé (syslog par exemple) doit être sécurisé, une sauvegarde d une copie des logs doit être réalisée. C- Sécurisation des accès et mots de passe 1- Configurer la longueur minimale d un mot de passe R1(config)# security passwords min-length 10 2- Empêcher les ouvertures de sessions sur les lignes (auxiliaires et virtuelles) // Ligne auxiliaire R1(config)# line aux 0 R1(config-line)# no password R1(config-line)# login // Lignes virtuelle R1(config-line)# no password R1(config-line)# login 3- Autoriser juste les accès distants en SSH (le telnet n'étant pas sécurisé) R1(config-line)# no transport input R1(config-line)# transport input ssh 4- Configuration de la sécurité supplémentaire pour les lignes VTY R1(config-line)# exec-timeout 5 R1(config)# service tcp-keepalives-in 5- Configuration de la sécurité SSH Document rédigé par Elie MABO (Administrateur Systèmes, Réseaux et Sécurité) 4/6
R1(config)# hostname Ottawa Ottawa(config)# ip domain-name cisco.com Ottawa(config)# crypto key generate rsa Ottawa(config)# username emabo secret cisco123 // définition du nom d hôte) // définition du nom de domaine) // génération des clés asymétriques Ottawa(config)# line vty 0 4 Ottawa(config-line)# transport input ssh locale et VTY Ottawa(config-line)# login local // configuration de l authentification Ottawa(config)# ip ssh time-out 10 Ottawa(config)# ip ssh authentication-retries 3 nouveau ssh // configuration des délais d attente ssh // configuration des délais d'essai à 6- Accorder une attention particulière sur les vulnérabilités SNMP, NTP et DNS Pour assurer ses fonctionnalités, un routeur s'appuie sur d'autres services comme comme le service de résolution des noms. Il se trouve que ces services sont souvent vulnérables. Il convient donc de s'assurer que les services auxiliaires sur lesquels s'appuie un routeur sont bien configurer et sécurisé. 7- Désactiver tous les services et comptes inutiles R1(config)# no service finger // exemple du service finger D- Sécurisation des protocoles de routages Les protocoles de routages sont utilisés par un routeur pour mettre à jour dynamiquement, sa table de routage. Les informations de mise à jour circulant très souvent en clair entre les routeurs, il convient de configurer un minimum de sécurité pour ces protocoles. Cette partie du document qui se veut technique présente comment configurer certains protocoles de routage de manière sécurisé. 1- Configurer le protocole RIPv2 avec authentification Ottawa(config)# router rip Ottawa(config-router)# passive-interface default // désactivation de la propagation des mises à jour de routage Ottawa(config-router)# no passive-interface serial 0/0 // activation de la propagation sur une seule interface Ottawa(config)# key chain TOTO Ottawa(config-keychain)# key 1 Ottawa(config-keychain-key)# key-string cisco Ottawa(config)# interface serial 0/0 Ottawa(config-if)# ip rip authentication mode md5 Ottawa(config-if)# ip rip authentication key-chain TOTO 2- Configurer l authentification du protocole de routage EIGRP Ottawa(config)# key chain EIGRP_KEY Document rédigé par Elie MABO (Administrateur Systèmes, Réseaux et Sécurité) 5/6
Ottawa(config-keychain)# key 1 Ottawa(config-keychain-key)# key-string CCNP Ottawa(config)# interface serial 0/0 Ottawa(config-if)# ip authentication mode eigrp 1 md5 Ottawa(config-if)# ip authentication key-chain eigrp 1 EIGRP_KEY 3- Configurer l authentification du protocole de routage OSPF Ottawa(config)# interface serial 0/0 Ottawa(config-if)# ip ospf message-digest-key 1 md5 cisco Ottawa(config-if)# ip ospf authentication message-digest Ottawa(config-if)# exit Ottawa(config)# router ospf 10 Ottawa(config-router)# area 0 authentication message-digest 4- Verrouiller le routeur à l aide de Cisco autosecure auto secure est une commande créée par Cisco pour faciliter l'activation et la désactivation des services sur un routeur Cisco. Elle fonctionne en deux modes: interactive et non interactive Ottawa# auto secure Pour en savoir plus sur les fonctions exécutées par la commande auto secure, je vous recommande ce site: http://www.ciscozine.com/2008/09/13/using-autosecure-to-secure-a-router/ E- Configuration d un routeur pour l utilisation de SDM Pour boucler ce document, je me permets de mettre à votre disposition, la procédure permettant de configurer un routeur de manière à ce qui soit administrable par SDM (Security Device Manager). SDM est un outil permettant d'administrer des équipements (routeurs, commutateurs, etc.) via une interface graphique. Ottawa#config t Ottawa(config)# ip http server Ottawa(config)# ip http secure-server Ottawa(config)# ip http authentication local Ottawa(config)# username emabo privilege 15 secret toto R1(config-line)# privilege level 15 R1(config-line)# login local R1(config-line)# transport input ssh F- Pour conclure Ce document est loin d'être une référence absolu pour garantir la sécurité à 100% d'un routeur. Déjà qu'il n'existe pas de sécurité à 100%. Néanmoins, il donne une idée sur une ensemble de tâches à réaliser pour assurer un minimum de sécurité au niveau d'un routeur. Tous les protocoles de commutation et routage n'ont pas été abordés dans ce document. Je pense aux protocoles MPLS et BGP qui sont très utilisés dans le réseau Internet par les opérateurs de télécoms. Je pourrais dans certains contextes enrichir ce document si je suis sollicité. Il ne me reste plus qu'à vous souhaiter bonne utilisation. Document rédigé par Elie MABO (Administrateur Systèmes, Réseaux et Sécurité) 6/6