Как обойти идентификацию через Canvas Fingerprinting?

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

Re: Как обойти идентификацию через Canvas Fingerprinting?

Сообщение bigfozzy » 12 май 2017, 00:45

huligun писал(а):Добавил в первый пост, но ма ло ли не заметите, так продублирую
$browser->set_plugins_info("[
{name:'Shockwave Flash', description : 'Shockwave Flash 24.0 r0', filename : 'NPSWF32_25_0_0_171.dll', version : 'WIN 25.0.0.171' },
{ name:'Silverlight', description : 'Silverlight 5.1.41212.0', filename : 'SilverLight.ocx' }
]");
http://www.pinlady.net/PluginDetect/All/
Как показывало все плагины так и показывает даже версии не меняет.
Функция задает только переменную navigator.plugins, сами плагины она не меняет :
http://humanemulator.net/objects/WEB/br ... s_info.php

Посмотрим по страницам каким образом там получается информация и добавим.
Скорее всего через другие JS (не navigator.plugins)

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

Re: Как обойти идентификацию через Canvas Fingerprinting?

Сообщение bigfozzy » 12 май 2017, 00:48

Можно и javascript запретить, ))) задача же эмулировать среднестатистического УНИКАЛЬНОГО юзера у которого все эти функции открыты.
ну как сказать - есть множество решений типа Ad-Blocka и других плагинов которые блочат эту информацию и стоит это у многих людей.
Если имеется ввиду голый браузер - то да. Посмотрим что можно сделать еще в этом направлении.

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

Re: Как обойти идентификацию через Canvas Fingerprinting?

Сообщение bigfozzy » 12 май 2017, 00:57

Кстати плагины от отслеживания можно найти здесь :
https://www.microsoft.com/ru-ru/iegallery

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

Re: Как обойти идентификацию через Canvas Fingerprinting?

Сообщение bigfozzy » 12 май 2017, 00:59

По всему этому я так понял - нужно решение - чтобы менять параметры на всех предjоставленых выше сайтах ?

Пока есть set_init_java_script и вы сами можете заменить всю информацию передаваемую через JS.
Или заблокировать ее передачу через raw.

Аватара пользователя
huligun
Сообщения: 92
Зарегистрирован: 01 окт 2010, 19:13

Re: Как обойти идентификацию через Canvas Fingerprinting?

Сообщение huligun » 12 май 2017, 09:05

Все верно, с $browser->enable_activex(false); плеер не работает, и это очень хорошо, что можно отключить его работу.
Но для финжерпринта нужно исключить check самого наличия т.к. по умолчанию он активен только в IE

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

Re: Как обойти идентификацию через Canvas Fingerprinting?

Сообщение bigfozzy » 12 май 2017, 11:17

huligun писал(а):Все верно, с $browser->enable_activex(false); плеер не работает, и это очень хорошо, что можно отключить его работу.
Но для финжерпринта нужно исключить check самого наличия т.к. по умолчанию он активен только в IE
Все пункты сделаем. Большое спасибо за дельные замечания и ссылки.

Аватара пользователя
huligun
Сообщения: 92
Зарегистрирован: 01 окт 2010, 19:13

Re: Как обойти идентификацию через Canvas Fingerprinting?

Сообщение huligun » 12 май 2017, 16:46

По фукции set_init_java_script
Пример, тот что на сайте не работает, тот что вшин в хуман работает:
function setAppCodeName(window, appCodeName) {if (window.navigator.appCodeName != appCodeName) {
var appCodeNameProp = { get: function () { return appCodeName; } };
try {
Object.defineProperty(window.navigator, 'appCodeName', appCodeNameProp);
} catch (e) {
window.navigator = Object.create(navigator, {
appCodeName: appCodeNameProp
});
}
}
}
setAppCodeName(window, 'Labuda');

Это понятно, обращение к объекту window.navigator.appCodeName
А дайте пример отключения flash player на http://www.pinlady.net/PluginDetect/All/
По аналоги уже можно будет делать для всех плагинов.

Аватара пользователя
huligun
Сообщения: 92
Зарегистрирован: 01 окт 2010, 19:13

Re: Как обойти идентификацию через Canvas Fingerprinting?

Сообщение huligun » 15 май 2017, 21:17

Так что с примерчиком ?
Выложите пожалуйста, думаю многим будет интересно.
Я вот убил разбираясь 2 дня своего времени.
Там проверяются как navigator.plugins так и navigator.mimeTypes
И я не знаю как подделать ссылку navigator.mimeTypes.enabledPlugin

Т.е. затереть массив не проблема а вот перезаписать, я так и не разобрался.
А потом идет проверка через активх и включем он или нет похер, дерет плагины и версии очень даже хорошо через его.

Т.е. без дополнительных проверок когда идет просто
if (navigator.mimeTypes && navigator.mimeTypes.length > 0) {
var mimes = navigator.mimeTypes;
for (var i=0; i < mimes.length; i++) {
все прекрасно подменяется, но в плагин детекте есть еще дополнительные проверки, вот они то и режут всю подмену.
пример на флэш плагина
ставлю такой массив

var mimes = [
{ type: 'application/X-director', description: 'Shockwave', enabledPlugin: Plugin, suffixes: 'dir' },
{ type: 'application/x-shockwave-flash', description: 'Shockwave Flash', enabledPlugin: 'Shockwave Flash', suffixes: 'swf' }
];

[ Search for navigator.mimeTypes["application/x-shockwave-flash"] ]
[ MimeType not found in 0 millisec ]

PartyZan
Сообщения: 6
Зарегистрирован: 12 дек 2017, 14:50

Re: Как обойти идентификацию через Canvas Fingerprinting?

Сообщение PartyZan » 15 дек 2017, 14:27

Здравствуйте уважаемые форумчане и администрация!

Вижу тема расширилась за области Canvas'a и затрагивает Fingerprinting в целом, поэтому пожалуй отпишусь здесь.

Пробовал порыться в интернете по поводу Fonts Fingerprinting и почти ничего не нашел. Все что удалось найти - http://www.lalit.org/lab/javascript-css-font-detect/

Как же защититься от этого? В set_init_java_script запускать скрипт ищущий и/или подменяющий "obj.style.fontFamily = font" или "$(this).css('font-family')" на что либо нам угодное? Рандомную функцию какую-либо?..

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

Или есть более адекватный способ, как вы считаете?

mrfirst
Сообщения: 14
Зарегистрирован: 20 мар 2017, 14:31

Re: Как обойти идентификацию через Canvas Fingerprinting?

Сообщение mrfirst » 28 дек 2017, 00:18

Напишите, пожалуйста, комплексное решение защиты от фингерпринта :!:
В топике много скриптов и тестов, но так и нету какого-то решения по рандомизации фингерпринта :(

Аватара пользователя
Support
Site Admin
Сообщения: 1000
Зарегистрирован: 10 апр 2009, 17:45
Контактная информация:

Re: Как обойти идентификацию через Canvas Fingerprinting?

Сообщение Support » 06 май 2020, 21:18

Все мануалы по анонимности в программе можно прочитать в нашем блоге

Ответить