Версия 4.10.17

сообщение о выходе новых версий и других изменениях на сайте
Аватара пользователя
sashawww
Сообщения: 54
Зарегистрирован: 15 дек 2009, 03:26

Re: Версия 4.10.6

Сообщение sashawww » 13 мар 2017, 00:20

Все равно и в версии 4.10.6 Canvas Fingerprint изменять ну никак не удается.
По настройкам:
отрисовка картинок через DirectX - галочка убрана
отрисовка картинок через GPU - галочка убрана

Набросал скрипт:

Код: Выделить всё

$browser->set_screen_resolution(mt_rand(640,4024),mt_rand(640,4024), 32);
$browser->set_platform("Win32","x64");

$js_new_naviagtor="
var platformProp = { get: function () { return '%%PLATFORM'; } };
var appName = { get: function () { return '%%APPNAME'; } };
var languageProp = { get: function () { return '%%LANGUAGE'; } };
var languageBrowserProp = { get: function () { return '%%LANGUAGE_BROWSER'; } };
var languageSystemProp = { get: function () { return '%%LANGUAGE_SYSTEM'; } };
var languageUserProp = { get: function () { return '%%LANGUAGE_USER'; } };
Object.defineProperty(window.navigator, 'platform', platformProp);
Object.defineProperty(window.navigator, 'appName', appName);
Object.defineProperty(window.navigator, 'language', languageProp);
Object.defineProperty(window.navigator, 'browserLanguage', languageBrowserProp);
Object.defineProperty(window.navigator, 'systemLanguage', languageSystemProp);
Object.defineProperty(window.navigator, 'userLanguage', languageUserProp);
Object.defineProperty(window.navigator, 'plugins', {get: function() {return [{name:'nakmutce1' , description:'dehttfuyysc1', version: '4.23' },{name:'namfdgfge22' , description:'desc23', version: '2.19' }];}});
window.navigator.javaEnabled=function(){return false;};
";
// поменяем JS под наши нужды
$js_new_naviagtor=str_replace("%%PLATFORM","Win32",$js_new_naviagtor);
$js_new_naviagtor=str_replace("%%APPNAME","Netscape",$js_new_naviagtor);
$js_new_naviagtor=str_replace("%%LANGUAGE_BROWSER","en-US",$js_new_naviagtor);
$js_new_naviagtor=str_replace("%%LANGUAGE_SYSTEM","en-US",$js_new_naviagtor);
$js_new_naviagtor=str_replace("%%LANGUAGE_USER","en-US",$js_new_naviagtor);
$js_new_naviagtor=str_replace("%%LANGUAGE","en-US",$js_new_naviagtor);
echo $browser->set_init_java_script($js_new_naviagtor)."<br>";
// user agent
$browser->set_user_agent("Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; .NET4.0C; .NET4.0E; rv:11.0) like Gecko");


