[Aporte]Evitar Brutal Attack a Servidores DMZ o con puerto redireccionado.

Publicado por Requium, Noviembre 25, 2012, 08:29:33 PM

Tema anterior - Siguiente tema

Requium

Bueno primeramente felicitar y agradecer por todo el trabajo que ha realizado joemg con el magnifico thundercache :), y aportar un granito de arena al nuevo foro :).

Quiero presentar algunas reglas que pueden servir a algunas personas que usan acceso remoto mediante redireccionamiento de puertos en ip publicas a servidores, tales como escritorio remoto a un servidor, servidores web, donde se requiere usuario y password y donde puede ser susceptible a ataques del tipo brutal attack (Con diccionario).

Lo que se realiza es un conjunto de reglas dentro del firewall que agregan las direcciones IPs a diferentes zonas de alerta, donde se dará hasta 4 intentos o 4 zonas, una vez terminados los intentos se pasa a una zona donde los paquetes provenientes de esa IP seran dropeados.

Se usará como ejemplo el puerto 3389 que es de escritorio remoto y teniendo en cuenta la regla de redireccionamiento de puertos:

/ip firewall nat add action=dst-nat chain=dstnat disabled=no dst-port=3389 protocol=tcp to-addresses=192.168.1.130 to-ports=3389

La regla de arriba direcciona el puerto 3389 a la ip 192.168.1.130 al puerto 3389 que sera nuestro servidor de escritorio remoto. (Esto solo es por motivo de ejemplo)

add action=drop chain=forward disabled=no dst-port=3389 protocol=tcp src-address-list=ER_Blacklist

Esta regla se aplica cuando el usuario ya fallo su cuarto intento y solo cuando se encuentra en el address-list ER_Blacklist, dropea todo los paquetes al puerto 3389.

add action=add-src-to-address-list address-list=ER_Blacklist address-list-timeout=0s chain=forward connection-state=new disabled=no dst-port=3389 protocol=tcp src-address-list=ER_Fase3

Esta regla se aplica después del fallo de 4to intento y agrega al usuario que fallo por 4ta vez a la fase ER_Blacklist, si uno se da cuenta el timeout es 0 es decir el usuario sera agregado a al address-list=ER_Blacklist hasta que se reinicie el router.

add action=add-src-to-address-list address-list=ER_Fase3 address-list-timeout=2h chain=forward connection-state=new disabled=no dst-port=3389 protocol=tcp src-address-list=ER_Fase2

Esta regla agrega al usuario en la fase ER_Fase3 y solo cuando el usuario ya ha fallado 3 intentos y esta por el 4to, dentro de esta regla se usa el timeout, donde estará en esta fase durante 2h, esto solo es por si el usuario es real y sabe la contraseña estará dentro de esta fase durante 2 horas, pasadas estas se borrara de la lista.

add action=add-src-to-address-list address-list=ER_Fase2 address-list-timeout=39m chain=forward connection-state=new disabled=no dst-port=3389 protocol=tcp src-address-list=ER_Fase1

Esta Fase es cuando ya fallado 2 intento y va por el tercero, el timeout es menor que el anterior, siendo de 39 min.

add action=add-src-to-address-list address-list=ER_Fase1 address-list-timeout=13m chain=forward connection-state=new disabled=no dst-port=3389 protocol=tcp src-address-list=ER_Fase0

Esta fase es cuando ya fallo el primer intento y va por el segundo el timeout es menor siendo 13 min y esto es por si el usuario real fallara el primer intento el estar en esta zona sea menor

add action=add-src-to-address-list address-list=ER_Fase0 address-list-timeout=1m20s chain=forward connection-state=new disabled=no dst-port=3389 protocol=tcp

Esta es la fase principal, siempre estará activa y sera la que marcara el inicio de todo, esta regla se aplica para todos, marcara la primera conexión y meterá al usuario en la fase0, todos los usuarios sean reales o falsos estarán dentro de esta address list durante 1m20s


Cabe destacar que se usa el connection-state=new debido a que la conexión que se crea al fallar la contraseña es nueva :) y esto permite marcar con mayor facilidad los intentos, cada marca que se realiza entra en una fase, y la siguiente fase tendrá como requisito detectar la marca anterior y asi hasta que lleguen al blacklist, si están usando un brutal attack, se fallara rápidamente los cuatro intentos :) y entrara en el black-list.

OJO: Las IPs que entren al black-list se mostraran con la D de dinámica, estas address-list se borraran si el router se resetea, es recomendable copiarlas para volverlas estáticas y se mantengan en el router después del reinicio

Espero que esto le sirva, y agradezco los comentarios y las correcciones si tienen alguna :P.

NOTA: esta regla es para redireccionamiento de puertos, si se quiere aplicar a los puertos 23,22,80 del router mikrotik es decir para bloquear el brutal attack hacia el mikrotik se cambia la cadena a "input".

Creditos:Wiki de mikrotik

Saludos
Requium
"The quieter you become, the more you are able to hear" -Backtrack 5

guzmanweb