Функционал Human Emulator для работы с уникальными отпечатками браузера (fingerprints).

Что такое fingerprints?

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

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

До сих пор это делается с помощью Cookies(куков). Именно куки отвечают за отслеживание действий пользователя на сайте, авторизацию и т.д. Но данная технология слежки сильно устарела и не смотря на то, что были добавлены различные хитрые куки, такие как Flash cookies или Silverlight Cookies(Isolated Storage) пользователи легко могут их отключать или чистить, так куки видны не только владельцам ресурсов, но и самим пользователям. Поэтому начали появляться новые технологии идентификации пользователей, так называемые fingerprints или уникальные отпечатки браузера.

Данная технология получает несколько типов данных: установленные шрифты системы, языковые настройки, разрешение экрана, часовой пояс, какие плагины установлены, версии установленных программ и т.д. – создается целостная картина браузера, которая напоминает отпечатки пальцев, отсюда и название fingerprints. По этим отпечаткам браузера, даже при удаленных cookies, сайт все равно вас опознает. При этом у отпечатков браузера есть некий порог чувствительности, он не меняется при использовании другой версии браузера или удалении каких-то плагинов. В итоге, может возникнуть такая ситуация, когда пользователь, который пытается быть анонимным, использует какие-то уникальные плагины и инструменты, а это его делает более узнаваемым, чем тех пользователей, которые используют стандартные настройки и инструменты браузера. Ну а простая смена IP давно уже не делает вас анонимным посетителем.

Функционал Human Emulator для работы с уникальными отпечатками браузера (fingerprints).

Human Emulator может запретить работу с уникальными отпечатками браузера либо подменять значения, которые влияют на fingerprints.

Подмена значений.

Параметры платформы. Задает параметры navigator : platform и cpuClass.


browser->set_platform

пример:

$browser->set_platform("Win64","Other");
 
$browser->set_platform("Win32","x86");


Разрешения экрана, не меняя их фактически. Задает параметры navigator : width, height, pixelDepth и их дубликаты availWidth, availHeight, colorDepth.


browser->set_screen_resolution

пример:

$browser->set_screen_resolution(1024,768,24);
 
$browser->set_screen_resolution(2560,1440,24);


Языковые настройки. Задает одинаковые параметры navigator : language, browserLanguage, systemLanguage, userLanguage.


browser->set_language

пример:

$browser->set_language("en-US");
 
$browser->set_language("ru-Ru");


Информация о браузере. Задает параметры navigator : appName, appCodeName, appMinorVersion, product, productSub.


browser->set_app_info

пример:

$browser->set_app_info("Microsoft Internet Explorer","Mozilla1","1","Gecko1","20030107");


Данные о установленных плагинах. Задает параметр navigator : plugins.


browser->set_plugins_info

пример:

$browser->set_plugins_info("[
 
{name:'Shockwave Flash', description : 'Shockwave Flash 24.0 r0', filename : 'Flash.ocx', version : '24.0.0.194' },  
 
{ name:'name2', description : 'desc2', filename : 'filename2' }
 
]");


Подмена реферер. Страница с которой пришёл пользователь на сайт называется "реферером" и содержит: Адрес ссылающейся страницы. Задает параметры navigator : referer.


browser->set_referrer

пример:

$browser->set_referer("https://ya.ru");


С версии 4.10.9

Canvas и WebGL finger print. Canvas fingerprint или PNG Cookies. Представлен в виде уникального ID-кода (например — 779821af79954514621f1237718ea9e7)


browser->set_canvas_toDataURL

пример:

случайное значение - $browser->set_canvas_toDataURL("data : "$submitter->generate_random_text(10,1));
 
значение по умолчанию - $browser->set_canvas_toDataURL();


Информации об экранном сенсоре.


browser->set_touch_info

пример:

$browser->set_touch_info(5,"true");
 
значение по умолчанию - $browser->set_touch_info();


Блокировка считывания некоторых параметров.

Системные шрифты. Запретить или разрешить определение шрифтов системы.


browser->enable_fonts

пример:

разрешить - $browser->enable_fonts(true);
 
запретить - $browser->enable_fonts(false);


Прорисовка картинок через DirectX. Требует рестрата программы для применения.


browser->enable_directx

пример:

$browser->enable_directx(true);
 
$browser->enable_directx(false);


Прорисовка страницы используя GPU. Требует рестрата программы для применения.


browser->enable_gpu_rendering

пример:

$browser->enable_gpu_rendering(true);
 
$browser->enable_gpu_rendering(false);


Блокировка передачи информации на сайт и с сайта.

Добавить урл в спиcок урлов, с которых запрещено получение информации.


$raw->add_disabled_request_url

пример:

$raw->add_disabled_request_url("png");
 
$raw->add_disabled_request_url("awaps.yandex.net");


Очистить массив с урлами, с которых запрещено получение информации браузером.


raw->clear_disabled_request_urls_array

пример:

$raw->clear_disabled_request_urls_array();


Добавить урл в спиcок урлов, на которые запрещена отправка информации.


raw->add_disabled_response_url

пример:

$raw->add_disabled_response_url("canvas.js");


Очистить массив с урлами, на которые запрещена отправка информации из браузера.


raw->clear_disabled_response_urls_array

пример:

$raw->clear_disabled_response_urls_array();




Подробная статья на эту тему

Все руководства