Detector de Bruteforce no SSH e Bloqueio de IP Atacante
Publicado por Jan Seidl 26/10/2004
[ Hits: 12.653 ]
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
Montando compartilhamento de máquinas Windows no Linux
Efetua uma busca na rede por IPs(hosts) ativos
tira_usb.sh - Remover dispositivo USB
Papel de parede - Mudança automática no Ubuntu/Debian
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
Pisando no acelerador do Linux Mint: Kernel XanMod, zRAM e Ajustes de Swap
Como compilar kernel no Linux Mint
Lançamento do Brutal DOOM test 6
Consertando o erro no Brave de webgl
Solução para ter de volta as bordas e barra de títulos das janelas em zenity no Debian 13.x
Qual melhor distro para esse notebook? (3)
O que você está ouvindo agora? [2] (244)









