Detector de Bruteforce no SSH e Bloqueio de IP Atacante
Publicado por Jan Seidl 26/10/2004
[ Hits: 12.501 ]
Bom, estava recebendo muitas tentativas de conexao no meu ssh com diversos users diferentes... Vi logo... ataque bruteforce....
Olhando algumas listas que frequento como a da SecurityFocus (bugtraq) e umas outras, vi que está rolando por ai um script que faz isso com um range de ips, usando wordlist e dictionary... enfim... Resolvi fazer algo para parar com as mensagens na minha tela... é bem simples, claro q se eu estivesse de snort seria melhor.. mas vamos la.
#!/bin/bash
# --------+ CRIADO POR MASTAH +---------
# Para toda comunidade linux do brasil e
# do mundo todo... grande abraco para a
# galera da MCury, VivaOLinux e para o
# Grande kopke que agora é papai.
# ------------>>>>> PARABENS KOPKE!!!!!!
# Shellscript criado para bloquear os corriqueiros bruteforce probes
# feitos para a porta do ssh. Pega as ultimas 20 tentativas ilegais na porta do ssh.
# Verifica se voce já bloqueou o mané se voce quer adicionar na regra do iptables.
# Caso queira usar no crontab, é so mudar o valor da var $MODE pra "AUTO"... 
# Abracos, Mastah
MODE="AUTO"
#MODE="MANUAL"
if [ -f /var/log/messages ] ; then
   ips=$(cat -n /var/log/messages | tail -n 20 | grep -i Illegal | grep -i sshd | awk -F" " {'print $11'})
   attempts=1
   for ip in $ips ; do
      
      lastip=$ip
      if [ "$lastip" == "$ip" ] ; then
         attempts=$(expr $attempts + 1)
         if [ $attempts -ge 5 ] ; then
            echo "Brute force SSHD attack detected from $ip"
            attempts=1
            lastip=""
            blocked=$(iptables -L INPUT | grep -i $ip | grep -i DROP)
                   if [ "$blocked" ] ; then
               echo "> Ip Already Blocked. Continuing with scan"
               echo " "
            else
               if [ $MODE == "MANUAL" ] ; then
                  echo "> Do You Want to add this IP to INPUT DROP in IPTABLES rules? (y/n)"
                  read resp
                  if [ "$resp" == "y" ] ; then
                     iptables -A INPUT -s $ip -j DROP
                     echo "> IP $ip ADDED TO IPTABLES INPUT DROP ruleset"
                     echo " "
                  fi
               else
                  iptables -A INPUT -s $ip -j DROP
                  echo "> IP $ip ADDED TO IPTABLES INPUT DROP ruleset"
                  echo " "
               fi
            fi
         fi
      fi
   done
fi
Configuração do horário de verão 2006/2007 (Red Hat, Fedora)
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
E aí? O Warsaw já está funcionando no Debian 13? (12)
copiar library para diretorio /usr/share/..... su com Falha na a... (1)
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (3)









