Не все отпечатки подменяются на f.vision



  • Здравствуйте

    Я купил скрипт подмены отпечатков fingerprint switcher
    Через мобильный прокси захожу на f.vision и на скриншоте видно, что сделано 9 попыток - я сохранил отпечатки, и webgl, plugins и client reacts не поменялись
    Что я сделал не так? Скрипт действий шаблона на скриншоте видны. Версия BAS последняя (премиум).
    Отпечатки брал с тегом Desktop
    alt text





  • @romanbiz Спасибо за ответ.
    Да, у того автора и вправду такая же проблема.
    Но у меня на руках только http прокси. Автор говорит проблема решает только на socks.
    Туннелирование у меня по умолчанию так включено. Это ведь здесь только он задается?
    alt text



  • Очень странно. Сделал сейчас себе socks5 прокси, все поменял - ошибки те же остались.
    Где я мог ошибиться? Могу для теста дать прокси кому-нибудь (мобильный socks5).



  • @agility said in Не все отпечатки подменяются на f.vision:

    Через мобильный прокси захожу на f.vision и на скриншоте видно, что сделано 9 попыток - я сохранил отпечатки, и webgl, plugins и client reacts не поменялись

    К сожалению все почти так и есть. Вот мои результаты на desktop chrome 0_1558582583973_fvision.txt
    CLIENT RECTS - не изменяется вообще
    WEBGL - бывает повторяется, но это в принципе нормально.
    PLUGINS - повторяются очень часто, скудненький набор )
    FONTS - повторяются, не очень часто, что тоже допустимо.

    И если нажать дополнительно тестирование, то скажет, что WEBGL и CANVAS - фейковые.



  • @usertrue said in Не все отпечатки подменяются на f.vision:

    И если нажать дополнительно тестирование, то скажет, что WEBGL и CANVAS - фейковые.

    А вот касательно этого -
    Хаял зенку до последнего . Но у неё проблем нет с вебгл и канвасом .!0_1558682468613_Screenshot_30.jpg 0_1558682498930_Screenshot_28.jpg
    и врятли дело в том что у зенки супер эмуляция .
    Уже сколько времени fakecanvas висит .... ответ был что f.vision не может понимать где настоящий а где нет .
    Но как то так случилось что зеннопостер влёгккую проходит .



  • @agility said in Не все отпечатки подменяются на f.vision:

    что сделано 9 попыток - я сохранил отпечатки, и webgl, plugins и client reacts не поменялись
    Что я сделал не так?

    Да, так и есть. plugins - набор плагинов, он в большинстве случаев стандартный. Различия на разных машинах будут минимальны. Обратите также внимание, что список плагинов - это не список расширений.

    Webgl в данном контексте означает набор свойств видеокарты, он тоже может быть одинаковым.

    client rects - это тест связанный с отрисовкой изображения, а потом получением его размеров. В данном случае, туда шум не добвляется, это значение изменяется за счет шрифтов.



  • @usertrue said in Не все отпечатки подменяются на f.vision:

    И если нажать дополнительно тестирование, то скажет, что WEBGL и CANVAS - фейковые.

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

    https://i.imgur.com/BXaAr5y.png

    По вебгл, тоже в некоторых наборах показывается фейк, видимо у них база свойств. Возможно эта база не полная и в ней нет тех устройств, которые есть у нас и это ложное срабатывание. Или там проверяются какие-то дополнительные свойства, которые БАС не заменяет, в любом случае, я проверю это когда будет новый апдейт по отпечаткам.



  • @titus Это с отпечатком скопированным из другого устройства, или просто заход на сайт?



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



  • @support в бас - стандартный отпечаток полученный с базы по тегу - windows chrome \ и так 5из 5 проверок .
    по зенно - 5 из 5 разных профилей - вебгл \ канвас ниразу не отметились



  • @titus said in Не все отпечатки подменяются на f.vision:

    вебгл \ канвас ниразу не отметились

    может потому что они там попросту одинаковые)? Скажем, набор из 20шт валидных,одинаковых...



  • @support . Я прекрасно понимаю что тест не совершеннен - но пока что при тестах на 30 станционархных пк \ ноутах -> ниодин не вызвал вопроса канвас \ вебгл - так же как зенка - один и тот же ответ - Navigator проблемный :)



  • @out said in Не все отпечатки подменяются на f.vision:

    может потому что они там попросту одинаковые)? Скажем, набор из 20шт валидных,одинаковых..

    А может потому что вы сами не понимаете что говорите ?) В отличии от Вас , прежде чем бросаться высказываниями , количество отпечатков было проверено . Есть такая вещь как fingerprintjs ( есть pro есть лайт ) - лайт есть на гитхабе и даже её будет достаточно чтобы проверить отпечатки того же зенно постера , чем я и занимался , прежде чем утверждать что там при тестах использовались разные отп .



  • Navigator действительно на том сайте даже на домашнем браузере иногда подсвечивает красным.



  • @titus said in Не все отпечатки подменяются на f.vision:

    в бас - стандартный отпечаток полученный с базы по тегу - windows chrome \ и так 5из 5 проверок .
    по зенно - 5 из 5 разных профилей - вебгл \ канвас ниразу не отметились

    Я спрашивал о другом, а именно переносятся ли из свойства из реальных устройств в зенно. И если вы уже делаете сравнение, то было бы неплохо привести значения из вкладки webgl из f.vision из разных отпечатков для BAS и из разных профилей для Зенно в достаточном количестве.

    А может потому что вы сами не понимаете что говорите ?)

    Также не вижу здесь причины нападать на @out. Он задал вполне корректный вопрос. Пожалуйста, будьте более дружелюбны с пользователями.

    По теме могу только повторить, что:

    1. В ближайшее время проверю работу с f.vision и скорее всего выпущу патч.
    2. Не стоит зацикливаться только на этом сайте, это хороший сайт, он не является эталоном.
    3. Технология смены отпечатка в BAS постоянно совершенствуется и так будет происходить и дальше.


  • Я спрашивал о другом, а именно переносятся ли из свойства из реальных устройств в зенно. И если вы уже делаете сравнение, то было бы неплохо привести значения из вкладки webgl из f.vision из разных отпечатков для BAS и из разных профилей для Зенно в достаточном количестве.

    4_1558692239296_5.txt 3_1558692239295_4.txt 2_1558692239295_3.txt 1_1558692239295_2.txt 0_1558692239295_1.txt

    Прикладываю 5 случайных выписок с webgl . Все 5 чисты по вебгл и канвасу .

    @support said in Не все отпечатки подменяются на f.vision:

    Также не вижу здесь причины нападать на @out. Он задал вполне корректный вопрос. Пожалуйста, будьте более дружелюбны с пользователями.

    Не в коем случае не нападал )) просто непроверенная дез. информация хуже все :) Из за этого каюсь - вспылил :)

    @support said in Не все отпечатки подменяются на f.vision:

    Не стоит зацикливаться только на этом сайте, это хороший сайт, он не является эталоном.
    Технология смены отпечатка в BAS постоянно совершенствуется и так будет происходить и дальше.

    Про то что сайт эталон - никто не говорит . Просто это открытый источник , на который можно сослаться , который так же совпадает с выводами других более сложных систем анализа отпечатков . Только из за этого в данной ситуации ссылаюсь на него ))

    Так же прошу проверить отпечатки на полное отсутствие weblg и аудио продублирую в данной теме :

    "webgl_properties": {}
    или
    "audio_properties": {
    "BaseAudioContextSampleRate": null,
    "AudioContextBaseLatency": null,
    "AudioContextOutputLatency": null,
    "AudioDestinationNodeMaxChannelCount": null
    если говорить о том что в браузере заблокирована отдача данных параметров . На "живом" трафике опять же повторюсь отсутствия не видел .

    ===

    "navigator.appVersion": "5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36",
    "navigator.platform": "Win32",
    "navigator.product": "Gecko",
    "navigator.userAgent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36",

    вопрос в том как такое получилось "navigator.appVersion": "5.0 (Windows NT 10.0; | "navigator.userAgent": "Mozilla/5.0 (Windows NT 6.1

    После тестов живого трафика после фильтрации на фейк браузеры \ попытки фильтровать ботов - ниодного не было с пустым webgl и отсутствующим звуком - единственное условие было : трафик только win 7-10 .

    @support , так же к Вам вопрос - откуда получает бас информацию о часовом поясе по ip ? т.к стабильно 20-30% ip ( мы говорим о резидентных ip а не о серверных ) не совпадают с естественными часовыми поясами . Проверяя на том же whoyer \ f.vision - если говорим об открытых источниках.



  • @titus said in Не все отпечатки подменяются на f.vision:

    "navigator.appVersion": "5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36",
    "navigator.platform": "Win32",
    "navigator.product": "Gecko",
    "navigator.userAgent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36",

    x64 юсерагент на платформе 32 и с расходжением WIn в app версии и юсер агенте .

    Обычный хром
    0_1558694320674_d52cf967-969e-4cb1-add3-809ee5bc9b6c-image.png



  • @ghostz Извиняюсь , когда в кучу собирал . Вылетело из головы по поводу того что хром не идет x64 в отличии от фф.
    В том отпечатке нестыковка в app и юсер агенте т.к такой отпечаток отдал сервис с разхождением win nt
    откорректировал пост выше . спасибо



  • @titus

    Про то что сайт эталон - никто не говорит . Просто это открытый источник , на который можно сослаться , который так же совпадает с выводами других более сложных систем анализа отпечатков .

    Если так, то нужно ссылаться именно на эти системы, так как методы тестирования могут не совпадать. В одном тесте "webgl" может быть проверкой соответствия видеокарты списку расширений opengl, которая она поддерживает по какой-то внутренней базе, в другой это может быть отрисовка изображения и получения данных с помощью read​Pixels и оба теста могут писать "fake WebGL" по совершенно разным причинам.

    Так же прошу проверить отпечатки на полное отсутствие weblg и аудио продублирую в данной теме :
    если говорить о том что в браузере заблокирована отдача данных параметров .

    Именно так, если железо возвращает такие значения, то именно такие значения будет записано в базу.

    Хорошо, если вы не верите, найдите устройство, которое вернет в результате выполнения данного кода

    function()
    		{
    			var canvas = document.createElement('canvas')
    			var result = {}
    
    			var gl = null
    			try {
    				gl = (
    				  canvas.getContext('webgl') ||
    				  canvas.getContext('experimental-webgl') ||
    				  canvas.getContext('moz-webgl') ||
    				  canvas.getContext('webkit-3d')
    				)
    			} catch (e) {  }
    			if (!gl)
    			{
    				gl = null
    			}
    			try {
    				var extensionDebugRendererInfo = gl.getExtension('WEBGL_debug_renderer_info')
    				result["unmaskedVendor"] = gl.getParameter(extensionDebugRendererInfo.UNMASKED_VENDOR_WEBGL)
    				result["unmaskedRenderer"] = gl.getParameter(extensionDebugRendererInfo.UNMASKED_RENDERER_WEBGL)
    			} catch (e) {  }
    			try {
    				result["vendor"] = gl.getParameter(gl.VENDOR)
    				result["renderer"] = gl.getParameter(gl.RENDERER)
    			} catch (e) {  }
    
    			//try {result["aliasedLineWidthRange"] = gl.getParameter(gl.ALIASED_LINE_WIDTH_RANGE) } catch (e) {  }
    			//try {result["aliasedPointSizeRange"] = gl.getParameter(gl.ALIASED_POINT_SIZE_RANGE) } catch (e) {  }
    			try {result["alphaBits"] = gl.getParameter(gl.ALPHA_BITS).toString() } catch (e) {  }
    			try {result["blueBits"] = gl.getParameter(gl.BLUE_BITS).toString() } catch (e) {  }
    			try {result["depthBits"] = gl.getParameter(gl.DEPTH_BITS).toString() } catch (e) {  }
    			try {result["greenBits"] = gl.getParameter(gl.GREEN_BITS).toString() } catch (e) {  }
    			try {result["maxCombinedTextureImageUnits"] = gl.getParameter(gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS).toString() } catch (e) {  }
    			try {result["maxCubeMapTextureSize"] = gl.getParameter(gl.MAX_CUBE_MAP_TEXTURE_SIZE).toString() } catch (e) {  }
    			try {result["maxFragmentUniformVectors"] = gl.getParameter(gl.MAX_FRAGMENT_UNIFORM_VECTORS).toString() } catch (e) {  }
    			try {result["maxRenderBufferSize"] = gl.getParameter(gl.MAX_RENDERBUFFER_SIZE).toString() } catch (e) {  }
    			try {result["maxTextureImageUnits"] = gl.getParameter(gl.MAX_TEXTURE_IMAGE_UNITS).toString() } catch (e) {  }
    			try {result["maxTextureSize"] = gl.getParameter(gl.MAX_TEXTURE_SIZE).toString() } catch (e) {  }
    			try {result["maxVaryingVectors"] = gl.getParameter(gl.MAX_VARYING_VECTORS).toString() } catch (e) {  }
    			try {result["maxVertexAttribs"] = gl.getParameter(gl.MAX_VERTEX_ATTRIBS).toString() } catch (e) {  }
    			try {result["maxVertexTextureImageUnits"] = gl.getParameter(gl.MAX_VERTEX_TEXTURE_IMAGE_UNITS).toString() } catch (e) {  }
    			try {result["maxVertexUniformVectors"] = gl.getParameter(gl.MAX_VERTEX_UNIFORM_VECTORS).toString() } catch (e) {  }
    			//try {result["maxViewportDims"] = gl.getParameter(gl.MAX_VIEWPORT_DIMS) } catch (e) {  }
    			try {result["redBits"] = gl.getParameter(gl.RED_BITS).toString() } catch (e) {  }
    			try {result["stencilBits"] = gl.getParameter(gl.STENCIL_BITS).toString() } catch (e) {  }
    			try {result["extensions"] = gl.getSupportedExtensions().join(",") } catch (e) {  }
    
    
    			try {
    				result["shadingLanguage"] = gl.getParameter(gl.SHADING_LANGUAGE_VERSION);
    			} catch (e) {  }
    			try {
    				result["version"] = gl.getParameter(gl.VERSION);
    			} catch (e) {  }
    			try {
    				var ext = (
    				  gl.getExtension('EXT_texture_filter_anisotropic') ||
    				  gl.getExtension('MOZ_EXT_texture_filter_anisotropic') ||
    				  gl.getExtension('WEBKIT_EXT_texture_filter_anisotropic')
    				)
    				if (ext){
    				  result["maxAnisotropy"] = gl.getParameter(ext.MAX_TEXTURE_MAX_ANISOTROPY_EXT).toString();
    				}
    			} catch (e) {  }
    			return {key: "webgl", global: true, value: result}
    		}
    

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

    x64 юсерагент на платформе 32 и с расходжением WIn в app версии и юсер агенте .

    Открыл обычный хром.

    alt text

    И тоже расходжение "WIn в app версии и юсер агенте" и тоже Win32, хотя у меня X64 винда.

    так же к Вам вопрос - откуда получает бас информацию о часовом поясе по ip ?

    Из базы данных, которая иде с софтом. Вы можете ее менять. В этой теме описано детальней https://community.bablosoft.com/topic/5745


Log in to reply
 

  • 11
  • 5
  • 7
  • 2
  • 18
  • 2
  • 4
  • 4