Basado en Linux Debian 10

Cómo instalar Brute Force Detection en Linux

YouTube

Proyecto P4

Uno de los ataques más usados a paginas web y servicios como el SSH son sin lugar a dudas los ataques por fuerza bruta. Existen programas que añadiéndoles una lista con millones de nombres y palabras que se han usado para hacer login en otras maquinas que pueden probar hacer login en tu servidor de forma automatizada.

Por ejemplo, el atacante sabe que el super usuario de cualquier sistema GNU/Linux es ROOT. Si alguien con malas ideas encuentra en tu servidor el puerto 22 abierto podrá intentar hacer login contra el usuario ROOT.

Si el atacante pone en su programa para hacer ataques por fuerza bruta como usuario a ROOT y prueba hacer login con un diccionario de nombres es posible que encuentre la forma de hacer login y hackear tu servidor.

Consejos básicos de seguridad

  1. Para evitar esto aconsejo usar contraseñas largas, hay programas que pueden intentar acertar dar con tu contraseña en forma de carácter. Si usamos una contraseña corta como por ejemplo 4 caracteres el programa que usan tardará menos en descifrarla. Si por ejemplo de usamos una 32 caracteres y que no tengan un significado si no que sea algo ilegible el tiempo para descifrar nuestra contraseña será tanto que seguramente el atacante desistirá antes de descifrarlo.
  2. Por otro lado en el ejemplo que estoy tomando contra el servidor SSH lo mejor es bloquear el acceso a ROOT desde el exterior y dejar a otro usuario del cual no se conoce el nombre pueda identificarse y una vez dentro del servidor hacer login con ROOT.
  3. Usar un bloqueador de ataques de fuerza bruta que sea capaz de detectarlos y bloquearlos para que no puedan seguir jugando con nuestra maquina.

En el artículo de hoy vamos a instalar esta herramienta que se basa en seguir los intentos de login erróneos. El funcionamiento es tan sencillo como que la herramienta hace un seguimiento del log específico de la aplicación que se está ejecutando. Si antes de que reiniciemos la herramienta se han producido intentos fallidos el atacante será bloqueado por IPTables.

Para mi en cuanto a seguridad informática todo suma así que vamos a instalarlo y configurarlo.

Para comenzar y como siempre arrancamos nuestro servidor y nos identificamos como el super usuario ROOT con el comando …

su

Seguidamente vamos a descargarnos la última versión de Linux Malware Detect en el directorio temporal de nuestra Debian

cd /tmp/

Descargamos Brute Force Detection

wget https://www.rfxn.com/downloads/bfd-current.tar.gz

Descomprimimos el archivo descargado …

tar xvzf bfd-current.tar.gz

Accedemos al directorio creado después de la descompresión …

cd bfd-1.5-2

Ahora ejecutamos el instalador …

bash install.sh

Y veremos lo siguiente …

Brute Force Detection

Una vez instalado vamos a configurarlo, para ello editamos …

vi /usr/local/bfd/conf.bfd

Cómo instalar Brute Force Detection en Linux

Dentro nos encontramos con muchas opciones a configurar. En esta ocasión vamos a hablar de los que me han parecido más importantes y veo esenciales para que Brute Force Detection funcione correctamente …

TRIG="3" #Veces que el usuario falla al hacer login
EMAIL_ALERTS="0" #Poner 1 si quereis que os avise, yo no lo activo es muy pesado
EMAIL_ADDRESS="root" #Puedes poner tu dirección de correo si activaste la opción anterior

Por otro lado tenemos que configurar la opción BAN_COMMAND, si usamos IPTables que viene por defecto en Linux Debian 10 hay que modificar el comando de baneo del siguiente modo …

BAN_COMMAND=“/usr/sbin/iptables -I INPUT -s $ATTACK_HOST -j DROP“

También hay que modificar la ruta del log donde se logean las autentificaciones ….

AUTH_LOG_PATH="/var/log/auth.log"

Guardamos los cambios y salimos del editor. El resto de configuraciones está bien como están por defecto aunque si queréis podéis darle un repaso.

Las reglas que usa Brute Force Detection las podemos encontrar en la ruta …

ls /usr/local/bfd/rules/

Dentro las siguientes reglas …

Reglas BFD

Por defecto para todos estos programas las reglas ya están creadas aunque puedes usar las tuyas propias si te aventuras a hacerlo en un programa específico.

Para finalizar vamos a configurarlo en cron para que reinicie el programa cada 5 minutos y con ello todos los que han intentado logearse mas de tres veces serán baneados automáticamente …

crontab -e

Y agregamos lo siguiente …

*/5 * * * * /usr/local/sbin/bfd -q

Ahora si vamos ver el log que genera Brute Force Detection veremos cada 5 minutos banea a las direcciones IP que le hemos indicado en el fichero de configuración conf.bfd

tail -f /var/log/bfd_log

BFD

Si por error os baneais o queréis desbanear a alguien que ha sido baneado por error podemos usar el comando …

iptables -I INPUT -s x.x.x.x -j ACCEPT

Y hasta aquí el tutorial sobre cómo instalar Brute Force Detection en Linux. Si queréis más información sobre el autor de BFD aquí os dejo un enlace.