aseguramiento de dispositivos - inicio€¦ · · 2011-10-10el ios de los routers de servicios...
TRANSCRIPT
Aseguramiento de Dispositivos
Angélica Flórez Abril, MSc.
Universidad Pontificia Bolivariana Bucaramanga, Colombia
Octubre, 2011
Angélica FA- All rights reserved
Amenazas físicas
Angélica FA- All rights reserved
• Daño físico Hardware
• Control de temperatura
• Control de humedad Ambientales
• Picos de voltaje
• Pérdida de alimentación
• Sistemas de alarmas y vigilancia Eléctricas
• Falta de repuestos
• Problemas de rotulado y administración del cableado
• Acceso no controlado al puerto de consola
Mantenimiento
Dispositivos de seguridad
• El mito del firewall??
Angélica FA- All rights reserved
Comunicaciones seguras VPN
El IOS de los routers de servicios
integrados (ISR)
Cisco ASA 5500
Seguridad en los routers
Angélica FA- All rights reserved
DCE
DCE
S0/0/1 S0/0/0
S0/0/0 S0/0/0
FE0/0
FE0/0
FE0/1
Router2 Router3
Router1
SR1: 172.20.1.0/24
SR2: 172.20.2.0/24
SR3: 192.168.1.0/24
SR4: 172.21.10.0/24
Lo0: 172.21.20.0/24
Lo1: 172.21.21.0/24
ES1: 10.10.1.0/30 ES2: 10.10.2.0/30
FE0/0
PC1
PC2
PC3
PC4
RouterISP
Internet
ES3: 200.15.30.140/30
El Router3 le permite a los hosts de la subred 172.21.10.0 acceder a los hosts de las demás subredes, a través de la
interface FE0/0 (default gateway)
El Router1 le permite a los hosts de las redes internas comunicarse con Internet
Seguridad en los routers
• Función de los routers:
– Enrutamiento del tráfico entre diversas redes
– Ofrece servicios de internetworking
– Publica la redes y define quiénes pueden utilizarlas
– Proporciona acceso a los segmentos de redes y subredes
Angélica FA- All rights reserved
Los routers como objetivo de ataques
• Problemas de seguridad en los routers:
– Ataque de control de acceso: revisión de los detalles de configuración de la red para la generación de ataques hacia los componentes internos de la red.
– Compromiso de las tablas de enrutamiento: disminución del rendimiento, denegación de servicios de comunicación y exposición de la información confidencial.
– Configuración incorrecta de un filtro: exposición de los componentes internos a ataques y escaneos.
Angélica FA- All rights reserved
Técnicas de protección de los routers
• Seguridad física
• Actualización del IOS
• Backup de las configuraciones y del IOS
• Aseguramiento del router a nivel de puertos y servicios no utilizados
Angélica FA- All rights reserved
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
Aseguramiento del router
1) Administración de contraseñas
2) Protección del acceso
remoto
3) Registro de sucesos del
router
4) Protección de servicios e interfaces
vulnerables
5) Protección de los protocolos de
enrutamiento
6) Control y filtrado del
tráfico de la red
Angélica FA- All rights reserved
1) Administración de Contraseñas
Angélica FA- All rights reserved
Contraseña en texto claro
Router(config)# enable password cisco
Router(config)# username angelica password cisco
Router# show running-config
!
Hostname Router
Enable password angelica
!
!
Username angelica password 0 angelica
Cifrado de contraseñas
Angélica FA- All rights reserved
Cifrado simple
• Tipo: 7
• Algoritmo de cifrado simple de cisco
Resumen complejo
• Tipo: 5
• Algoritmo hash MD5
• Más seguro
Configuración cifrado simple
Angélica FA- All rights reserved
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
Router(config)# service password-encryption
hostname Router ! enable password 7 082042490C150C1413 ! ! username angelica password 7 082042490C150C1413
enable password username line password
Configuración cifrado complejo
Angélica FA- All rights reserved
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
Router(config)# enable secret cisco Router(config)# username jose secret jose
enable secret username MD5
hostname Router ! enable secret 5 $1$mERr$hx5rVt7rPNoS4wqbXKX7m0 enable password 7 082042490C150C1413 ! username angelica password 7 082042490C150C1413 username jose secret 5 $1$mERr$iT84/CUoMeCqgYqo3Jh1k.
Longitud de la contraseña
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
Router(config)# security passwords min-length 12 Router(config)# username angie password angie % Password too short - must be at least 10 characters. Password not configured. Router(config)# username angie password angelicaflorez
enable password username line password Min-length:0 - 16
username angelica password 7 082042490C150C1413 username angie password 7 082042490C150C14130D000B382E3E username jose secret 5 $1$mERr$iT84/CUoMeCqgYqo3Jh1k.
2) Protección del acceso remoto
• Telnet, SSH, HTTP, HTTPS o SNMP
• Definición de una subred de administración
• Cifrado del tráfico desde y hacia el host remoto
• Restringir el acceso remoto
Angélica FA- All rights reserved
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
Desactivación de conexiones
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
Router(config)# line aux 0 Router(config-line)# no password Router(config-line)# login % Login disabled on line 65, until ‘password’ is set
AUX VTY
Angélica FA- All rights reserved
Configuración acceso remoto seguro
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
Router(config)# line vty 0 4 Router(config-line)# no transport input Router(config-line)# transport input ssh Router(config-line)# exec-timeout 5 Router(config)# service tcp-keepalives-in
SSH TCP: 22
Angélica FA- All rights reserved
Configuración acceso remoto seguro
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
SSH TCP: 22
Angélica FA- All rights reserved
Pasos para configurar el SSH: 1) Nombre de Host 2) Nombre de dominio 3) Claves asimétricas 4) Autenticación local 5) Tiempo de espera y reintentos
Configuración acceso remoto seguro
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
SSH TCP: 22
Angélica FA- All rights reserved
Router3
Router(config)# hostname Router3 Router3(config)# ip domain-name midominio.com Router3(config)# crypto key generate rsa The name for the keys will be: Router3.midominio.com Choose the size of the key modulus in the range of 360 to 2048 for your General Purpose Keys. Choosing a key modulus greater than 512 may take a few minutes. How many bits in the modulus [512]: 1024 % Generating 1024 bit RSA keys, keys will be non-exportable...[OK] Router3(config)# username angelica secret angelica Router3(config)# line vty 0 4 *mar 1 1:42:28.963: %SSH-5-ENABLED: SSH 1.99 has been enabled Router3(config-if)# transport input ssh Router3(config-if)# login local Router3(config-if)# exit Router3(config)# ip ssh time-out 15 Router3(config)# ip ssh authentication-retries 3
1
2
3
4
5
3) Registros de sucesos del router
Angélica FA- All rights reserved
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
Router(config)# logging 192.168.1.2
*Sep 10 12:40:11.211: %SEC_LOGIN-5-QUIET_MODE_OFF: Quiet
Mode is OFF, because block period timed out at 12:40:11 UTC Mon
Sep 10 2011 3
enable password username line password
192.168.1.2
4) Protección de servicios e interfaces vulnerables
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
SSH TCP: 22
Angélica FA- All rights reserved
Aplicación
Presentación
Sesión
Transporte
Red
Enlace de datos
Física Capa 1
Capa 2
Capa 3
Capa 4
Capa 5
Capa 6
Capa 7
Restricción de servicios vulnerables Desactivación de servicios vulnerables Ejemplo: - Desactivación del servicio TFTP en el router - Restricción para limitar el alcance del
servicio - CDP se usa en implementaciones de
Telefonía IP
Servicios vulnerables
Angélica FA- All rights reserved
Router(config)# no service tcp-small-servers Router(config)# no service udp-small-servers
Default: depende de la versión del IOS Desactiva los servicios pequeños, como: echo, discard, daytime y chargen. Un atacante puede hacer un DoS hacia uno o más dispositivos de la red sí estos servicios se encuentran activos. Ejemplo: Echo y chargen pueden generar loops infinitos de generación de echo y carácter entre dos hosts.
Router(config)# no ip bootp server
Deafult: habilitado No permiten que los otros routers arranquen desde él. Se necesita con poca frecuencia y es un hueco de seguridad, así que se recomienda desactivarlo.
Servicios vulnerables
Angélica FA- All rights reserved
Router(config)# no service finger
Default: Habilitado Desactiva el servicio de búsqueda de usuarios UNIX, para evitar el listado de usuarios conectados.
Router(config)# no ip http server
Default: varía según el dispositivo Desactiva la configuración basada en web. Si no se usa se recomiendo desactivarlo, o definir restricción de acceso al mismo mediante técnicas de autenticación y limitando las conexiones.
Servicios vulnerables
Angélica FA- All rights reserved
Router(config)# no snmp-server Router(config)# no snmp-server enable traps Router(config)# no snmp-server system-shutdown
Default: Habilitado Desactiva las consultas y configuración remota del SNMP. En caso de requerirse, se debe asegurar y restringir el acceso a SNMP. Se recomienda utilizar SNMPv3 que implementa características de seguridad, mientras que las versiones 1 y 2 pasan toda la información en texto claro.
Router(config)# access-list 1 permit 192.168.1.2 Switch(config)# access-list 1 permit 192.168.1.3 Switch(config)# snmp-server group administrador v3 auth read adminview write adminview Switch(config)# snmp-server user admin administrador v3 auth md5 contraseña access 1 Router(config)# snmp-server view adminview ipRouteEntry excluded
Servicios vulnerables
Angélica FA- All rights reserved
Router(config)# no cdp run Router(config-if)# no cdp enable
Default: Habilitado Desactiva el descubrimiento de dispositivos en la red. El CDP permite tener una abstracción de la red y de las características de los dispositivos, como por ejemplo el modelo, la versión del IOS, permitiendo a un atacante conocer la infraestructura y planear ataques de DoS.
Router(config)# no service config
Default: Deshabilitado Deshabilita la carga de la configuración de manera remota desde un tftp.
Servicios vulnerables
Angélica FA- All rights reserved
Router(config)# no ip source-route
Default: Habilitado Desactiva que los paquetes IP especifiquen sus propias rutas, esto es, el enrutamiento IP de origen.
Router(config)# no ip classless
Default: Habilitado Durante el proceso de enrutamiento para la selección de la ruta en el routing table, desactiva que se busque en una ruta diferente a la primaria definida para la red. Ejemplo: una ruta a 172.16.10.0, su ruta primaria es 172.16.0.0, luego sí se encuentra la 172.16.0.0 procede a buscar en la secundaria (172.16.10.0). En caso de no encontrarse ruta, descarta el paquete así se tengan rutas estáticas por omisión.
Interfaces vulnerables
Angélica FA- All rights reserved
Router(config-if)# shutdown
Mantener abajo una interface sí no es usada.
Router(config-if)# no ip directed-broadcast
Default: Habilitado en versiones de IOS menores al 12.0. Prevención de ataques smurf, evitando los broadcast dirigidos que generan ataques de DoS al hosts suplantado en la dirección origen.
Router(config-if)# no ip proxy-arp
Default: Habilitado Desactiva que el router pueda ser usado como servidor intermediario de direcciones de red (MAC). Se recomienda desactivarlo en las interfaces conectadas al router del ISP.
Servicios vulnerables
Angélica FA- All rights reserved
Router(config)# ip name-server dirección_DNS
Configure la dirección del servidor DNS en la red.
Router(config)# no ip domain-lookup
Default: Habilitado Desactiva la resolución de nombres.
5) Protección de los protocolos de enrutamiento
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
Routing updates Link-state advertisements
Angélica FA- All rights reserved
Falsificación de la información de enrutamiento. Puede conllevar a ataques de DoS. a. El tráfico se redirecciona para la creación de routing loops. b. El tráfico se redirecciona para monitorizar un enlace inseguro. c. El tráfico se redirecciona para descartarlo.
Router1
Router3
Router4
Router2
10.10.2.0 10.10.1.0
10.10.3.0
10.10.4.0
10.10.5.0
10.10.6.0
S0 S0
S1
S2
S0
S0
E0
E0
E0
2. Proceso de actualización del routing
table.
6. Proceso de actualización del routing
table.
Son enviados:
● Periódicamente en intervalos regulares.
● Cuando ocurre un cambio en la topología (Trigger updates).
1. Cambio de la topología
4. Se envía la actualización autenticada
(MD5).
Autenticación de los protocolos de enrutamiento
3. MD5( información
rutas + clave) = firma
5. MD5( información
rutas + clave) = firma
Protección del protocolo
Angélica FA- All rights reserved
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
Router(config)# router PROTOCOLO Router(config-router)# passive-interface default Router(config-router)# no passive-interface S0/0/1
Una interface en modo pasivo recibe actualizaciones pero no las
envía. PROTOCOLO: RIP, EIGRP, OSPF
Controlar las interfaces activas para la propagación de información de enrutamiento.
192.168.1.2
Protección de RIPv2
Angélica FA- All rights reserved
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
Router(config)# key chain CLAVE_RIP Router(config-keychain)# key 1 Router(config-keychain-key)# key-string claverip
Active la autenticación MD5 de los avisos de rutas.
192.168.1.2
Router(config)# interface S0/0/1 Router(config-if)# ip rip authentication mode md5 Router(config-if)# ip rip authentication key-chain CLAVE_RIP
Protección de EIGRP
Angélica FA- All rights reserved
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
Router(config)# key chain CLAVE_EIGRP Router(config-keychain)# key 1 Router(config-keychain-key)# key-string claveeigrp
Active la autenticación MD5 de los avisos de rutas.
192.168.1.2
Router(config)# interface S0/0/1 Router(config-if)# ip authentication mode eigrp 1 md5 Router(config-if)# ip authentication key-chain eigrp 1 CLAVE_EIGRP
Protección de OSPF
Angélica FA- All rights reserved
S0/0/1
SR3: 192.168.1.0/24
FE0/0
PC3
RouterISP
Internet
ES3: 200.15.30.140/30
Router(config)# router ospf 2 Router(config-router)# area 1 authentication message-digest
Active la autenticación MD5 de los avisos de rutas.
192.168.1.2
Router(config)# interface S0/0/1 Router(config-if)# ip ospf message-digest-key 1 md5 claveospf Router(config-if)# ip ospf authentication message-digest
6) Control y filtrado del tráfico en la red
• Permiten administrar el tráfico.
• Se clasifican los paquetes IP.
– Seguridad
• Control de acceso
– Enrutamiento basado en políticas
– Calidad del Servicio – QoS
– NAT-Network Address Translation / PAT – Port Address Translation
ACL – Access Control Lists
• Son aplicados a todos los fragmentos de un paquete IP: inicial o no. – Se encuentra la información de las capas 3 y 4.
• Se puede permitir (permit) o denegar (deny) el acceso.
• Revisa la estructura del fragmento del paquete IP para poder tomar decisión sobre el paquete.
– Si recibe un fragmento no inicial, entonces revisa solo la
información capa 3 para denegar o permitir el acceso.
• Si un fragmento no inicial cumple con la regla definida en el filtro
del paquete a nivel de capa 3, entonces es permitido y viajaría hacia el destino, pero en el caso de que el fragmento inicial no cumple la regla por la información de capa 4, el destino no será capaz de reensamblar el datagrama IP original.
– Si recibe un fragmento inicial, se revisa la información de la capa 3 y 4 para denegar o permitir el acceso.
Switch
Router
VLAN1 VLAN2
ACL
Proxy Server
Firewall
ACL
ACL ACL
ACL – Access Control Lists APLICACIÓN
Filtros de paquetes Seguridad Definición de tráfico interesante
Internet
Router
VLAN1 VLAN2
ACL – Access Control Lists EJEMPLO
Internet
E0
S0
Paquete
desde E0 IP Fuente
y Destino
Otros datos
Regla?
Descartar
Paquete
NO
Paquete
hacia S0 SI
Permit
Deny
ACL – Access Control Lists TIPOS
ESTANDAR
Verifica la dirección IP fuente de los paquetes.
Permite o no la salida de paquetes basado solo en la fuente:
◦ Dirección de red
◦ Dirección de subred
◦ Dirección IP
EXTENDIDA
Verifica la dirección IP fuente y destino del paquete.
Permite verificar también:
◦ Protocolos
◦ Números de puerto
◦ Otros parámetros
ACL – Access Control Lists RANGOS NUMÉRICOS
ESTANDAR
• 1 – 99
– Verifica la dirección fuente en un paquete IP.
• 1300 – 1999
– Rango expandido.
EXTENDIDA
• 100 – 199
– Verifica dirección fuente y destino, protocolo específico TCP/IP y puerto destino.
• 2000 – 2699
– Rango expandido.
NOMBRADA
• Cadena de caracteres
Puerto Protocolo IP
20 (TCP) FTP
21 (TCP) FTP Control
22 (TCP) SSH Remote Login Protocol
23 (TCP) Telnet
25 (TCP) SMTP – Simple Mail Transfer
53 (TCP) DNS – Domain Name Server
66 (TCP) Oracle SQL Net
69 (TCP) TFTP – Trivial File Transfer
80 (TCP) HTTP – World Wide Web
161 (TCP) SNMP – Single Network Management
ACL – Access Control Lists ALGUNOS PUERTOS DESTINO
Tomado de: http://www.iana.org/assignments/port-numbers
Router
ACL – Access Control Lists OPERACIÓN
Inbound ACL
• Paquetes entrantes son procesados por el ACL de la interface de entrada antes de ser enrutados a la interface de salida.
E0 S0
Outbound ACL
• Paquetes entrantes
son enrutados a la
interface de salida,
luego son procesados
por el ACL de la
interface de salida.
Router
ACL – Access Control Lists ALGORITMO INBOUND
Inicio Recibir el paquete MIENTRASQUE ((Existe ACL) Y (NO(Permitir/ Denegar Paquete))) SI (Condiciones ACL verdadera) Permitir/ Denegar Paquete SINO Seguir con otro ACL FSI FMQ SI (Permitir Paquete) SI (Ruta en Routing Table) Escoger la interface de salida Enrutar Paquete SINO Descartar Paquete FSI SINO Descartar Paquete FSI Fin
E0 S0 Paquete
ACL
Router
ACL – Access Control Lists ALGORITMO OUTBOUND
Inicio Recibir el paquete SI (Ruta en Routing Table) Escoger la interface de salida MIENTRASQUE ((Existe Otro ACL) Y (NO(Permitir/ Denegar Paquete))) SI (Condiciones ACL verdadera) Permitir/ Denegar Paquete SINO Seguir con otro ACL FSI FMQ SINO Descartar Paquete FSI SI (Permitir Paquete) Enrutar Paquete SINO Descartar Paquete FSI Fin
E0 S0 Paquete
ACL
ACL – Access Control Lists WILDCARD
Usadas para filtrar direcciones.
Identifica la forma del chequeo de los bits de la dirección IP.
◦ 0 Chequear el valor del bit correspondiente en la dirección IP.
◦ 1 Ignorar el valor del bit correspondiente en la dirección IP.
Funcionan de manera inversa que la máscara de red.
0.0.0.0 Chequear todos los bits.
255.255.255.255 Ignorar todos los bits (any)
ACL – Access Control Lists WILDCARD EJEMPLOS
• Verificación de un host – Dirección IP: 172.16.30.15
– Wildcard: 0.0.0.0 (Verificación de todos los bits).
– Abreviado: host 172.16.30.15
• Cualquier host – Dirección IP: any
– Widcard: 255.255.255.255
– Abreviado: any
• Verificación de una subred – Dirección Subred: 172.16.30.0
– Wildcard: 0.0.0.255
Configuración
• El número del ACL indica el protocolo que va a ser filtrado.
• Es permitido un ALC por: interface, protocolo y dirección.
• Se deben crear primero los ACLs y luego aplicarlas a una interface.
• Los ACLs permiten filtrar el tráfico entrante y saliente en el router, no el tráfico que se origina desde el router.
• Es importante el orden de las reglas en el ACL.
• Las reglas más importantes deben ir al inicio del ACL.
Router
E0 S0
Configuración COMANDOS
• Router(config)# access-list #ACL {permit | deny} {condiciones_regla}
• Router(config-if)# {protocolo} access-group #ACL {in | out}
– Protocolo: IP, IPX
Router
E0 S0
Configuración COMANDOS
Router(config)# access-list #ACL {permit | deny} dir_fuente [máscara] ◦ ACL estándar IP: Rango numérico (1-99)
◦ Máscara wildcard por omisión: 0.0.0.0
Router(config-if)# ip access-group #ACL {in | out} ◦ Omisión: outbound
◦ Habilita la lista IP en una interface
Router
E0 S0
Configuración COMANDOS ACL EXTENDIDA
Router(config)# access-list #ACL {permit | deny} protocolo dir_fuente máscara_wildcard_fuente [operador puerto] dir_destino máscara_wildcard_destino [operador puerto] [established] [log]
◦ ACL estándar IP: Rango numérico (100-199) y (2000-2699) ◦ Protocolo: tcp, ip, upd, icmp, gre (Generic Routing Encapsulation), igrp ◦ Operador:
It Menor Gt Mayor Eq Igual Neq Diferente
◦ Puerto: Número de puerto (21: ftp, 23: telnet, 80: http, entre otros).
◦ Established: Solo para interfaces entrantes TCP. Permite tráfico TCP si el paquete usa conexión establecida; el paquete tiene establecido el bit ACK.
◦ Log: envía un mensaje log a la consola.
Router
E0 S0
Configuración EJEMPLO
• Router# configure terminal
• Router(config)# access-list 1 deny 10.10.1.4 0.0.0.0
• Router(config)# access-list 1 permit 0.0.0.0 255.255.255.255
• Router(config)# interface FastEthernet 1
• Router(config-if)# ip access-group 1 out
Router
FE0 FE1 10.10.1.4
10.10.1.0 10.10.2.0 10.10.2.4
Paquete
Otras
redes
S0
Bloquea el tráfico
saliente que viene de la
dirección 10.10.1.4 y
permite el resto del
tráfico ha ser reenviado
en la interface FE1.
Configuración EJEMPLO
• Router# configure terminal
• Router(config)# access-list 101 deny tcp 10.10.2.0 0.0.0.255 10.10.1.0 0.0.0.255 eq 23
• Router(config)# access-list 101 deny tcp 10.10.2.0 0.0.0.255 10.10.1.0 0.0.0.255 eq 25
• Router(config)# access-list 101 permit ip any any
• Router(config)# interface FastEthernet 0
• Router(config-if)# ip access-group 1 out
Router
FE0 FE1 10.10.1.4
10.10.1.0 10.10.2.0 10.10.2.4
Paquete
Otras
redes
S0
Bloquea el tráfico TELNET (23) y SMTP (25) desde la subred
10.10.2.0 a la subred 10.10.1.0 para los paquetes salientes a
través de la interface FE0. Permite el resto del tráfico.
Taller: Configurando seguridad en los routers
Angélica FA- All rights reserved