- Регистрация
- 6 Фев 2016
- Сообщения
- 558
- Реакции
- 549
- Тема Автор Вы автор данного материала? |
- #1
Часть 1.
На сегодняшний день существует масса различных технологий, с помощью которых можно идентифицировать пользователя. Некоторые из них старые, некоторые новые, но наилучшим вариантом идентификации пользователя является комбинированные отпечатки. Комбинированные отпечатки - это методика, при которой логическое выражение применяется для анализа ни одного, а двух и более параметров ПК пользователя, и эти отпечатки могут раскрывать информацию друг о друге.
На данный момент наиболее продвинутой является пара Canvas-WebGl. Многие из вас знают или хотя бы слышали об этих параметрах, но о методике их подмены не известно почти ничего, в то же время именно методика подмены данных отпечатков и скрывает в себе наиболее интересные механизмы идентификации.
Расскажу вам простым языком про Canvas. Современные антидетекты для подмены отпечатков Canvas используют простую технологию подмены цветности пикселей, то есть, когда происходит отрисовка 2D картинки технологии Canvas, выбирается пиксель – 1-й, или 5-й или 125-й – (любой какой посчитает разработчик антидетекта) и в выбранном пикселе меняется цветовое соотношение/гамма/прозрачность. Это может быть не 1, а 2 пикселя, например, или 7-й или 500-й и изменение цветности даже 1 пикселя приведет к изменению хэша отпечатка.
****************************************************************
Что такое хэш?
Хэш – это преобразование массива данных в единую битовую строку.
Например:
Иванов Иван Иванович 1950 Москва ул.Нахимовцев 29, кв. 31 +79260014589
преобразуется в хэш:
ICAgMTk1MCAgLiAyOSwgLiAzMSArNzkyNjAwMTQ1ODk=
*****************************************************************
Соответственно изменение цветности пикселей изображения приводит к изменению хэша отпечатка Canvas – это и является основой изменения отпечатка Canvas. Остаётся вопрос, почему при использовании некоторых антидетектов уникальность отпечатка составляет 100%, например, на сайте browserleaks. Получаеться, что антидетекты вместо маскировки вас, выделяют вас из толпы остальных пользователей.
Расскажу вам простым языком про WebGL. WebGL - это 3D изображение, сначала мы формируем скелет из вершин и линий, а потом мы заполняем пространство между вершинами и линиями 2D изображением. Важно понять, при построении 3D изображения используется 2D изображение. Если упростить, мы придем к тому, что из Canvas'а состоит WebGL.
Для тех кто хочет почитать более глубоко:
Как работает WebGL
WebGL Specification
Как работает подмена WebGL в современных анидетектах.
Самый простой метод подмены – то же самое изменение цветности пиксельных шейдеров. Точно так же как и при подмене Canvas, но в другом месте (иногда встречается подмена координат вершин, но это исключение). Снова меняются цвета и снова новый хэш, результат достигнут и пользователи видят изменение отпечатка, но если бы существовал публичный сервис проверки отпечатка WebGL – он так же показал бы уникальность отпечатка WebGL равную 100%. Но не это самое страшное...
А что будет если сравнить процесс рендеринга этих отпечатков? А при сравнении процесса рендеринга данных отпечатков можно увидеть различия в формировании цвета и соответственно выявить использование системы антидетекта со 100% точностью.
Процесс, когда разные отпечатки производят проверку друг друга и является технологией комбинированного отпечатка браузера.
Приведу пример:
1. Запускаем браузер Chrome
2. В магазине хром устанавливаем средство разработчика DontFingerprintMe:
Don't FingerPrint Me
3. Открываем сайт facebook.com
4. На клавиатуре нажимаем F12
5. В строке инструментов видим кнопки "Элементы, Консоль, Ресурсы, Сеть" и открываем выпадающий список >> в нем выбираем DFPM
6. Обновляем страницу facebook.com
7. Видим запрос отпечатка Canvas
8. Производим логин
9. Видим запрос отпечатка WebGL
На сегодняшний день существует масса различных технологий, с помощью которых можно идентифицировать пользователя. Некоторые из них старые, некоторые новые, но наилучшим вариантом идентификации пользователя является комбинированные отпечатки. Комбинированные отпечатки - это методика, при которой логическое выражение применяется для анализа ни одного, а двух и более параметров ПК пользователя, и эти отпечатки могут раскрывать информацию друг о друге.
На данный момент наиболее продвинутой является пара Canvas-WebGl. Многие из вас знают или хотя бы слышали об этих параметрах, но о методике их подмены не известно почти ничего, в то же время именно методика подмены данных отпечатков и скрывает в себе наиболее интересные механизмы идентификации.
Расскажу вам простым языком про Canvas. Современные антидетекты для подмены отпечатков Canvas используют простую технологию подмены цветности пикселей, то есть, когда происходит отрисовка 2D картинки технологии Canvas, выбирается пиксель – 1-й, или 5-й или 125-й – (любой какой посчитает разработчик антидетекта) и в выбранном пикселе меняется цветовое соотношение/гамма/прозрачность. Это может быть не 1, а 2 пикселя, например, или 7-й или 500-й и изменение цветности даже 1 пикселя приведет к изменению хэша отпечатка.
****************************************************************
Что такое хэш?
Хэш – это преобразование массива данных в единую битовую строку.
Например:
Иванов Иван Иванович 1950 Москва ул.Нахимовцев 29, кв. 31 +79260014589
преобразуется в хэш:
ICAgMTk1MCAgLiAyOSwgLiAzMSArNzkyNjAwMTQ1ODk=
*****************************************************************
Соответственно изменение цветности пикселей изображения приводит к изменению хэша отпечатка Canvas – это и является основой изменения отпечатка Canvas. Остаётся вопрос, почему при использовании некоторых антидетектов уникальность отпечатка составляет 100%, например, на сайте browserleaks. Получаеться, что антидетекты вместо маскировки вас, выделяют вас из толпы остальных пользователей.
Расскажу вам простым языком про WebGL. WebGL - это 3D изображение, сначала мы формируем скелет из вершин и линий, а потом мы заполняем пространство между вершинами и линиями 2D изображением. Важно понять, при построении 3D изображения используется 2D изображение. Если упростить, мы придем к тому, что из Canvas'а состоит WebGL.
Для тех кто хочет почитать более глубоко:
Как работает WebGL
WebGL Specification
Как работает подмена WebGL в современных анидетектах.
Самый простой метод подмены – то же самое изменение цветности пиксельных шейдеров. Точно так же как и при подмене Canvas, но в другом месте (иногда встречается подмена координат вершин, но это исключение). Снова меняются цвета и снова новый хэш, результат достигнут и пользователи видят изменение отпечатка, но если бы существовал публичный сервис проверки отпечатка WebGL – он так же показал бы уникальность отпечатка WebGL равную 100%. Но не это самое страшное...
А что будет если сравнить процесс рендеринга этих отпечатков? А при сравнении процесса рендеринга данных отпечатков можно увидеть различия в формировании цвета и соответственно выявить использование системы антидетекта со 100% точностью.
Процесс, когда разные отпечатки производят проверку друг друга и является технологией комбинированного отпечатка браузера.
Приведу пример:
1. Запускаем браузер Chrome
2. В магазине хром устанавливаем средство разработчика DontFingerprintMe:
Don't FingerPrint Me
3. Открываем сайт facebook.com
4. На клавиатуре нажимаем F12
5. В строке инструментов видим кнопки "Элементы, Консоль, Ресурсы, Сеть" и открываем выпадающий список >> в нем выбираем DFPM
6. Обновляем страницу facebook.com
7. Видим запрос отпечатка Canvas
8. Производим логин
9. Видим запрос отпечатка WebGL