Detector de Bruteforce no SSH e Bloqueio de IP Atacante
Publicado por Jan Seidl 26/10/2004
[ Hits: 12.594 ]
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
Usando Shell para incluir múltiplos usuários no Windows
Instalar o screenFetch em qualquer distribuição
Removendo e-mails da fila do queue
Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Servidor vs Computador Convencional
Como administrar uma rede Linux através da ferramenta Webmin
Como escanear portas de um servidor através da ferramenta Nmap e como alterar a porta do SSH.
Marcando e desmarcando pacotes para atualização, instalação e remoção no Debian e agregados
Alguém aqui mexe com arduino? (2)
Audio Failure on Acer Aspire AS4738 – Intel 5 Series HD Audio (Linux M... (1)









