Detector de Bruteforce no SSH e Bloqueio de IP Atacante
Publicado por Jan Seidl 26/10/2004
[ Hits: 12.250 ]
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
Automatizando autenticação do Speedy Business
Compilação do QMPlay2 no Deepin 20
Script para fazer o scroll (a rodinha) do mouse serial funcionar
Script para excluir tudo de um local menos uma pasta ou arquivo selecionado
Atenção a quem posta conteúdo de dicas, scripts e tal (6)
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
O mínimo que você precisa saber sobre o terminal (parte 2)
O mínimo que você precisa saber sobre o terminal (parte 1)
Como iniciar uma máquina virtual do VirtualBox automaticamente no boot do LUbuntu 18 LTS
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Como deixar as abas do Firefox mais fininhas
Mudar o gerenciador de login (GDM para SDDM)
"Tentando" fazer com que programas rodem no Wayland e no X11
Problema ao usar monitor externo via USB-C/Display... no Ubuntu 24 (1)
Porblema com MergeList [RESOLVIDO] (10)
Melhor hospedagem em nuvem para projetos Laravel com baixo custo? [RES... (7)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta