Рассмотрим различные почтовые сервисы, как автоматически заполнять формы регистрации, логиниться, нажимать активационную ссылку. 

В прошлой статье [Часть1 и Часть2] мы рассмотрели различные программы от ZennoLab, как составляется алгоритм работы бота, разгадываются капчи, пишется и отправляется текст продавцу товара. Но все действия происходили от имени одного пользователя и этот недостаток мы решили устранить. Чтобы спамить более глобально, необходимо иметь множество почтовых аккаунтов, так как для одного аккаунта устанавливаются ограничения в написании сообщений или просмотре какого-то контента. Создавать почтовые аккаунты вручную утомительно и долго, поэтому поставим этот процесс на поток c помощью интернет-роботов на примере нескольких почтовых сервисов.

 

Хитрости интернет-сервисов

Многие сайты применяют различные приёмы для защиты от интернет-роботов, перечислю несколько известных мне:

· разгадывание разного рода капч;

· отправка на почту активационной\подтверждающей ссылки;

· отправка кода\пароля с помощью смс;

· использование временного интервала;

· ограничение по количеству посещений страниц, открытия картинок, написания сообщений, разгадывания капч и другое;

· при регистрации помимо ввода основного почтового ящика, требуется указать ещё и дополнительный;

· применение всплывающих окон с описанием функций своего сервиса или же сторонней рекламой, которые могут закрывать нужные кнопки или часть меню;

· использование различных инструментов для определения ботов по IP-адресу, спам-словам, электронным адресам, повышенной активности.

Зная об этом, можно обучить робота обходить данные ограничения и оставаться незамеченным.

 

Авторегистрация в Яндекс

Одним из популярных почтовых сервисов является www.yandex.ru. Воспользуемся его услугами.   

