Artículo · Auditoría de Redes Informáticas

Reforzando la seguridad en los router Cisco

Alejandro Canosa FerreiroAlejandro Canosa Ferreiro 6 min de lectura

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

4.
 
 
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 t
ip ssh timeout segundos
Para indicar el numero de intentos que tiene un usuario para autenticarse antes de ser desconectado.

 

 

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 t
login block-for  segundos attempts numero intentos within segundos 
Le 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 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.

Alejandro Canosa Ferreiro

Escrito por

Alejandro Canosa Ferreiro

amo la seguridad informática y el open source;estoy certificado en COMPTIA SECURITY+

Sigue leyendo

Implementación y pruebas automatizadas con Github Actions CI/CD
Auditoría de Redes Informáticas

Implementación y pruebas automatizadas con Github Actions CI/CD

Felipe Barrios

¿Qué es CI/CD? Según Wikipedia, en ingeniería de software, CI/CD o CI/CD generalmente refiere a las prácticas combinadas de integración continua y entrega continua (también conocida como despliegue continuo).

Webmap Dashboard para Nmap
Auditoría de Redes Informáticas

Webmap Dashboard para Nmap

José Moreno

Compartiendo con unos colegas del grupo Purple Team UTP al cual pertenezco, hemos estado desarrollando una investigación sobre herramientas que podamos automatizar para la hora de realizar un pentesting, para ello hemos encontrado la herramienta Webmap, un dashboard que toma los resultados de Nmap y los gráfica, además que nos muestra un panel de administración. Esta herramienta no es recomendada en producción debido a que no cuenta con autenticación, sin embargo se pueden implementar medidas complementarias para permitir el acceso como una autenticación básica o una vpn.

Solución del Evento CTF del Open Hacking Guatemala 2019
Auditoría de Redes Informáticas

Solución del Evento CTF del Open Hacking Guatemala 2019

Omar Jacobo Muñoz Veliz

Open Hacking Guatemala es un congreso de talla internacional que reúne a los máximos exponentes Iberoamericanos de Ciberseguridad y Hacking Ético, que celebra su cuarta edición y en donde la innovación, investigación y el conocimiento son los principales pilares de este evento que aporta conocimiento por medio de las investigaciones que son presentadas por cada ponentes, para el crecimiento de la ciudad de Guatemala.