¿Es así como se ve un ataque de SSH con fuerza bruta?

24

Revisé el archivo auth.log en mi servidor Ubuntu para encontrar:

[preauth]
Feb 22 17:39:18 code-storage sshd[17271]: Disconnected from 147.135.192.203 port 49408 [preauth]
Feb 22 17:40:15 code-storage sshd[17273]: Invalid user ellen from 147.135.192.203
Feb 22 17:40:15 code-storage sshd[17273]: input_userauth_request: invalid user ellen [preauth]
Feb 22 17:40:15 code-storage sshd[17273]: Received disconnect from 147.135.192.203 port 50193:11: Normal Shutdown, Thank you for playing [preauth]
Feb 22 17:40:15 code-storage sshd[17273]: Disconnected from 147.135.192.203 port 50193 [preauth]
Feb 22 17:40:34 code-storage sshd[17275]: Connection closed by 103.237.147.107 port 17583 [preauth]
Feb 22 17:41:12 code-storage sshd[17277]: Invalid user emil from 147.135.192.203
Feb 22 17:41:12 code-storage sshd[17277]: input_userauth_request: invalid user emil [preauth]
Feb 22 17:41:12 code-storage sshd[17277]: Received disconnect from 147.135.192.203 port 50841:11: Normal Shutdown, Thank you for playing [preauth]
Feb 22 17:41:12 code-storage sshd[17277]: Disconnected from 147.135.192.203 port 50841 [preauth]
Feb 22 17:42:05 code-storage sshd[17280]: Invalid user enzo from 147.135.192.203
Feb 22 17:42:05 code-storage sshd[17280]: input_userauth_request: invalid user enzo [preauth]
Feb 22 17:42:05 code-storage sshd[17280]: Received disconnect from 147.135.192.203 port 51356:11: Normal Shutdown, Thank you for playing [preauth]
Feb 22 17:42:05 code-storage sshd[17280]: Disconnected from 147.135.192.203 port 51356 [preauth]
Feb 22 17:42:14 code-storage sshd[17282]: Connection closed by 103.237.147.107 port 64695 [preauth]
Feb 22 17:43:00 code-storage sshd[17285]: Invalid user felix from 147.135.192.203
Feb 22 17:43:00 code-storage sshd[17285]: input_userauth_request: invalid user felix [preauth]
Feb 22 17:43:00 code-storage sshd[17285]: Received disconnect from 147.135.192.203 port 52145:11: Normal Shutdown, Thank you for playing [preauth]
Feb 22 17:43:00 code-storage sshd[17285]: Disconnected from 147.135.192.203 port 52145 [preauth]
Feb 22 17:43:52 code-storage sshd[17287]: Connection closed by 103.237.147.107 port 55122 [preauth]
Feb 22 17:43:56 code-storage sshd[17289]: Invalid user fred from 147.135.192.203
Feb 22 17:43:56 code-storage sshd[17289]: input_userauth_request: invalid user fred [preauth]
Feb 22 17:43:56 code-storage sshd[17289]: Received disconnect from 147.135.192.203 port 52664:11: Normal Shutdown, Thank you for playing [preauth]

Hay mucho más que esto, pero esto es de los últimos minutos antes de que copié el archivo de registro.

¿Se trata de un ataque SSH de fuerza bruta y, si es así, debería preocuparme y cuáles son los mejores pasos y / o soluciones de mitigación que no sean cambiar la IP del servidor?

    
pregunta David Kamer 22.02.2018 - 19:27
fuente

3 respuestas

42

Es este un ataque de fuerza bruta

Esto se parece a la exploración en segundo plano que experimentará cualquier servidor en Internet.

Debería estar preocupado

En realidad no, el escaneo en segundo plano es completamente normal, siempre que sus contraseñas sean seguras, el escaneo en segundo plano no debe suponer ningún riesgo.

¿Cuáles son los mejores pasos de mitigación

Puede usar lo siguiente para hacer que el servidor sea más seguro:

  • Permitir solo el inicio de sesión usando la autenticación de clave
  • Deshabilitar el acceso de root ssh
  • Use un sistema como Fail2Ban para bloquear los intentos de fuerza bruta

¿Debo cambiar las direcciones IP?

El cambio de direcciones IP probablemente no afectará mucho el escaneo en segundo plano automatizado

    
respondido por el jrtapsell 22.02.2018 - 19:33
fuente
4

Como ya se indicó en los comentarios anteriores, el cambio de IP NOT evitará que los escáneres malintencionados lo analicen.

Resumiré los pasos necesarios para realmente asegurar su servicio SSH:

  • como las personas han mencionado de antemano: cambie el puerto a un valor no estándar (puerto alto), por ejemplo, un valor como 13322. Esto no es una ventaja de seguridad real , pero hace que sea más difícil para un bot encontrar el puerto SSH activo.
  • SOLO use claves seguras para la autenticación, si es posible, ¡desactive la autenticación del teclado con las contraseñas por completo!
  • Use fail2ban - service, que está disponible para cualquier sistema / linux-derivate similar a Unix. Este servicio prohibirá automáticamente una dirección IP específica después de n intentos fallidos de autenticación durante un tiempo definido. La prohibición se realiza a través de las reglas de iptables, por lo que iptables es un requisito.
respondido por el Oliver 23.02.2018 - 13:44
fuente
1

Una alternativa a fail2ban, puede configurar un trabajo cron por hora para ejecutar un script simple como el que se muestra a continuación. Ajuste los primeros 4 parámetros como mejor le parezca. Funciona con pf .

si no está utilizando pf, deberá reemplazar la línea pfctl ... por algo que funcione con su firewall.

También configura un trabajo cron diario para vaciar la tabla pf : pfctl -t bruteforce -vT expire 86400

#!/bin/sh -f
#
# Check 'Invalid user' attempts on sshd in auth.log (LOGFILE).
# If there are more than (MAX_TRY) attempts within
# the last hour (EARLIEST), source ip is added to PF_TABLE table in pf
#
MAX_TRY=5
LOGFILE=/var/log/auth.log
# last 48 hour
EARLIEST='date -v-48H +%s'
PF_TABLE=bruteforce

grep "Invalid user" $LOGFILE | while read d0 d1 d2 rest; do
    timestamp='date -j -f "%b %d %H:%M:%S" "$d0 $d1 $d2" +%s'
    test $timestamp -lt $EARLIEST && continue
    echo $rest | cut -d ":" -f2- | cut -d " " -f6
done | sort | uniq -c | while read count ip; do
    test $count -lt $MAX_TRY && continue
    pfctl -v -t $PF_TABLE -T add $ip
done
    
respondido por el ping mai 19.07.2018 - 21:57
fuente

Lea otras preguntas en las etiquetas