Сначала в программе ProjectMaker настраиваем профиль [https://zennolab.com/wiki/ru:actions:profile], который необходим для генерации данных и дальнейшей подстановки в поля на формах регистраций. Профиль состоит из 2х частей (см. рис. 1): первая (Profile) находится на нижней панели инструментов, в которой настраиваются национальность, местоположение, логин, пол, возраст, браузер, а вторая (Человек) - расположена на верхней панели инструментов, в ней видны все сгенерированные данные.

Рисунок 1. Настройка профиля.

Далее переходим на сайт www.yandex.ru, нажимаем ссылку Завести почту. На регистрационной форме в первом поле Имя нажимаем правой кнопкой мыши, в контекстном меню выбираем В конструктор действий, и опускаемся вниз экрана к открывшимся настройкам. Чтобы поле Имя получило рандомное значение, необходимо выбрать точку Set, в выпадающем списке Атрибут выбрать пункт Value, а в поле Значение нажать правой кнопкой мыши и выбрать в контекстном меню Установить значение из профиля->Фамилия (см. рис. 2). После этого в поле Значение появится переменная {-Profile.Name-}, затем нажимаем кнопку Добавить в проект. Таким образом проходим все компоненты на форме, подставляя сгенерированные значения переменных из профиля и создавая алгоритм работы бот-программы.

Рисунок 2. Подстановка сгенерированных данных.

В данном варианте мы будем регистрироваться без ввода номера телефона, нажав на ссылку У меня нет телефона. В этом случае появится 3 дополнительных поля, где нужно выбрать контрольный вопрос, ввести ответ на него и разгадать капчу. Тут более простая капча, нежели в OLX. Чтобы её разгадать, нужно на ней нажать правой кнопкой мыши, в контекстном меню выбрать пункт Это капча, появится нужный экшн для добавления его в алгоритм. В параметрах экшена нам необходимо выбрать модуль CapMostr2.dll и создать переменную, например, capcha, значение которой вставится в требующее его поле.

После этого добавим ещё в алгоритм экшн Пауза со значением 5 секунд, так как не всегда правильно отрабатывает следующее действие нажатия на кнопку Зарегистрироваться. Если всё гладко прошло, то сервис Яндекс откроет только что созданный почтовый ящик.

Внутри открывшегося почтового ящика сразу будет множество окон с различными вопросами и предложениями и это нужно учесть, так как их необходимо корректно закрыть, а затем разлогиниться. Для этого в алгоритм мы переносим уже известные нам компоненты с событием нажатия на кнопки (Пропустить, Закрыть, Напомнить позже и другие), а также между ними поставим интервал по 3 секунды.

После выхода из почтового ящика имеющиеся данные (нам достаточно логин и пароль) нужно куда-то сохранить. Для этих целей в программе ProjectMaker имеется несколько экшенов: Файлы, Базы данных, Список, Таблица. Мы применили экшн Файлы. Сначала на диске создаётся текстовый файл, затем в экшене указывается действие (нам нужно Записать текст), путь к файлу, активируются галочки Дописать файл и Записать перенос строки в конец, чтобы новая запись была с новой строки, а в текстовом поле Что писать нужно записать переменные, содержащие значения логина и пароля из профиля, а также мы ещё добавим домен и разделители. Строка с переменными будет выглядеть так:    {-Profile.Login-}@yandex.ru---{-Profile.Password-}.

После этого запускаем проект в программе ZennoPoster. Примерно за 1 час файл содержал около 40 записей. На разгадывание капч уходило 3-5 секунд, так как Яндекс не использует сложные капчи, поэтому и скорость работы робота высокая. Алгоритм работы бота-авторегистратора для почтового Яндекс-сервиса можно увидеть на рисунке 3.

Рисунок 3. Алгоритм работы бота для Яндекс.

 

Авторегистрация в MailRu

Воспользуемся ещё одним популярным почтовым сервисом www.mail.ru, пройдя проверку на робота другим способом.       

Создаём новый проект, добавляем в алгоритм нужные компоненты, форму регистрации заполняем по принципу с Яндекс. Доходим до поля Телефон, где требуется ввести номер телефона, чтобы получить смс-код активации. Для этого случая в ProjectMaker имеется экшн SMS-сервисы. Чтобы его задействовать, нужно сначала воспользоваться услугами любого смс-сервиса, например, 5SIM, Get-SMS, Give-SMS, Simsms, SMSAktiwator, SMS Activate, Smska, Sms-reg, VirtualSMS. Они предоставляют возможность использовать временный номер для получения смс онлайн, но за свои услуги требуют оплату.

Мы воспользовались смс-сервисом 5SIM [https://5sim.net/]. За 50 рублей у нас в распоряжении было 50 смс, а также код подтверждения, который вводится в поле Секретный ключ в настройках программы ProjectMaker, пройдя Старт->Настройки->СМС.    

Теперь добавим в алгоритм 2 компонента SMS-сервисы и настроим их. Данный экшн имеет несколько видов действий (см. рис. 4). Первый – нужен для генерации номера телефона, на который отправится код подтверждения регистрации. В параметрах этого экшена в выпадающих списках выбираем FiveSimSms.dll и Получить номер, в поле Сервис нужно вписать mailru (без www и “.”, найти название можно на сайте смс-сервиса), затем вписываем название оператора и создаем 2 переменные - для ID-активации (num_id) и номера телефона (number). После этого нужно ещё добавить экшены для нажатия на кнопку и паузы.

Рисунок 4. Создание почтовых аккаунтов в MailRu.

Второй экшн SMS-сервисы будет принимать смс, считывать полученный код и вставлять его в требуемое поле. Для этого в настройках данного экшена в выпадающих списках выбираем FiveSimSms.dll и Получить статус, в поле ID активации вводим переменную от первого экшена, в нашем случае она выглядит так:

{-Variable.num_id-} ,  а в последнем поле Положить в переменную создадим переменную, например, get_status (см. рис. 4).

В следующем компоненте Установка значения мы получим значение переменной get_status, содержащая код, который в свою очередь впишется в поле на форме регистрации. И снова добавляем несколько экшенов с паузами и для нажатия на кнопки.

В самом конце расположим 2 компонента Файлы, чтобы сохранять получившиеся логины и пароли, соответствующие переменные выглядят так:

{-Profile.Login-}@mail.ru---{-Profile.Password-} .

Если ориентироваться на время, то примерно за 1 час в файле было 20 записей. Время на получение смс и определения содержащегося в ней кода занимает около 2-3 минут и это считается быстро, так как время отклика может достигать и 10-15 минут.   

 

Продолжение следует...