Detector de Bruteforce no SSH e Bloqueio de IP Atacante
Publicado por Jan Seidl 26/10/2004
[ Hits: 12.479 ]
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
cpufreq-selector em Dialog - Centrino frequencia
Testar várias portas TCP para um único host/IP
Script para subir interface wireless
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
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Falha com leitor de digitais no Ubuntu: sugestões? (0)
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (1)