// 2 
echo "2. Посмотрим изменения  : ";
echo $browser->navigate("https://browserleaks.com/canvas")." ";
$browser->wait(1);
Пытаюсь подставлять разные значения в Object.defineProperty(window.navigator, 'plugins' ..., генерю разные разрешения экрана, другие настройки, но канвас всегда один и тотже.
Сделайте уже что-нибудь с ним! Работа стоит(((

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 3047
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Версия 4.10.6

Сообщение bigfozzy » 13 мар 2017, 09:37

Finger Print строится на основании всех данных :

https://whoer.net/blog/article/unikalny ... s-chast-1/
https://habrahabr.ru/company/oleg-bunin/blog/321294/

Также можно запретить его отправку :
http://humanemulator.net/objects/WEB/ra ... se_url.php

Опции отвечающие за DirectX и GPU отрисовку делают Canvas Finger Print не уникальным :
Насчет уникальности всех ваших данных - можно проверить их через :

https://panopticlick.eff.org/results?&a ... printTable

А так - в ближайшее время еще посмотрим как можно что поменять. И обязательно сделаем.

Аватара пользователя
sashawww
Сообщения: 54
Зарегистрирован: 15 дек 2009, 03:26

Re: Версия 4.10.6

Сообщение sashawww » 13 мар 2017, 17:07

Спасибо, думаю это самые востребованные изменения, т.к. даже официально эту технологию уже использует огромное количество высокопосещаемых сайтов и их количество постоянно растёт.
По поводу $raw->add_disabled_response_url("canvas.js") - думаю, крупные сайты, такие как facebook или twitter могут использовать самописный аналог данной библиотеки, который может называться по-другому. Или при запрете отгрузки canvas накладывать ограничения на действия (сайт с которым работаю, пропускает с десяток рег со свежего компа, затем начинает банить, несмотря на анонимные прокси, юзерагенты и т.д.) И настройка $raw->add_disabled_response_url("canvas.js") мне как-то не помогла( :(
Но в любом случае очень необходим способ для генерирования в HE произвольного fingerprint. Пока мне даже с отключенной отрисовкой через DirectX и GPU и манипулированием доступными параметрами добиться смены fingerprint не удалось.

И ещё по поводу метода добавленного в версии 4.10.1 (2017.02.11)
добавлено browser->language задает одинаковыми параметры navigator (language,browserLanguage,systemLanguage,userLanguage) - для эмуляции смены языка (также для улучшения уникальности браузерного Finger Print)
Попытка вызова этой функции

Код: Выделить всё

$browser->language("pt-BR","pt-BR","pt-BR","pt-BR");
вызывает ошибку

Код: Выделить всё

Fatal error: Uncaught Error: Call to undefined method XHEBrowser::language() in E:\...
И, думаю, была бы очень полезна функция генерации произвольных шрифтов системы.
И хотелось бы увидеть рабочий пример кода (с настройками HE, которые при этом были установлены), который меняет Finger Print, который показывает https://browserleaks.com/canvas или другой авторитетный источник.
Вообщем ждем очередных обновлений программы.

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 3047
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Версия 4.10.6

Сообщение bigfozzy » 13 мар 2017, 23:55

После отключения отрисовкой через DirectX и GPU - перегрузите хуман - параметры поменяются.

Код: Выделить всё

<?php

// подключим объект для управления эмулятором, если еще не подключен
if (!isset($path))
  $path="../../../Templates/xweb_human_emulator.php";
require($path);

// начало
echo "<hr><font color=blue>browser->".basename (__FILE__)."</font><hr>";

// 1
echo "1. Перейдем на страницу проверки Finger Print : ";
echo $browser->navigate("https://panopticlick.eff.org/results?&t=111&dnt=111&a=111#fingerprintTable")."<br>";
sleep(5);
$anchor->click_by_name("showFingerprintLink2");

// в зависимости оит состояния
if (count($argv)==1)
{
	// 2 
	echo "2. Отключим аппаратную отрисовку : ";
	echo $browser->enable_directx(false)." ";
	echo $browser->enable_gpu_rendering(false)." ";
	sleep(20);

	// 3
	echo "3. Перезапустим и посморим значения Finger Print без аппаратной отрисовки : ";
	echo $app->restart(__FILE__,"2 2");
}
else
{
	// 2 
	echo "2. Включим аппаратную отрисовку : ";
	echo $browser->enable_directx(true)." ";
	echo $browser->enable_gpu_rendering(true)." ";
	sleep(20);

	// 3
	echo "3. Перезапустим и посморим значения Finger Print без аппаратной отрисовки : ";
	echo $app->restart(__FILE__);
}

// конец
echo "<hr><br>";

// Quit
$app->quit();
?>
Но покопаем еще дальше + просто подменять передачу еще через raw можно

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 3047
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Версия 4.10.6

Сообщение bigfozzy » 14 мар 2017, 00:03

По $browser->language опечатка в логе - функция называется set_language :

есть рабочий пример : "\Test Samples\Web\browser\set_language.php"

Код: Выделить всё

<?php

// подключим объект для управления эмулятором, если еще не подключен
if (!isset($path))
  $path="../../../Templates/xweb_human_emulator.php";
require($path);

// начало
echo "<hr><font color=blue>browser->".basename (__FILE__)."</font><hr>";

// 1 
echo "1. Зададим язык англиский - США : ";
echo $browser->set_language("en-US")."<br>";

// 2 
echo "2. Перейдем на страницу для детектирвоания браузера : ";
echo $browser->navigate("http://www.whoer.net")."<br>";
sleep(2);
$anchor->get_by_attribute("class","btn-more")->focus();
$anchor->get_by_attribute("class","btn-more")->send_mouse_click();
sleep(5);
$span->get_by_outer_html("<span>browserLanguage</span>",false)->ensure_visible();
sleep(5);

// 3
echo "3. Зададим язык русский - Россия : ";
echo $browser->set_language("ru-Ru")."<br>";


// 4 
echo "4. Перейдем на страницу для детектирвоания браузера : ";
echo $browser->navigate("http://www.whoer.net")."<br>";
sleep(2);
$anchor->get_by_attribute("class","btn-more")->focus();
$anchor->get_by_attribute("class","btn-more")->send_mouse_click();
sleep(5);
$span->get_by_outer_html("<span>browserLanguage</span>",false)->ensure_visible();

// конец
echo "<hr><br>";

// Quit
$app->quit();
?>
полезна функция генерации произвольных шрифтов системы.
Добавим

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 3047
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Версия 4.10.6

Сообщение bigfozzy » 14 мар 2017, 00:05

Сейчас заканчиваю с функциями распознания mp3 в текст, и дальше к fingerprint - думаю к пятнице управлюсь.

Аватара пользователя
sashawww
Сообщения: 54
Зарегистрирован: 15 дек 2009, 03:26

Re: Версия 4.10.6

Сообщение sashawww » 14 мар 2017, 14:54

И ещё была бы полезна функция смены Time Zone (часового пояса)
И ещё вижу на https://panopticlick.eff.org/results?&a ... printTable :
Touch Support Max touchpoints: 0; TouchEvent supported: false; onTouchStart supported: false
тоже было бы не лишним сделать смену. И вообще смену всех параметров, какие только возможны.

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

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 3047
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Версия 4.10.6

Сообщение bigfozzy » 14 мар 2017, 17:03

Спасибо, сделаем

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 3047
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Версия 4.10.6

Сообщение bigfozzy » 16 мар 2017, 19:52

4.10.7 Полезное небольшое обновление:
  • - добавлен мктоды в объект sound
    • - convert_file - для конвертации звукового файла в заданный формат
      - recognize_file_with_digits - распознать звукоыой файл состоящих из англиских цифр - можно использовать для тестирования Rucaptcha V2
      - recognize_file - распознать произвольный звуковой файл (используя механизм CMU Sphynx) - можно использовать для тестирования звуковых капч
    - добавлена функция browser->set_time_zone - изменяет функцию JS : Date.prototype.getTimezoneOffset
    - добавлена функция browser->enable_fonts
    - запрещен показ диалога Загрузка Завершена
    - улучшение работы browser->wait_for
    - в app->restart добавлен параметр pause_before_start_s - указывающий паузу в секундах необходимую для закрытия программы (по умолчанию 0 - но на медленных машинах можно поставить и больше)
    - баг фикс app->retart - передачи новых папкок куков и кэша, содержащих пробелы
    - более устойчивая работа приложения с парметрами командной строки
    - добавлен объект $anticaptcha2 предоставляющий досатуп к API Antigate V2
    - добавлен метод rucaptcha->recognize_audio_captcha - для распознания текста из mp3 аудио файлов
    - обновлен хелп по всем ранее добавленным функциям

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 3047
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Версия 4.10.7

Сообщение bigfozzy » 24 мар 2017, 15:23

4.10.8 (Обновление)
  • - добавлены x64 версии
    - улучшение работы browser->recreate и debug->optimize_memory + переработка прммеров демонстрирующих их правильное использование
    - баг фикс найденных утечек памяти (в режиме создания скрипта)
    - диалоги подверждения ухода с текущей страницы и поджобные ему диалоги - теперь также отключаются опцией "Отключить сообщения браузера"
    - улучшение работы с куками
    - улучшена смена папок куков на Win 8 и Win 10 при рестартер
    - улушена работа windows : get_windows_title , get_windows_version и get_windows_build (для Windows 10)
    - небольшое улучшение производительности при старте
    - при передаче в app->restart парметров "default" для папок куков и кэша - они будут установлены в значение по умолчанию (как были в системе)
    - добавлен пункт меню - задающий папки кэша и куков в значение по умолчаню и закрывающий хуман (после этого все папки кэша и куков внутри хуман амогут быть удалены)
    - добавлен объект $onlinesim - для организации приема смс через сервис onlinesim.ru (http://onlinesim.ru/docs/api/ru#priem-sms0)

Аватара пользователя
sashawww
Сообщения: 54
Зарегистрирован: 15 дек 2009, 03:26

Re: Версия 4.10.7

Сообщение sashawww » 24 мар 2017, 16:17

Кстати, а по поводу функций:
https://panopticlick.eff.org/results?&a ... printTable :
Touch Support Max touchpoints: 0; TouchEvent supported: false; onTouchStart supported: false
и

Смена шрифтов системы - вижу функцию browser->enable_fonts (включение/отключение шрифтов). А более расширенный вариант этой функции планируется?
При запуске функции без параметров устанавливается случайный набор шрифтов. Если первым параметром функции передан массив - устанавливается переданный массив шрифтов.
Планируются эти функции в ближайших обновлениях?

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 3047
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Версия 4.10.7

Сообщение bigfozzy » 24 мар 2017, 19:25

Постараемся, по шрифтам пока добавили - enable_fonts - Отключает шрифты в движке JS, Дальше обратим внимание на остальное.
Если что надо еще - пишите.

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 3047
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Версия 4.10.8

Сообщение bigfozzy » 25 мар 2017, 16:59

Добавлено, будет доступно в 4.10.9 :

browser->set_canvas_toDataURL - для смены canvas и webgl fingerprint и
browser->set_touch_info - для смен ыинфы об экранном сенсоре

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 3047
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Версия 4.10.8

Сообщение bigfozzy » 02 апр 2017, 17:21

Обновление 4.10.9:
  • - добавлена функция browser->set_canvas_toDataURL для изменения Canvas и WebGL finger print
    - Добавлена функция browser->set_touch_info - для изменения информации об экранном сенсоре
    - а пенель статуса добавлены вирутальные координаты мыши
    - в диалоге редактирвоания шаблонов добавлена возможность экспорта и импорта
    - улучшен процесс инсталяции и деинсталции
    - улучшена работа по распознованию текстово-цифровой капчи через Tesseract-OCR
    - в панели расписания скриптов добавлена возможность экпорта и импорта всех скриптов
    - настройки проксичекера при старте программы сделаны глобальынми (хранятся в реестре)
    - улучшение работы connection->ger_real_ip
    - в команду browser->send_get_query добавлены парметры type,set_as_page,add_header по аналогии с send_post_query
    - команды мыши теперь корректно выполняются при любых масштабах браузера (происходит автоматический пересчет координат)

Аватара пользователя
bigfozzy
Site Admin
Сообщения: 3047
Зарегистрирован: 28 июл 2008, 17:24
Контактная информация:

Re: Версия 4.10.9

Сообщение bigfozzy » 05 апр 2017, 17:21

+ перезалили версию 4.10.9:
  • - баг фикс windowinterface->close
    - баг фикс app->get_program_path
    - ускорение работы webpage->load_web_page + добавлен параметр size - позволяющий загружать только часть страницы

Ответить