Анонимность в Human Emulator Studio. Управление информацией о браузере
Анонимность в Human Emulator Studio. Управление информацией о браузере
Первая статья из цикла Анонимность в Human Emulator Studio. - Управление информацией о браузере
Re: Анонимность в Human Emulator Studio. Управление информацией о браузере
Про эмуляцию плагинов посмотрите пожалуйста эту тему: viewtopic.php?t=2436
Re: Анонимность в Human Emulator Studio. Управление информацией о браузере
Обновили статью - изменили пример для работы с user-agent
пример создаёт случайным образом идентификатор браузера и задаёт все необходимые параметры в navigator
пример создаёт случайным образом идентификатор браузера и задаёт все необходимые параметры в navigator
// user-agent для chrome // Mozilla/5.0 ([Platform]) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/[ChromeVer] Safari/537.36 // данные для генерации случайной строки user-agent // версии хрома // содержимое файла выглядит следующим образом /* 78.0.3904.83 78.0.3904.84 78.0.3904.85 78.0.3904.86 78.0.3904.87 78.0.3904.88 78.0.3904.9 78.0.3904.90 */ // файл должен лежать в папке со скриптом // скачать его можно в теме на форуме $arr_chrome_versions = file('chrome_versions.txt'); // операционная система // 6.1 Windows 7 // 6.2 Windows 8 // 6.3 Windows 8.1 // 10.0 Windows 10 $arr_winOS = array("6.1","6.2","6.3","10.0"); // платформа $arr_pltf= array("Win32","Win64"); // получаем случайным образом версию из файла $num = mt_rand(1,count($arr_chrome_versions)-1); $version=trim($arr_chrome_versions[$num]); // ось $num = mt_rand(1,count($arr_winOS)-1); $winOS=$arr_winOS[$num]; // платформа $pltf =array_rand($arr_pltf); // битность запускаемых приложений $pltf_app_bit =""; // navigator.cpuClass $cpuClass=""; if($pltf=="Win32") { $pltf_app_bit ="WOW64"; $cpuClass="x86"; } else { $pltf_app_bit ="Win64; x64"; $cpuClass="x64"; } // соберём случайную строку echo $user_agent_srting = "Mozilla/5.0 (Windows NT $winOS; $pltf_app_bit) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/$version Safari/537.36"; // задаём строку в браузер $browser->set_user_agent($user_agent_srting); // Зададим navigaror.platform и navigator.cpuClass $browser->set_platform($pltf,$cpuClass); // необходимо заполнять и доп. свойства навигатора: //appVersion, appName, appCodeName, language(s), platform, product, productsub, vendor, vendorSub // зададим следующие параметы appName appCodeName appVersion product productSub vendor vendorSub // vendor, vendorSub можно задавать с версии 7.0.42 $appMinorVersion = trim(str_replace("Mozilla/","",$user_agent_srting)); $browser->set_app_info("Netscape", "Mozilla", $appMinorVersion, "Gecko", "20030107","Google Inc.",""); // язык $languges = "ru-RU,ru,en-US,en"; $arr_lang=explode(",",$languges); // Задает одинаковыми параметры navigator language, browserLanguage, systemLanguage, userLanguage // первый из списка $browser->set_language($arr_lang[0]); // весь список задаём в accepts $browser->set_accept_language($languges);файл положить в папку со скриптом
-
- Сообщения: 42
- Зарегистрирован: 19 июн 2019, 19:59
Re: Анонимность в Human Emulator Studio. Управление информацией о браузере
Еще можно просто один большой файл набивать реальными юзир-агентами из публичных баз и вставлять рандомную строчку юзир-агента в браузир
Код: Выделить всё
$path_data = 'Z:\user_agents.txt';
$user = file($path_data,FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
$random_user = $user[ array_rand($user) ];
unset($user);
$browser->set_user_agent("$random_user")."<br>";
Re: Анонимность в Human Emulator Studio. Управление информацией о браузере
Хозяин Гугла писал(а): ↑05 ноя 2019, 02:46Еще можно просто один большой файл набивать реальными юзир-агентами из публичных баз и вставлять рандомную строчку юзир-агента в браузир
Код: Выделить всё
$path_data = 'Z:\user_agents.txt'; $user = file($path_data,FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); $random_user = $user[ array_rand($user) ]; unset($user); $browser->set_user_agent("$random_user")."<br>";
можно и так делать, но тогда дополнительные параметры для навигатор надо будет разбирать из юзер агент строки. По сути это Platform и ChromeVer Mozilla/5.0 ([Platform]) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/[ChromeVer] Safari/537.36 и уже данные для платформы типа 10.0; Win64; x64 брать из Platform.
Re: Анонимность в Human Emulator Studio. Управление информацией о браузере
Ещё раз обновили статью на этот раз добавили актуальный пример по работе с функцией set_plugins_info. А также дали разъяснения как посмотреть в Хроме информацию о плагинах.
В яндекс.браузере достаточно просто ввести browser://plugins и появится страница со списком всех установленных плагинов. В Google Chrome к сожалению такого нет, там только через Инструменты Разработчика (F12). Также через Инструменты Разработчика можно посмотреть установленные плагины и в Human Emulator Studio, ну или через специализированные сайты, как например browserleaks.com.
пример на php:
В яндекс.браузере достаточно просто ввести browser://plugins и появится страница со списком всех установленных плагинов. В Google Chrome к сожалению такого нет, там только через Инструменты Разработчика (F12). Также через Инструменты Разработчика можно посмотреть установленные плагины и в Human Emulator Studio, ну или через специализированные сайты, как например browserleaks.com.
пример на php:
// добавим информацию о 3 плагинах /* Chromium PDF Plugin Portable Document Format Имя: Chromium PDF Plugin Описание: Portable Document Format Версия: Расположение: internal-pdf-viewer Тип: PPAPI (вне процесса) Типы MIME: Тип MIME Описание Расширения файлов application/x-google-chrome-pdf Portable Document Format ------------------------------------- Chromium PDF Viewer Имя: Chromium PDF Viewer Версия: Расположение: chrome-extension://mhjfbmdgcfjbbpaeojofohoefgiehjai/ Тип: Модуль браузера Типы MIME: Тип MIME Описание Расширения файлов application/pdf .pdf ------------------------------------- Adobe Flash Player - Версия: 31.0.0.153 Shockwave Flash 31.0 r0 Имя: Shockwave Flash Описание: Shockwave Flash 31.0 r0 System Версия: 31.0.0.153 Расположение: C:\Windows\SysWOW64\Macromed\Flash\pepflashplayer32_31_0_0_153.dll Тип: PPAPI (вне процесса) Типы MIME: Тип MIME Описание Расширения файлов application/x-shockwave-flash Shockwave Flash .swf application/futuresplash FutureSplash Player .spl */ // "1. Зададим navigaror.plugins : "; $plugins="[{ name: 'Chromium PDF Plugin', filename: 'internal-pdf-viewer', description: 'Portable Document Format' }, { name: 'Chromium PDF Viewer', filename: 'mhjfbmdgcfjbbpaeojofohoefgiehjai', description: '' }, { name: 'Adobe Flash Player', filename: 'pepflashplayer32_31_0_0_153.dll', description: 'Shockwave Flash 31.0 r0 System' , version : '31.0.0.153'}]"; $mimes_types="[{type: 'application/x-google-chrome-pdf', suffixes: 'pdf', description: 'Portable Document Format',enabledPlugin: Plugin, __pluginName: 'Chromium PDF Plugin' }, {type: 'application/pdf', suffixes: 'pdf', description: '', enabledPlugin: Plugin, __pluginName: 'Chromium PDF Viewer'}, {type: 'application/x-shockwave-flash',suffixes: 'swf',description: 'Shockwave Flash',__pluginName: 'Adobe Flash Player'}, {type: 'application/futuresplash',suffixes: 'spl',description: 'FutureSplash Player',__pluginName: 'Adobe Flash Player'}]"; // с версии 7.0.41 можно задавать для плагинов типы MIME $browser->set_plugins_info($plugins,$mimes_types); // 2 // "2. Перейдем на страницу для детектирвоания браузера : "; $browser->navigate("https://browserleaks.com/javascript"); $h3->set_focus_by_inner_text("Installed Plug-Ins", false); sleep(5); $btn->click_by_inner_text("iframe.contentWindow", false); sleep(5);