
Artículo · Auditoría de Redes Informáticas
Reforzando la seguridad en los router Cisco
Reforzando la seguridad de los router Cisco
Descripción
Un router es un dispositivo de red fundamental porque es el encargado de enrutar el trafico fuera de nuestra intranet por lo tanto todo el trafico pasa por el ,por ello es indispensable realizar un hardening o aseguramiento de un router, en este caso un router Cisco que tiene sus propios comandos. Hoy en dia se puede configurar con CCP(Cisco Configuration professional) pero lo haremos a lo manual.
Nosotros para asegurar un router Cisco vamos utilizar GNS3 y por internet hay muchos sitios donde puedes encontrar imagenes de router Cisco, en este caso yo utilizare la imagen del modelo de router 1700, tambien puedes utilizar packet tracert 7.0 que viene con muchas mejoras
Las acciones fundamentales para asegurar un router son:
1. Establecer una longitud minima de password
2. Controlar el tiempo de inactividad de una linea
3. Controlar el acceso a todos los puertos
4. Deshabitar puertos no utilizados
5. Encriptar todas las contraseñas del router
6. Crear un banner para disuadir de posibles accesos no autorizados
7. Crear usuarios
8. Deshabitar todos los servicios que no se utilizan
9. Configurar SSH
10. Bloqueo de ataques de fuerza bruta online
11. Monitorear todos los cambios en un router y guardar los logs de manera segura
12. Asegurar los archivos (IOS y archivo de configuración)
13. Control de acceso (por ejemplo mediante roles)
Vamos a realizar todos los pasos excepto el 4 y 9 que lo dejaremos para otro articulo.
1.Establecer un tamaño minimo de contraseña
A partir del release 12.3(1) del IOS de Cisco podemos poner un minimo tamaño para las contraseñas del router que puede ser de 0 a 16 caracteres.
El comando es:
security password min-length longitud
Este comando se aplica sobre contraseñas ya establecidas en cuentas de usuario ,modo exec privilegiado y lineas virtuales.
2.Controlar el tiempo de inactividad de una linea
Para limitar el tiempo de inactividad de una linea de consola(la que nos permite configurar por primera vez el router).
line console 0
exec-timeout minutos segundos
Para limitar el tiempo de inactividad de una linea virtual o de telnet
line vty 0 4
exec-timeout minutos segundos
Para limitar el tiempo de inactividad de una linea auxiliar(se suele utilizar para configurar de manera remota por modem el router).
line aux
exec-timeout minutos segundos
Todas las lineas por defecto tienen 10 minutos
3.Controlar el acceso a todos los puertos
Necesitamos una contraseña para controlar el acceso al modo administrativo (#).
enable secret contraseña la encripta con MD5
para establecer una contraseña en el puerto consola
line console 0
login local
password contraseña
Para establecer una contraseña en las lineas virtuales
line vty 0 4
login local
password contraseña
Para establecer una contraseña en el puerto auxiliar
line vty 0 4
login local
password contraseña
Login local permite permitir la conexión remota de usuarios locales.
4. Deshabilitar puertos no utilizados
Si queremos deshabilitar un puerto porque no vamos a utilizar como aux o el puerto consola
line console 0
no exec
line aux 0
no exec
Estos puertos es bueno deshabilitarlos para evitar ataques de acceso fisico y ataques de manera remota desde internet por ejemplo.
5.Encriptar todas las contraseñas del router
service password-encription encripta todas las contraseñas del router pero utiliza el algoritmo MD7 que es facil de crakear si acceden al archivo de configuración pero podemos utilizarlo para tener algo de seguridad.
copy running-config startup-config nos guardara la configuración de memoria RAM a la memoria NVRAM que es donde se guardan estos archivos.
6.Crear un banner para disuadir de posibles accesos no autorizados
config t
banner motd # mensaje#
Este mensaje debe advertir de las consecuencias de acceder de manera no autorizada a este router.
config t
banner exec #mensaje#
Para los usuarios autorizados y debe indicar el uso apropiado del recurso mediante la politica de uso aceptable(UAP) de los recursos de la empresa.
7. Crear usuarios
Para crear un usuario utilizamos el comando
config t
username nombre secret 5 contraseña
Permite encriptar la contraseña con el algoritmo MD5
8. Configurar SSH
Para poder utilizar ssh se deben realizar los siguientes pasos.
1. ip domain-name nombre de dominio
2. Crypto key generate rsa general-keys modulus tamaño
3. Necesitamos una BD de usuarios
Config t
line vty 0 4
login local
transport input ssh
no transport input telnet
En este ultimo paso le indicamos que se utilizara la BD local para que se conecten usuarios y que no se permitira conexiones telnet solo ssh. Para indicar el tiempo que el router tiene que esperar para desconectar a un usuario por inactividad seria.
config tPara indicar el numero de intentos que tiene un usuario para autenticarse antes de ser desconectado.
ip ssh timeout segundos
config t
ip ssh authentication-retries numero
10.Bloqueo de ataques de fuerza bruta online
En un ataque hay el modo vigilancia que en el cual se controla el numero de intentos exitosos y fallidos en el router y el modo silencioso que es aquel en el que no se permite trafico de administración al router durante un tiempo excepto un trafico determinado.
config tLe indicamos que bloquee un numero de segundos el acceso por ssh, telnet y http cuando se realizaron n intentos fallidos en un intervalo de segundos determinado.
login block-for segundos attempts numero intentos within segundos
login mode-quit access-class ACL
Le indicamos el numero de ACL o nombre para que un determinado trafico se permita en el modo silencioso.
login delay segundos
Indica el numero de segundos que tiene que pasar entre cada intento ,bueno para evitar ataques de fuerza bruta muy rápidos con brutus.
login on-failure log every intentos
se registra los intentos fallidos a partir de un numero
login on-success log every 1
Se registra los logueos exitosos a partir de 1 .
con show login podemos ver el modo en el que esta el router silencioso o vigilante
con show login failures podemos ver los intentos fallados ,desde que dirección ip ,el usuario y la hora
10. Monitorear todos los cambios en un router y guardar los logs de manera segura
Para poder utilizar un servidor syslog que guarde los registros de un router necesitamos sincronizarnos con un servidor NTP ,podemos autenticarnos con el pero no lo haremos para simplificar todo.
config t
ntp server direccion ip
Con ntp status podemos ver si estamos sincronizados
Ahora vamos a conectar nuestro router con el servidor syslog
logging host ip del syslog
logging trap informational envia todo lo que se hace en el router
logging source-inteface interfaz se envia por una interfaz fastetheret por ejemplo
logging on activamos el servicio
show logging nos muestra los mensajes que se envian
un mensaje syslog muestra fecha, nivel de severidad y una descripción.
11. Asegurar los archivos (IOS y archivo de configuración)
La resilient configuration permite proteger la IOS y el archivo de configuración de borrados accidentales o modificaciones fraudulentas de por ejemplo un hacker habilidoso
config t
secure boot-image protege la imagen IOS
secure boot-config protege el archivo de configuracion
¿Quieres aprender estas técnicas en profundidad?
Continúa tu ruta con Wireshark para Pentester.

Escrito por
Alejandro Canosa Ferreiroamo la seguridad informática y el open source;estoy certificado en COMPTIA SECURITY+



