Bloqueando ssh bruteforce con PF - Userlinux.net

Al hilo de la anterior entrada y buscando alternativas para bloquear todos esos ataques por fuerza bruta (bruteforce) al servicio de administración remota SSH he encontrado la solución ideal -o lo que más se le aproxima-, sin descartar las anteriores. La regla mágica hace uso de una nueva característica de…

Bloqueando ssh bruteforce con PF

14.Dec.2006 ~ 2 Comentarios ~ 2906 Lecturas
Al hilo de la anterior entrada y buscando alternativas para bloquear todos esos ataques por fuerza bruta (bruteforce) al servicio de administración remota SSH he encontrado la solución ideal -o lo que más se le aproxima-, sin descartar las anteriores.

La regla mágica hace uso de una nueva característica de Packet Filter (desde OpenBSD-3.7) llamada max-src-conn-rate. Lo que venimos a decirle a nuestro firewall es que permita todas las conexiones ssh con la salvedad de que no se sobrepasen 3 intentos en menos de 30 segundos, en dicho caso se agregará la IP del atacante a una lista llamada ssh-bruteforce, en pf.conf:

# SSH Bruteforce
pass in on $ext_if proto tcp from any to ($ext_if) port ssh \
	flags S/SA keep state \
	(max-src-conn-rate 3/30, overload <ssh-bruteforce> flush global)
Si el entorno lo permite se pueden cambiar los valores de intentos y tiempo intentando ser más permisivos (6/60...), pero todavía falta la segunda parte, donde bloqueamos cualquier tipo de conexión de los ssh-bruteforce a nuestro equipo, también en pf.conf:
# Bloqueo de ssh-bruteforce
block drop in quick on $ext_if from <ssh-bruteforce>
Aún así y siguiendo con nuestra buena fé y permisividad podemos instalar una herramienta llamada expiretable para limpiar la tabla ssh-bruteforce cada cierto tiempo suponiendo que se traten de IP's dinámicas o cualquier otro tipo de malentendido (en FreeBSD):
# portinstall -prfv /usr/ports/security/expiretable
# crontab -l
*/5   *   *   *   *   /usr/local/sbin/expiretable -t 3600 ssh-bruteforce
Donde 3600 son los segundos que durará el baneo. Una solución óptima y dinámica para un problema de los más frecuentes en máquinas productivas. PF nunca dejará de sorprenderme :)

Comentarios


gravatar
15.Dec.2006
Es una cosa que tengo pendiente... valorar qué tal va usar solo PF para defenderme de los ataques a SSH. Me apunto esta anotación para cuando tenga un rato.

La verdad es que el sistema de scripts que uso funciona, pero ya comprobé que los bloqueos no son realmente útiles porque vuelven un tanto por cien muy bajo de atacantes, así que igual es más interesante bloquear temporalmente en el momento que se detecta el ataque que llevar bloqueos de forma más permanente.

Ahora mismo tengo 558 IPs bloqueadas en blackshell O_o

gravatar
pAvL0
15.Dec.2006
Hola nenes...

Pero sólo funciona con ssh? A mi me interesa para mi ftp tambien. Sin haberme parado a mirarlo demasido debería funcionar, no?

Comentarios


Los comentarios están cerrados: los comentarios se cierran automáticamente una vez pasados 15 días. Si quieres comentar algo acerca de la anotación, puedes hacerlo por e-mail.

Buscar

Cargando...

Últimos comentarios

  • minWi
  • isra
  • reidrac
  • r0sk
  • Rodrigo Rega
  • minWi
  • r0sk
  • reidrac
  • r0sk
  • deady
  • errece
  • r0sk
  • flexo
  • r0sk
  • MarcosBL

Moneting

Valor de mi cuenta de Facebook según Moneting
Valor de mi cuenta de Twitter según Moneting

Tagcloud

barça rfilms linux vacaciones freebsd films 2007 bake 2008 programación iphone blogs apple frases games rsidenotes mac ssh meme personal opinion nintendo software futbol bsd debian twitt ubuntu humor django seguridad cake mundial macosx openbsd sysadmin alemania_2006 cakephp lucux felicidades cumpleaños userlinux hack ps3 sidenotes canción champions twitter php deportes conciertos web league blog mysql lugo bash juegos ds blogsfera

Archivo

Social

Enlaces de interés