- Регистрация
- 19.01.2015
- Сообщения
- 1 924
- Благодарностей
- 1 123
- Баллы
- 113
Доработка существующих профилей
Приветствую друзья . Сегодня поговорим с вами о прокси, профилях, шрифтах, dns, webrtc и многом другом, что стоит
Введение
Каждый из вас не раз сталкивался с невозможностью регистрации на каком либо ресурсе, с банами сеток аккаунтов, проблемами с парсингом и т.д. ,чтобы понять, за что прилетают баны, нужно как минимум разобрать JS скрипты сайта, понять, какие параметры тянет с нас сайт.
Не каждый обладает навыками, да и часто сам код обфусцированный, в него добавляют комментарии, ненужные переменные, прячут его, в общем создают дополнительные проблемы, чтобы не возможно было понять, что к чему.
В зеннопостере, уже встроено достаточно много вкусностей которые можно эмулировать, прошу заметить именно эмулировать, а не отключать. Мы продвинемся чуть дальше и разберем что ещё можно добавить к ним.
Почему не отключать?
Вот вам простой пример: зайдите на компьютер к своей маме/папе/сестре/брату и т.д. и посмотрите, какой dns у них? Скорее всего, стандартный dns провайдера. Какой WebRTC? Разве он отключен?
Часть 1
Прокси
Прокси бывают разных видов: Shared, Резидентские, Серверные, Мобильные.
Выбираются в зависимости от задач:
- Если есть капча, забудьте про Shared или приобретите CapMonstr, иначе разоритесь.
- Серверные прокси, как правило, используются для серфинга, парсинга, обладают отличной скоростью + можно поднимать самим + низкая цена - очень часто это 1-2 подсети, которые легко вычисляются и аккаунтам выдают банан =)
- Резидентские прокси-дорого, да, но кто знает, зачем их использовать: окупают стоимость + сложно банить (много подсетей) + имеют траст, т.к. это по сути домашние IP.
- Мобильные прокси - отличный выбор для регистраций и эмуляции живых аккаунтов. Поднимаются на мобильных устройствах (модемы, телефоны) и обладают огромным трастом перед любым ресурсом за счет того, что за вашим IP адресом находится не 1 пользователь, следовательно, если банить по IP, ресурс будет недоступен и остальным пользователям, поэтому так не делают.
Вопрос:
Я работаю с сайтом. 1 цикл примерно 10-15 минут и использую мобильный прокси с реконнектом каждые 2 минуты, могут ли меня палить?
Ответ:
Могут, самый простой вариант: Заходите на сайт с 1 IP. Через время он меняется, меняется, меняется. С помощью JS вам выдают куку, смотрят IP адрес, через время опять подгружается JS, сравнивает, потом опять подгружается JS- нашёлся бот, у которого 5 раз поменялся IP c одинаковым или почти одинаковым интервалом. Вам могут выдать доп куку или изменить текущую и накинуть очко Антифрода
Решение:
Использовать более долгий реконнект или поднимать самому и реконнектить рандомно по времени
Passive OS Fingerprint
Зависит от операционной системы, на которой подняты прокси. Если вы хотите, чтобы светился линукс, поднимайте на линуксе, если нужен андроид, поднимайте на линуксе и правьте /etc/sysctl.conf , если windows, поднимайте на windows и т.д. Повлиять можем, если поднимали прокси сами или в сервисе, где покупали, предусмотрен такой функционал.
Настройка /etc/sysctl.conf:
#Для андроида
net.ipv4.route.min_adv_mss = 256
net.ipv4.tcp_rmem = 8192 87380 16777216
net.ipv4.tcp_wmem = 6144 87380 1048576
#Для винды
net.ipv4.tcp_timestamps=0
net.ipv4.tcp_window_scaling=0
Тут нужно решить вам, лично я не заморачиваюсь и вот почему, простой пример: Допустим, у меня нет проводного интернета, но есть модем, следовательно, если я буду серфить интернет через модем, мой p0f будет windows NT и в этом нет ничего страшного, следовательно, если я подниму проксю на windows, будет p0f windows.
Timezone
В некоторых версиях ЗП были баги, на данный момент это исправлено. Сайты чекают данный параметр и сравнивают время локальное и браузерное, могут ругаться, если оно отличается. Рекомендуемый сайт для чека
https://whatleaks.com/, не рекомендую смотреть на https://whoer.net/. Не знаю как сейчас, но пару месяцев назад не всегда правильно показывал.
Как точно проверять, если сомневаетесь. На примере Саратова:
Запрос для проверки
WebRTC
И тут у нас приходит разница в браузерах. Если ещё несколько версий назад браузер FF показывал и локальный и публичный ip адреса, то сейчас ситуация изменилась и показывается только публичный, как и в хроме. Для хрома разработчики уже исправили данную проблему линк в последних версиях, если вы используете FF, предлагаю вам взглянуть на шаблон во вложении. Работает он следующим образом: Устанавливает прокси => Под прокси заходит на сайт => чекает IP адрес (чтобы знать какой адрес эмулировать) => подставляет его => Proffit. У данного решения есть недостатки, если вы используете backconnet прокси, то ip надо проверять при переходе на другую страницу или использовать Хром.
Правильно | Неправильно |
Имеет 3 значения.
- Разрешено
- Запрещено
- Спрашиваем
Тут нет ничего супер страшного, сайты получают ваш город на основе IP адреса с таких или аналогичных баз. Ещё ни разу не встречал банов от того, что выключена геолокация, поэтому её не использую
DNS
Лучший вариант отправлять запросы DNS через прокси, идеально если вы поднимаете свои и можете настраивать правильные конфиги 3proxy например. Есть несколько приемов как сайты определяют ваши DNS
Ресурс со скриншота. Создаются уникальные поддомены, через каких провайдеров пошли запросы на них будет видно в конце расширенного теста.
Решение
Для соксов на фф будет актуален код
C#:
instance.SetBrowserPreference("network.proxy.socks_remote_dns", true);
Код:
netsh interface ip set dns "Ethernet" static 0.0.0.0
C#:
var regexs = new []{ @"^http(?:s)?:\/\/(?!www\.)([\w-]{20,63}\.)([\w-]{1,63}\.){1,}([\w-]{1,63})(?:\.(?:\w{3}|\w{2}))(?:$|\/).*" };
instance.SetContentPolicy("BlockList", null, regexs);
Либо настраивать правильные конфиги 3proxy и делать несколько копий как я говорил выше, чтобы каждое устройство имело только свои днс.
Исключения
Не раз уже сталкивался, когда на модемах, допустим Билайн, отдает dns гугла, это нормально. Антивирус Avast отдает свои dns дополнительно к вашим(лечится отключением функции)
Часть 2
Данные профиля
Уже несколько раз на форуме видел однотипные вопросы типа: сайты не видят город или пол, или ещё что-то в профиле, ведь они же есть, загружаю ведь профиль?
Данные в профиле разработчики сделали как пример, чтобы вы могли брать их для заполнения на каких-либо площадках, форумах. Никакие сайты их не видят, пока вы сами не заполните свой почтовый аккаунт или аккаунт на форуме, никто не будет знать что это "Юлия Калинина"
Плагины
Опять у нас идет различие браузеров. Наверное, некоторые вспомнят мою тему https://zennolab.com/discussion/threads/welcome-i-m-antifrod.72520/ так вот как раз в ней и был этот подвох. Суть её в следующем: я накидал скрипт, который сравнивал кол-во плагинов и их название. Если пользователь был с хромом и у него был другой набор, ему показывало, что он бот. Если вы зайдете в свой браузер хром, то в поле плагины вы увидите "f98ba1457738b341", а в зеннопостере с генерацией периодически другие данные из-за плагинов.
Как же нам все время получать такой принт (набор плагинов) на хроме?
Решение
Нам поможет старенькая моя разработка, но рабочая. Сайт для проверки http://f.vision/. Для тех кто не знаком с C# немного поясню что делает:
Вначале берутся все плагины, которые у нас есть, скрываются, и заменяются нужными.
C#:
//Генерация плагинов для f98ba1457738b341
var PluginList = instance.GetPlugins().ToList();
for (int i=0; i < PluginList.Count; i++){
instance.HidePlugin(PluginList[i]);
}
List<PluginMimeType> lstMimes = new List<PluginMimeType>();
PluginMimeType mime1 = new ZennoLab.CommandCenter.PluginMimeType("application/x-nacl", "Native Client Executable", "");
PluginMimeType mime2 = new ZennoLab.CommandCenter.PluginMimeType("application/x-pnacl", "Portable Native Client Executable", "");
lstMimes.Add(mime1);
lstMimes.Add(mime2);
var plugin = new ZennoLab.CommandCenter.PluginItem("Native Client", "internal-nacl-plugin", "", "", lstMimes);
instance.ShowPlugin(plugin);
List<PluginMimeType> lstMimes2 = new List<PluginMimeType>();
PluginMimeType mime3 = new ZennoLab.CommandCenter.PluginMimeType("application/pdf", "", "pdf");
lstMimes2.Add(mime3);
var plugin2 = new ZennoLab.CommandCenter.PluginItem("Chrome PDF Viewer", "mhjfbmdgcfjbbpaeojofohoefgiehjai", "", "", lstMimes2);
instance.ShowPlugin(plugin2);
List<PluginMimeType> lstMimes3 = new List<PluginMimeType>();
PluginMimeType mime4 = new ZennoLab.CommandCenter.PluginMimeType("application/x-google-chrome-pdf", "Portable Document Format", "pdf");
lstMimes3.Add(mime4);
var plugin3 = new ZennoLab.CommandCenter.PluginItem("Chrome PDF Plugin", "internal-pdf-viewer", "Portable Document Format", "", lstMimes3);
instance.ShowPlugin(plugin3);
Не нужно перегенерировать каждый раз, если вы сохраняете и загружаете профиля.
Шрифты
Сниппет для уникализации шрифтов и для хрома и для фф будет актуален. Как работает - создаете список "Шрифты", используете сниппет. Сниппет ложит шрифты инстанса в список, скрывает часть и перезагружает инстанс(сделано для Хрома). Сайты для проверки 1, 2.
C#:
var table = project.Lists["Шрифты"];
int res=0;
var fonts = instance.GetFonts();
string name = "";
if (fonts != null)
{
res = fonts.Count();
table.AddRange(fonts.ToList());
}
int rnd_sum_font = new Random().Next(7, 15);
for(int i = 0; i < rnd_sum_font; i++)
{
int rnd = new Random().Next(0, table.Count);
instance.HideFont(table.ElementAt(rnd));
}
instance.ActiveTab.Close();
Не нужно перегенерировать каждый раз, если вы сохраняете и загружаете профиля. В конечно итоге можете остаться без шрифтов
Экран
Сниппет подойдет для обоих браузеров, почему стоит использовать? Все очень просто, верстка под разные устройства может отличаться. Сайты могут скрывать или показывать дополнительные элементы в зависимости от разрешения.
Зайдем на тот же whoer и нажмем на VPN, мы перейдем по нему
Используем сниппет, который ниже, и так же попробуем перейти на VPN, мы перейдем по нему?
Этот элемент у нас уже в "гамбургере" (так иногда называют это меню), и поэтому перехода не будет
Используем сниппет, который ниже, и так же попробуем перейти на VPN, мы перейдем по нему?
Этот элемент у нас уже в "гамбургере" (так иногда называют это меню), и поэтому перехода не будет
C#:
instance.SetWindowSize(project.Profile.ScreenSizeWidth, project.Profile.ScreenSizeHeight);
Бонус
Чтобы проверять свои профили, надо где-то их чекать. Во вложении будут 2 шаблона, 1 который генерирует, другой загружает, заходит на разные сервисы и сохраняет скрины, можете доработать добавить свои прокси и в бой.
Бонус 2
Промокод STAYHOME
Регистрируемся запоминаем наш логин и пароль их и будем указывать.
Идем сюда https://sharewareonsale.com/s/free-seed4-me-vpn-100-discount,
делимся.
Получаем ваучер и вводим его на сайте впн в личном кабине в продлении. Время от ваучеров складывается можно получить и 10 лет бесплатного VPNa.
Регистрируемся запоминаем наш логин и пароль их и будем указывать.
Идем сюда https://sharewareonsale.com/s/free-seed4-me-vpn-100-discount,
делимся.
Получаем ваучер и вводим его на сайте впн в личном кабине в продлении. Время от ваучеров складывается можно получить и 10 лет бесплатного VPNa.
Спасибо всем, кто дочитал до конца ! Надеюсь мои старания помогут вам
- Тема статьи
- Другое
- Номер конкурса статей
- Тринадцатый конкурс статей
Вложения
-
21,9 КБ Просмотры: 867
-
61,5 КБ Просмотры: 1 059
Для запуска проектов требуется программа ZennoPoster или ZennoDroid.
Это основное приложение, предназначенное для выполнения автоматизированных шаблонов действий (ботов).
Подробнее...
Для того чтобы запустить шаблон, откройте нужную программу. Нажмите кнопку «Добавить», и выберите файл проекта, который хотите запустить.
Подробнее о том, где и как выполняется проект.
Последнее редактирование модератором: