mikrotik firewall
Post on 14-Dec-2014
801 Views
Preview:
TRANSCRIPT
MikroTik RouterOS - Firewall
Filtros de Firewall,
Sistema de detección de intrusión a la red
(NIDS),
Traslación de direcciones de red (NAT)
2
Estructura de los filtros de Firewall
Reglas de filtrado estan organizadas en cadenas
Hay cadenas de default y cadenas definidas por el usuario
Hay 3 cadenas por default
input – procesa los paquetes que tienen como destino
final el ruteador/firewall
output – procesa los paquetes enviados por nuestro
ruteador/firewall
forward – procesa los paquetes que pasan a traves de
nuestro ruteador/firewall
Cada cadena definida por el usuario debe estar
subordinada cuando menos a una de las cadenas de
default
3
Diagrama de la estructura de filtrado
del firewall
4
Filtros de firewall
El filtrado de firewall es una herramienta para filtrar
tráfico
Esto consiste de una serie de reglas que tienen la
secuencia de reglas tipo: SI-ENTONCES
0) SI <condición(es)> ENTONCES <accción>
1) SI <condición(es)> ENTONCES <acción>
2) SI <condición(es)> ENTONCES <acción>
Si el paquete no cumple con todas las condiciones de
la regla, este es enviado a la siguiente regla.
Si el paquete cumple todas las condiciones de la
regla, la acción especificada es aplicada.
5
Reglas de filtrado – en Winbox
6
Cadenas de filtrado de firewall
Tu puedes re-rutear trafico a cadenas definidas
por el usuario, usando la acción “jump” (y dado
el caso, rerutear de vuelta con la opción
“return”)
Usuarios pueden añadir cualquier numero de
cadenas
Estas son usadas para optimizar la estructura
del firewall y hacerla mas manejable
Tambien ayudan a mejorar el performance reduciendo el numero promedio de reglas procesadas por paquete
7
Cadenas definidas por el usuario
8
Tácticas de construcción de un firewall
Acepte lo necesario, tire lo demásTire todo lo unnecesario, acepte lo demás.
9
Monitoreo de Conexiones
El sistema Connection Tracking (o Conntrack) es el
corazón del firewall, este recopila y maneja todas las
conexiones activas.
Deshabilitando el Connection Tracking el sistema
pierde su capacidad de ofrecer NAT asi como la mayor
parte de las condiciones de filtrado y marcado.
Cada entrada de la tabla representa un intercambio
bidireccional de datos
Usa muchos recursos de CPU (deshabilitalo si no
estás usando firewall o nat)
10
Proceso del Conntrack
11
Conntrack – en Winbox
12
Condición: Estado de Conexión
Es el estatus asignado a cada paquete por el
sistema de conecction tracking:
New – paquete esta abriendo una nueva conexión
Established – paquete forma parte de una conexión
establecida
Invalid – paquete no forma parte de alguna
conexión conocida
Related – paquete esta abriendo una nueva
conexión, pero en cierta manera tiene relación con
alguna conexión ya conocida
Estado de conexión ≠ Estado TCP
13
Estado de Conexión
14
Ejemplo de la primer regla de filtrado
Cadena Input
Proteger el ruteador – permitir solamente los
servicios necesarios desde fuentes confiables.
16
Laboratorio de Cadena InputCree 3 reglas para asegurar que solamente los
paquetes con estado de conexión “new”
procederan a entrar al firewall
Drop a todas las conexiones con estado “invalid”
Accept all connection-state related packets
Accept all connection-state established packets
Crea 2 reglas para asegurar que solamente tu
te conectarás a tu ruteador
Accept a todos los paquetes desde la ip de tu
laptop
Drop a todo lo demas
17
Mantenimiento de firewall
Escribe comentarios en cada regla, para hacer a tu
ruteador/firewall mas manejable
Checa los contadores de cada regla, para que
determines la actividad de cada regla
Cuida la posición de la regla, esto es muy importante
Usa la acción “passthrough” para determinar la
cantidad de trafico antes de aplcar cualquier acción
Usa la accion “log” para coleccionar información
detallada del tráfico.
18
Acción “log”
19
Servicios RouterOS
20
Laboratorio de Servicios RouterOS
Crea reglas para permitir que solamente los
servicios necesarios que provee nuestro
equipo, puedan ser accedidos desde la red
publica
Usa la acción “log”para determinar esos
servicios
Crea una regla para permitir winbox, ssh y
telnet desde la red del instructor (10.1.2.0/24)
Ordena las reglas de manera adecuada
Escribe comentarios para cada regla
21
IMPORTANTE
Los filtros de firewall no filtran comunicaciones
a nivel de MAC
Debes deshabilitar las funcionalidades MAC-
TELNET y MAC-WINBOX al menos desde la
interface publica
Debes deshabilitar la funcionalides de
descubrimiento y el ruteador no se descubrirá
por si solo nunca mas (“/ip neighbor discovery”
menu)
22
MAC-telnet y MAC-winbox
Cadena Forward
Protección de nuestra red a virus y ataques
desde Internet y protección de Internet de
ataques desde nuestra red
24
Laboratorio de cadena forward
Cree 3 reglas para asegurar que solamente los
paquetes con estado de conexión “new”
procederan a través del firewall a la cadena
forward (lo mismo que hicimos en el laboratorio
de cadena input).
Cree reglas para cerrar el trafico a los puertos
de los virus mas populares
Drop TCP y UDP rango de puertos 137-139
Drop TCP y UDP puerto 445
25
Filtrado de puertos de virus
Al momento hay algunos cientos de trojanos
activos y al menos 100 gusanos activos
Puedes bajar una lista completa de “bloqueo de
puertos de virus” (alrededor de 500 puertos)
desde wiki.mikrotik.com
Algunos virus y trojanos usan puertos de
servicios estandar y NO pueden ser
bloqueados.
26
Bogon IPs
Hay alrededor de ~4,3 miles de millones de
direcciones IPv4
Hay algunos rangos restringidos para uso en la red
publica.
Hay muchos rangos de IP's reservados (no usados al
momento) para propósitos específicos
Hay muchísimos rangos de direcciones IP no usados
Puedes encontrar informacion acerca de los rangos no
usados en:
http://www.completewhois.com/bogons/
27
Opciones de Lista de Direcciones
Con la lista de direcciones
puedes crear una regla
que aplique para varias
direcciones ip o varios
segmentos ip, que esten
ingresados en la lista.
Lo puedes usar como lista
de origen o de destino
Se crea en el menu
“/ip firewall address-list”
28
Ejemplo de lista de direcciones
Haz una lista de direcciones de las mas
comunes IP's de Bogons
29
Knock PortUsando listas de acceso por tiempo, podemos implamentar
un sistema mas seguro para entrar a nuestros equipos
desde direcciones inseguras o publicas.
Se genera una regla para que cuando el equipo reciba una
petición por un puerto conocido alto (ejemplo: 12789) que
la direccion origen la meta a una lista de direcciones
(lista_segura) durante un tiempo de... 1 minuto.
Enseguida una regla de filtrado en input por el puerto de
servicio (winbox tcp port 8291) donde solo se permita la
generación de nueva conexión a la lista (lista_segura).
Tenemos un minuto para entrar a partir de que hicimos el
knock. Una vez dentro, ya no nos sacará.
Ese procedimiento tendría que hacerse cada vez que se
quisiera entrar.
30
Knock Port
Ejemplo:
31
Knock Port
Ejemplo...
32
Knock Port
Ejemplo...
33
Knock Port
Con estas reglas, para poder entrar vía winbox
a nuestro equipo, primero hay que hacer un
knock al puerto 12789 haciendo desde nuestra
laptop: “telnet <ip_de_nuestro_router> 12789”
A partir de esto tenemos un minuto para entrar
via winbox a nuestro equipo, si pasa ese tiempo
tenemos que repetir el knock.
34
Laboratorio de filtrado de
direccionesPermite paquetes hacia tu red desde
direcciones válidas de Internet
Permite paquetes hacia tu red que vengan
desde direcciones válidas de tus clientes
Permite salir paquetes desde tu red y con
destino a direcciones válidas de tus clientes
Permite paquetes salir desde tu red solo hacia
direcciones válidas de Internet
Cadenas definidas por el Usuario
Estructura de firewall, cadenas reutilizables
36
Protocolo ICMP
Protocolo de mensajes de Control de Internet (ICMP)
es básicamente una herramienta de análisis y
reparación de una red, debe ser permitido pasar a
través del firewall
Un típico ruteador usa solo 5 tipos de mensajes ICMP
(tipo:código)
Para PING - mensajes 0:0 y 8:0
Para TRACEROUTE – mensajes 11:0 y 3:3
Para Path MTU discovery – mensaje 3:4
Cualquier otro tipo de mensajes de ICMP debería ser
bloqueado
37
Ejemplo de regla para ICMP
38
Laboratorio para cadena ICMP
Haga una nueva cadena – ICMP
Acepte los 5 tipos de mensaje ICMP necesarios
Drop a todo lo demás de ICMP
Mueva todos los paquetes de ICMP a esta nueva cadena
Cree una regla con acción “jump” en la cadena de
input
Verifique el orden de la regla
Cree una regla con acción “jump” en la cadena de
forward
Verifique el orden de la regla
39
Regla de “jump”para ICMP
40
Tipos de intrusión a la red
Intrusión a la red es un serio y riesgoso problema de
seguridad que puede resultar no solamente en
denegacioón temporal de servicios, sino incluso en un
total rechazo a servicios de red
Podemos anotar los 4 mayores tipos de intrusiones:
Ping flood
Escaneo de puertos
Ataque de DoS
Ataque de DDoS
41
Ping Flood
Ping flood usalmente
consiste de un volumen de
mensajes aleatorios de
ICMP
Con la condición “limit” es
posible ajustar una regla
para que se cumpla con
cierto límite
Esta accion usualmente es
usada junto con una regla
igual anterior pero con
acción “log”
42
Escaneo de puertos
Es una prueba secuencial
buscando puertos abiertos
TCP (UDP)
PSD (Detección de escaneo de
puertos) solo es posible con el
protocolo TCP
Puertos Bajos
De 0 al 1023
Puertos Altos
Del 1024 al 65535
43
Laboratorio de protección de
intrusos
Ajuste las 5 reglas de ICMP para cumplirse con
un límite de 5 paquetes por segundo con una
posibilidad de 5 paquetes de desborde o burst
Cree la proteción PSD
Cree una regla de drop PSD en la cadena de input
Verifíque su orden
Cree una regla de drop PSD en la cadena de
forward
Verifíque su orden
44
Ataques de DoS
El objetivo principal de un ataque DoS es consumir los
recursos del sistema (CPU o ancho de banda), al
punto que los servicios estandar obtienen una
denegación de servicio
Usualmente el ruteador es atacado con paquetes de
requisición de conexiones TCP/SYN causando que el
servidor responda con un paquete TCP/SYN-ACK y
esperando por un paquete TCP/ACK.
Muchos atacantes de DoS son clientes infectados con
virus
45
Protección de ataques de DoS
Todas las IP's con mas de 10 conexiones al
ruteador deben ser consideradas
potencialmente atacantes de DoS
Con cada conexión TCP descargada
(dropeada) le permitiremos al ataque crear una
nueva, deberemos implementar la protección en
2 pasos:
Detección – Crear una lista de sitios de ataque
basado en un límite de conexiones dado.
Supresión – Aplicando restricciones a esas ip's
desde donde nos atacan.
46
Detección de ataque de DoS
47
Supresión del ataque de DoS
Para impedir que el
atacante cree nuevas
conexiones , usaremos
la accion “tarpit”
Pondremos esta regla
justamente antes de la
regla de detección o de
lo contrario la entrada de
la lista de direcciones se
estara reescribiendo
todo el tiempo
48
Ataques de DDoS
Un ataque distribuido de
denegación de servicio
es similar a un ataque de
DoS solo que este ocurre
desde muchos sistemas
de manera coordinada.
Lo unico que puede
ayudarnos en esto es
usar la opción “TCPSyn
Cookie” en connection
tracking
top related