Mejorar la conexión WAN/LAN de un router Cisco

Tema en 'Redes Informáticas' iniciado por Sam Fisher, 26 Mar 2008.

Estado del tema:
Cerrado para nuevas respuestas
  1. Sam Fisher

    Sam Fisher adicto a nocturnar

    opciones y posibilidades
    que ofrecen los routers Cisco para mejorar la seguridad de su LAN/WAN o conexion a internet.

    -= Antecedentes:

    En noviembre de 1997 aparecion en la bugtraq (http://www.geek-girl.com/bugtraq)
    un anuncio de un fallo de seguridad encontrado en la serie 7xx de los
    routers Cisco, mediante el cual, podrian ser atacados via telnet e
    introduciendo un password con una alto numero de caracteres.

    Cualquier router Cisco 7xx con versiones del IOS comprendidas entre las
    4.1(1) y 4.2(2) estaban afectados por dicho bug, que para ser explotado, el
    atacante ha de tener acceso al prompt del password o a la consola
    directamente.

    El efecto que se conseguia con esta vulnerabilidad era resetear el router,
    con la consiguiente negacion del servicio durante el tiempo que duraban
    dichos reseteos.

    Otro nuevo bug aparecio relacionado con el llamado "PIX private Link", una
    opcion de los PIX firewalls de Cisco. PIX private Link crea una IP-VPN (Virtual
    Private Network) sobre redes no fiables (Untrusted Networks), como internet,
    usando tuneles encriptados (similar al IP-tunelling) con encriptacion DES
    (Data Encryption Standart) en modo ECB ("Electronic Codebook).

    El bug consistia en un error que reducia la longitud de clave DES de sus
    originales 56 bits a 48 bits. Los sistemas afectados son aquellos con
    versiones de PIX private link software inferiores a la 4.1.6.

    Debido a la proliferacion de bugs en los routers Cisco, nos hemos propuesto
    hacer un repaso por las diferentes opciones de configuracion que estos
    routers nos ofrecen, no solo en implementaciones bajo TCP/IP, sino bajo
    otros protocolos presentes en muchas de las empresas que usan estos
    enrutadores.

    -= Comandos y Opciones:

    Existen un numero de comandos y opciones que pueden ser usados y que no se
    refieren a ningun protocolo en particular, sino al sistema operativo y al
    router en si, dichos comandos los mostraremos en mayusculas.

    Uno de las opciones mas utiles de los routers Cisco es la posibilidad de
    usar "access lists" o listas de acceso. Esta opcion funciona ligeramente
    distinto en cada protocolo (IP, Decnet, Appletalk, bridging, etc...) pero el
    principio es el mismo. Una lista de acceso permite al Cisco actuar como un
    Firewall, filtrando paquetes basandose en su origen o direccion de destino,
    y bien usadas, las listas de acceso son capaces de asegurar totalmente un
    segmento de una LAN o WAN. Mas adelante seguiremos hablando de las access
    lists.

    A continuacion pasamos a nombrar comandos y opciones de los routers Cisco
    para mejorar y supervisar la seguridad:

    - SHOW SESSIONS: Este comando permite ver las conexiones activas actuales.

    - Cisco tiene la posibilidad de ser configurado remotamente, pero en caso
    que se tema que su router pueda ser manipulado existe un jumper que
    activa/desactiva la escritura en la memoria flash.

    - Otra posibildad de arranque remoto es el llamado TFTP (Trivial File
    Transfer Protocol), este metodo es peligroso desde el punto de vista de la
    seguridad, ya que no tiene siquiera validacion por password. Si la
    configuracion del router se deja en el directorio de tftp (tftproot),
    cualquier usuario podra leer dicha configuracion, asi como el login y la
    ENABLE password.
    Existe la posibilidad de dividir la configuracion en dos partes:
    La parte segura y la insegura. La parte insegura, la cual no implica ningun
    riesgo de seguridad si alguien la leyese, se deja en el directorio de tftp
    (tftproot). La parte segura se deja en la memoria flash o ROM.

    - ENABLE password: Cisco tiene dos niveles de passwords. Uno es el password
    de "solo lectura", el cual deja ver las configuraciones pero no deja alterar
    ninguna de ellas, y el segundo nivel es el password de ENABLE, el cual
    permite la modificacion total de las configuraciones. El password puede
    contener cualquier caracter, incluido un espacio en blanco.

    - Encriptacion: Cisco puede mantener su password en texto simple, o puede
    encriptarla, de modo que cualquiera que hiciese un "SHOW CONF" no la viera en
    la configuracion. Esto se hara mediante el comando "SERVICE
    PASSWORD-ENCRYPTION". Si olvidase el password, no hay manera de volver a
    cambiarlo.

    - TACACS: Consiste en hacer que un host UNIX de la red haga la validacion de
    passwords, lo cual permitiria un acceso mas controlado a su router, dejando
    atras la limitacion de que exista un par de passwords para acceder al
    router. El comando "TACACS-SERVER HOST host.foobar.com" indica que
    host.foobar.com es la maquina UNIX que ejecuta el servidor TACACS para
    validar las peticiones enviadas a los Ciscos. El fichero standard
    /etc/passwd es el usado para la validacion de usuarios.
    El comando "TACACS-SERVER LAST-RESORT PASSWORD|SUCCEED" controla que ocurre si
    el servidor TACACS no esta respondiendo, si se da este caso podria quedarse
    sin acceso al router, este comando indica si le dejaria loguearse sin
    password (SUCCEED) o si permite al router autentuficar de modo standard
    (PASSWORD).
    Este metodo de validacion de passwords tambien puede ser aplicado al comando
    ENABLE password mediante el comando "ENABLE USE-TACACS" y "ENABLE LAST-RESORT
    PASSWORD|SUCCEED".

    - Existe tambien un metodo para mantener una lista de usuarios y sus
    passwords directamente en el router Cisco. El comando "USERNAME user PASSWORD
    0|7". El numero "0" indica que el password se guardara en texto plano, y el
    numero "7" indica que guardara el password encriptado.

    - SNMP: SNMP permite el mantenimiento remoto del router Cisco. SNMP permite
    dos niveles de acceso, solo lectura (R/O) y lectura-escritura (R/W).
    R/O permite examinar todas las variables del router mientras que R/W permite
    alterar el estado de dichas variables, lo que es lo mismo que disponer del
    ENABLE password. No se recomienda permitir el acceso R/W via SNMP porque el
    password se envia en texto plano con cada paquete.
    Para activar el SNMP en los routers Cisco se utiliza el comando "SNMP-SERVER
    COMMUNITY string RO" donde string es cualquier password que quieras utilizar
    para controlar el acceso via SNMP.
    Tambien es aconsejable activar a quien van a ir dirigidos los traps
    generados por el servicio SNMP del router, el comando seria:
    "SNMP-SERVER HOST ipaddress community-string SNMP" donde ipaddress es la
    direccion ip del equipo que recibira los traps SNMP y "community-string" es
    la comunidad que recibira dichos traps.

    - LOGGING: Cisco permite un numero de diferentes funciones de logueo.
    "LOGGIN ipaddress" enviaria todos los logs del router al syslog de la
    maquina UNIX indicada en "ipaddress".
    La cantidad de informacion que genera depende a que nivel indiquemos la
    generacion de logs. "LOGGIN TRAP level" determina que logs generara en base
    a la siguiente lista:

    0 - emergencias
    1 - alertas
    2 - error critico
    3 - errores
    4 - warnings (default)
    5 - notificacion
    6 - informacion
    7 - debugging

    La opcion 4 es la activada por defecto, e indica que generara logs
    referentes a los niveles comprendidos entre 0-4.

    Si no desea configurar su syslog para recibir estas alertas, existe la
    posibilidad de utilizar el comando "LOGGING BUFFER", el cual almacenara los
    logs en el buffer, que luego podra ser visualizado mediante el comando "SHOW
    LOGGING". El buffer tiene un limite de aproximadamente unas 100 lineas.

    - Restringir los accesos: Algunas veces es conveniente permitir el acceso a
    su router a ciertas direcciones IP. Para ello se utiliza el comando
    "ACCESS-CLASS". por ejemplo:

    access-list 12 permit 192.58.55.0 0.0.0.255
    access-list 12 deny 0.0.0.0 255.255.255.255
    access-class 12 in

    Esto permitiria el acceso via telnet al Cisco de la direccion 192.58.55.0 y
    de ninguna otra direccion.

    - Login timeout: el comando "EXEC-TIMEOUT mm ss" define el tiempo que el
    router esperara para desactivar un login desatendido.


    En cuanto la seguridad a nivel de protocolos vamos a entrar en detalle en
    el protocolo IP.

    - PROTOCOLO IP:

    Al igual que las listas de acceso, existen las listas de acceso extendidas,
    con ellas se puede controlar todo lo que pasa por un router Cisco. Mejor que
    entrar a explicar la sintaxis de las listas de acceso vamos a poner varios
    ejemplos:

    ! Permitir todas las conexiones salientes de la red 128.88
    ! Permitir todas las conexiones entrantes al puerto 25 de la maquina
    ! con direccion IP 128.88.1.2
    !
    access-list 101 permit tcp 128.88.0.0 0.0.255.255 0.0.0.0 255.255.255.255
    access-list 101 permit tcp 0.0.0.0 255.255.255.255 128.82.1.2 eq 25
    !
    ! Denegar todas las comunicaciones con Cisco TS en la direccion 132.70.1.251
    !
    access-list 101 deny ip 132.70.1.251 0.0.0.0 0.0.0.0 255.255.255.255
    !
    ! Bloquear accesos a los puertos de consola en la red 132.70.0.0
    !
    access-list 101 deny tcp 0.0.0.0 255.255.255.255 132.70.0.0 0.0.255.255 eq
    2000
    !
    ! Permitir el acceso a los servicios basicos TCP
    ! por debajo del puerto 80
    ! incluido 105 = IQ y 113 = AUTH
    ! Permitir tambien acceso a la ip 132.70.9.24 al puerto 515 (LPD)
    !
    access-list 101 permit tcp 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255
    lt 80
    access-list 101 permit tcp 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255
    eq 105
    access-list 101 permit tcp 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255
    eq 113
    access-list 101 permit tcp 0.0.0.0 255.255.255.255 132.70.9.24 0.0.0.0 eq
    515
    access-list 101 deny tcp 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255 lt
    1024
    !
    ! Permitir acceso a todos los puertos por encima del 1024
    ! excepto para los puertos: 6000-6009 (Xwindows)
    ! y permitir todo a la direccion IP 132.70.9.182
    !
    access-list 101 permit 0.0.0.0 255.255.255.255 132.70.9.182 0.0.0.0
    access-list 101 permit tcp 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255
    lt 6000
    access-list 101 permit tcp 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255
    gt 6009
    !
    ! Permitir servicios basicos UDP, denegar NFS
    ! (puerto 67 udp = bootp; 161 udp = SNMP; 2049 udp = NFS)
    !
    access-list 101 permit udp 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255
    lt 67
    access-list 101 deny udp 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255 eq
    2049
    access-list 101 permit udp 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255
    gt 160
    !
    ! Permitir todo el trafico ICMP (no recomendable)
    !
    access-list 101 permit icmp 0.0.0.0 255.255.255.255 0.0.0.0 255.255.255.255
    !
    ! Fin de la lista de accesos.

    - IPSO: IP Security Option, Cisco implementa esta tecnologia que es la usa
    por los militares de Estados Unidos. IPSO esta definido en el RFC1108, y
    distingue entre varios niveles de seguridad:

    - Top Secret
    - Secret
    - Confidencial
    - Unclassified

    y tambien niveles de autoridad:

    - Genser
    - Siop-Esi
    - SCI
    - NSA

    En los routers Cisco, cada interface puede tener su propio nivel de
    seguridad. Todo el trafico que entre por un interface tiene que tener el
    nivel apropiado para pasar, de otro modo, seria rechazado, y una vez el
    trafico sale de ese interface, lleva la marca de seguridad del interface por
    el que ha pasado.

    Ejemplos:

    interface ether 0
    ip security dedicated secret sci
    interface serial 3
    ip security multilevel unclassified to secret nsa
    interface serial 4
    ip security multilevel secret genser to topsecret genser

    El Router Cisco tiene la habilidad de aceptar o rechazar datagramas que no
    estan marcados, y de quitar dichas marcas de seguridad cuando dichos
    datagramas son enviados a redes publicas.

    - IP Accounting: esta opcion da la posibilidad de ver que nodos estan
    hablando con que nodos y cuanto lo estan haciendo. Ejecutando "CLEAR IP
    ACCOUNTING" y "SHOW ACCOUNTING" periodicamente, se puede determinar que
    hosts estan activos y usando la red. Para habilitar IP accounting se utiliza
    el comando "IP ACCOUNTING" en el interface que se desee monitorizar.

    - SLIP: Cisco tambien permite conexiones via SLIP (Serial Line Internet
    Protocol) mediante lineas RS-232 asincronas (1.2 kb - 19.2 kb). Por razones
    de seguridad, no se suele activar esta opcion dado que SLIP es un protocolo
    considerado "no seguro".

    - Filtrado de enrutado: Si se desea que ciertos routers no actualizen sus
    tablas de routing, se puede controlar mediante el comando "DISTRIBUTE-LIST
    1-99 OUT". Estos filtros de routing pueden ser asignados a interfaces
    especificos como en el primer ejemplo, o a un protocolo enrutable
    especifico, como en el segundo ejemplo:

    router rip
    network 138.108.0.0
    distribute-list 1 out ethernet 3
    access-list 1 permit 131.108.0.0
    access-list 1 deny 0.0.0.0 255.255.255.255

    router egp
    network 131.108.0.0
    redistribute igrp 109
    distribute-list 3 out igrp 109

    En este segundo ejemplo, las redes descubiertas por el proceso de routing
    IGRP 109 son redistribuidas al proceso de routing 164, excepto aquellas
    definidas en el access-list 3.


    Existen muchas opciones mas, los routers cisco son capaces de mantener su
    red completamente segura de ataques externos, e incluso internos, solamente
    se requiere una preocupacion por la seguridad y un mantenimiento de sus
    routers, actualizando sistemas operativos y estando atentos a los boletines
    de seguridad para parchear Bugs, si los hubiera.

    Fuente: www.totalcoredump.org
     
Estado del tema:
Cerrado para nuevas respuestas

Compartir esta página