Профили ======= .. contents:: Содержание :depth: 3 В разделе Profiles представлена таблица, в которой отображаются купленные ранее профили. Для того, чтобы запустить браузер с требуемым Вам профилем, нужно выполнить следущие действия: - Выбрать интересующий Вас профиль (навести мышь на строку описывающую профиль) - Кликнуть на него - В открывшемся диалоге (Settings) указать требуемые настройки - В верхнем правом углу диалога кликнуть на кнопку **SAVE & RUN** .. figure:: images/Profiles.png Описание процесса настройки профиля (Диалоговое окно Settings) -------------------------------------------------------------- В поле **Profile label** можно ввести название, символизирующее для чего предназначен данный профиль. На пример: **facebook Ivanov Ivan.** Это название профиля будет отображаться в таблице со списком Ваших профилей. Внутри профиля, можно задать произвольное имя: .. figure:: images/Profile-General-ProfileLabel.png После сохранения профиля, в общем списке будет отображаться нужное вам название: .. figure:: images/Profile-General-ProfileLabel2.png Настройка типа соединения: Connection ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ В данный момент поддерживается два типа соединения: - **direct** - прямое соединение, без использования прокси .. figure:: images/Profile-General-Connection-Direct.png - **socks5 proxy** - соединение через socks5 прокси .. figure:: images/Profile-General-Connection-socks.png Для того, чтобы активировать соединение через socks5 прокси, Вам следует выполнить следущие действия: - кликнуть на переключатель рядом со словом **Connection** Вы увидете, что тип соединения сменился с direct на SOCKS5 proxy Поля **IP, Port, Login, Password** и кнопка **CHECK PROXY** стали активными - вбиваем данные **IP, Port, Login, Password** и кликаем на кнопку **CHECK PROXY** Приложение выполнит проверку работоспособности указанного Вами socks5 прокси Определит внешний IP адрес и выведет его в поле **External IP** По внешнему IP адресу будут определены **Country, Region, City, Zip** и выведены в соответствующих информационных полях (в низу формы) - если в процессе тестирования прокси возникнут ошибки, то приложение отобразит эту информацию красным цветом под переключателем типа соединения Чтобы использовать прямое соединение, просто кликните на переключатель рядом с словом **Connection** Тип соединение будет переведен из **Connection: SOCKS5 proxy** в **Connection: direct** При этом приложение отобразит: - в поле **External IP** Ваш внешний IP адрес - в информационных полях **Country, Region, City, Zip** отобразятся данные соответствующие Вашему внешнему IP адресу Итоговый вариант должен выглядить примерно так: .. figure:: images/Profile-General-Connection-sock2.png Настройка таймзоны и языка ~~~~~~~~~~~~~~~~~~~~~~~~~~ После получения данных о внешнем IP адресе становится активна кнопка **SET AUTO** рядом с полями **Timezone** и **Language**. Кликнув на эту кнопку, можно установить автоматически определенную таймзону и язык для Вашего внешнего IP адреса. Учтите, что если внешний IP сменится, то данные в полях **Timezone** и **Language** останутся теми, которые Вы установили ранее. Т.е. если Вы сменили socks5 прокси и страна/регион вашего внешнего IP изменились, то Вам может потребоваться кликнуть повторно на кнопку **SET AUTO** для установки новых значений в полях **Timezone** и **Language**. Вы должны понимать и отдавать себе отчет, в том в какой момент Вам требуется настраивать или перенастраивать таймзону и язык. Обычно это делается при первом использовании профиля и далее оставляется без изменений, т.к. многие сайты/сервисы анализируют эти данные и могут крайне негативно относится к их смене. На самом деле, обычный пользователь крайне редко меняет эти данные. При нажатии на кнопку "SET AUTO" применится та таймзона и язык, к которой принадлежит IP: .. figure:: images/Profile-General-Timezone.png Настройка WebRTC ~~~~~~~~~~~~~~~~ Подмена Web RTC имеет два режима: - **WebRTC: original** В данном режиме подмена не осуществляется. И данные о WebRTC остаются в неизменном виде. Т.е. браузер возвращает реальные данные. - **WebRTC: fake** Этот режим позволяет подменить данные WebRTC. Вам потребуется вбить в поле **Internal IP** свой фейковый внутренний IP адрес. Вы можете вбить, на пример: 192.168.1.18 (последний октет в котором содержится 18 может принимать любое значение от 1 до 254) На разных профилях рекомендуется вбивать разные внутренние IP. .. tip:: Внутренние IP адреса из диапазона 10.0.0.0/24 обычно назначаются open vpn сервисами. И если Вы хотите скрыть использование open vpn, то не следуется вбивать IP из этого диапазона. В google chrome была пофикшина утечка IP локальных интерфейсов через WEB RTC. И теперь сайты не видят списка локальных интерфейсов, но все же они видят внешний IP И для подмены требуется заполнение обоих полей. В ближайших релизах функционал подмены WEB RTC вероятно будет переработан. Есть отличные идеи на эту тему. Настройка Geo location ~~~~~~~~~~~~~~~~~~~~~~ Подмена Geo локации имеет два режима: - **Geo location: original** В данном режиме подмена не осуществляется. И данные о геолокации остаются в неизменном виде. Т.е. браузер возвращает реальные данные. - **Geo location: fake** Этот режим позволяет подменить данные о Вашей геолокации. При активации режима подмены Вы можете вбить в ручную широту и долготу в соответствующие поля **Latitude** и **Longitude**. Либо же кликнуть на кнопку **SET AUTO** рядом с полями широты и долготы. И приложение автоматически заполнит эти поля данными соответствующими внешнему IP адресу указанному в поле **External IP** .. tip:: | Web сайты не могут скрытно опрашивать API геолокации браузера. | Когда сайт пытается обратиться к API геолокации, Ваш браузер выдаст запрос в котором укажет, какой сайт пытается получить данные о Вашей геолокации. | Нормальной практикой является - запрещать сайту получить данные о вашей геолокации. | По этой причине, Вы можете не подменять геолокацию и в момент когда браузер отобразит запрос от сайта просто запретите доступ к данным геолокации. Поле "Notice" ~~~~~~~~~~~~~ В данном поле Вы можете хранить какие то заметки о текущем профиле. Оно находится в самом низу профиля. Кнопка "WIPE" ~~~~~~~~~~~~~ Данная кнопка расположена в верхнем правом углу диалога **Settings** Нажатие на эту кнопку позволит очистить все пользовательские данные. Такие как: cookies, localstorage, history, ... Данное действие откатить обратно нельзя! Кнопка "SAVE" ~~~~~~~~~~~~~ Данная кнопка расположена в верхнем правом углу диалога **Settings** Нажатие на эту кнопку позволит сохранить настройки профиля которые Вы указали. Имейте в виду, что сохраняемые настройки не применяются к уже запущенной сессии. Кнопка "SAVE & RUN" ~~~~~~~~~~~~~~~~~~~ Данная кнопка также расположена в верхнем правом углу диалога **Settings**. Нажав на нее, Вы сохраните настройки профиля и запустите браузер с этими настройками. Имейте в виду, что данная кнопка может быть не активна если браузер с данным профилем уже запущен. Replacement ~~~~~~~~~~~ В этом блоке находятся переключатели, позволяющие включать и отключать подмену данных: media devices, mime types, plugins, web gl, audio, battery. .. figure:: images/Profile-General-Replacemant.png Данные переключатели управляют именно подменой данных. За перехват и подмену фингерпринтов отвечают другие механизмы. Переключатели из блока **Replacement** рекомендуется использовать для тестирования и локализации проблем с паливом со стороны сайтов. Если Вы заметили, что на целевом сайте не работает часть функционала или странное поведение, не такое, как в обычном браузере, то рекомендуется следующая схема тестирования и выявления проблемного функционала: - отключать по одному переключателю - заходить на целевой сайт/страницу и проверять изменилось ли поведение со стороны сайта - повторять итерацию тестирования Таким образом, Вы скорее всего сможете локализовать и понять, что конкретно не нравится сайту и какой функционал палится. Далее смело связывайтесь со мной в ПМ и скидывайте баг репорт с описанием проблемы. Я в самое кратчайшее время разберусь и пофикшу баг. .. _profiles-browser-cli-params: Browser CLI params ~~~~~~~~~~~~~~~~~~ Нажатие на эту кнопку откроет модальное окно. В котором Вы можете указывать параметры командной строки для браузера: .. figure:: images/Profile-Options-Browsercli.png Пожалуйста указывайте каждый параметр с новой строки - один параметр на строку. | **Так будет правильно:** | ``--param1`` | ``--param2`` | ``--param3`` | **А так нет:** | ``--param1 --param2 --param3`` Список актуальных параметров Вы можете уточнить `https://peter.sh/experiments/chromium-command-line-switches `_. Обратите внимание, что с каждым релизом google chrome список актуальных параметров может меняться. .. tip:: | Если при тестировании **Web GL** у Вас выявилась проблема с поддержкой **Web GL2**, то попробуйте использовать параметр | ``--ignore-gpu-blacklist`` | ``--use-angle=gl`` | В разделе :ref:`problem-webgl2` описан данный кейс. Cookies manager ~~~~~~~~~~~~~~~ Нажатие на эту кнопку откроет модальное окно. В котором Вы можете импортировать или экспортировать куки для текущего профиля. Поддерживается два формата импорта и экспорта: - JSON - Netscape Обратите внимание, что при импорте возможно затирать существующие куки или обновлять их значение. По дефолту значения существующих кук будут обновляться. Если же Вы хотите что бы старые куки полностью были удалены перед импортом новых, то установите значение переключателя в положение включено, как это показано на скриншоте ниже. .. tip:: | Для того что бы проверить какие куки загрузились в адресной строке браузера вбейте: chrome://settings/siteData .. figure:: images/cookies-manager.png Advanced Options ~~~~~~~~~~~~~~~~ Кнопка "Advanced" разрешает выполнять более тонкую настройку профиля после покупки. Она находится в том же блоке "Options", где и менеджер куков: .. figure:: images/Profile-General-Advanced.png .. tip:: | Если профиль еще ниразу не запускался, то реадктировать эти параметры можно в любой момент времени. | После того, как вы запустите профиль первый раз, кнопка "Advanced" будет доступна **еще 15 минут**. После этого, она станет неактивной и редактирование этих параметров будет **невозможно**! В этом блоке, вы можете скорректировать следующие параметры: - OS - Разрядность - Версию браузера - Количество CPU - Количество памяти - Конфигурацию окна - Глубину цвета - Размеры viewport'а А так же другие параметры браузера .. figure:: images/Profile-General-Advanced-Options.png .. _profiles-time-shifting: Time shifting ~~~~~~~~~~~~~ **Time shifting** - это сразу несколько мощнейших технологий позволяющих управлять тайминговым профилем. - уменьшение разрешения внутренних таймеров chromium - растягивание времени между замерами Не секрет, что практически все крупные сайты при сборе браузерного фингераринта обращают пристальное внимание на замеры времени тех или иных действий или функций. Тайминговый профиль это довольно обширная тема, но вот несколько примеров: - замер времени между нажатиями кнопок на клавиатуре при заполнении формы - замер времени перемещения мыши из точки А в точку Б - замер времени выполнения определенного javascript функционала Выше перечисленные техники сбора тайминговых профилей не единственные, так же существуют и другие более изощренные и навороченные. Но суть сводится к одному - это вычислить, что вбив происходит с одной и той же физической машины или одним и тем же человеком. **Time shifting** позволяет влиять и изменять тайминговые профили во всех их проявлениях. Для включения функционала понижающего разрешение внутренних таймеров chromium следует включить галочку **Timer correction** и установить значение **timer resolution (μs)** в диапазоне от 5 до 5000 микросекунд. - стандартное значение для chromium/chrome - 5 μs - стандартное значение для firefox - 1000 μs Вы можете свободно пробовать задавать любые значения из диапазона 5 - 5000 μs и подобрать то, которое для Вашего сайта будет давать приемлемый результат. Какие конкретно значения устанавливать на конкретном сайте можно вычислить опытным путём и это будет сильно меняться от сайта к сайту, но мы рекомендуем попробовать с 1000 μs. Для включения функционала растягивания времени между замерами выберите одну из доступных стратегий - off - отключено - static - статически заданный % на сколько увеличивать дельту времени между замерами - random - динамический % (из диапазона) на сколько увеличивать дельту времени между замерами Учтите что стратегия **random** меняет значение % увеличения дельты времени между замерами при каждом рефреше страницы. Диапазон допустимых значений 0 - 10000 %. В стратегии **static** Вы так же можете указать интересующий Вас % на который следует растягивать дельту времени при замерах. Диапазон допустимых значений 0 - 10000 %. Данная стратегия устанавливает статическое значение и не меняется при каждом рефреше страницы. ВАЖНО: не задавайте одинаковые значения или очень близкие на всех профилях подряд, т.к. это сведет на нет всю суть технологии. На разных профилях старайтесь задавать разные значения отличающиеся на десятки, а может и сотни процентов. Опять же точные пределы в которых Вы можете работать зависят от сайта, но мы рекомендуем попробовать остановиться максимум на 300-500%. .. tip:: | Данная технология еще находится в стадии доработки и если Вы испытываете проблемы при работе с какими то сайтами с включеным time shifting, то пожалуйста сообщите об этом сапорту. .. include:: yandex-metrika.rst