← Назад до блогу

Що таке Canvas-відбиток: як сайти розпізнають пристрій через малювання

Головне: Canvas-відбиток виникає з реальної дії малювання, а результат визначають відеокарта, система, шрифти та рушій браузера; за одним параметром особу не встановити, проте під час перехресної перевірки параметрів він викриває справжню основу середовища. В керуванні тримайтеся двох правил: показники одного середовища мають бути стабільними, а різні середовища мають помітно відрізнятися. Далі розберемо принцип, чинники впливу, межі розпізнавання, перевірку та два режими налаштування в MostMate.

Відкриваєте той самий сайт на двох пристроях, сторінка малює ту саму картинку, а пікселі не збігаються. Це не збій сторінки: кожен пристрій залишає свій слід на етапі малювання. Сайт збирає цей слід і перетворює його на значення, так і з'являється Canvas-відбиток, один із найрозбірливіших параметрів у відбитку браузера. MostMate це антидетект-браузер, і Canvas належить до базових параметрів у його налаштуваннях відбитка; у статті розглянуто весь шлях параметра від генерації до налаштування.

Як сайт малює «підпис» пристрою через Canvas

Canvas-відбиток виникає з реальної дії малювання: сайт просить браузер намалювати заданий фрагмент, зчитує результат і перетворює його на характерне значення. Малюють через Canvas-інтерфейс браузера, ту саму можливість 2D-полотна, на якій тримаються браузерні ігри, графіки та редактори зображень; подробиці інтерфейсу описано в документації Canvas API на MDN. Для користувача все минає непомітно. Покроково це виглядає так:

  1. Малювання: скрипт сторінки виводить на полотно фіксований фрагмент, здебільшого кілька рядків тексту з геометричними фігурами та градієнтами.
  2. Зчитування: скрипт через інтерфейси на кшталт toDataURL() або getImageData() експортує полотно в рядок чи масив пікселів.
  3. Зіставлення: експортований результат перетворюється на хеш і звіряється з минулими записами цього середовища або з очікуваннями за іншими сигналами.
Схема трьох кроків формування Canvas-відбитка

Чому два пристрої не малюють однакову картинку

За результат відповідає весь ланцюг рендерингу, і будь-яка ланка змінює пікселі. Один і той самий набір команд отримують два пристрої: система спершу вирішує, якими шрифтами й як згладжувати краї тексту, рушій браузера виконує малювання, а на виході працюють відеокарта та драйвер. У кожної ланки своя ділянка:

  • GPU та драйвер. Ті самі команди на різних відеокартах і версіях драйверів дають ледь помітно інші пікселі, і це головне джерело розбіжностей.
  • Операційна система та відтворення тексту. Windows, macOS і Linux по-різному рендерять текст і згладжують краї, тож сам рядок тексту виходить із різною гладкістю країв.
  • Шрифтове середовище. Текст на полотні малюється локальними шрифтами, тож у результат потрапляє весь установлений набір і його версії; логіку перевірки списку шрифтів розібрано в статті як перевіряють шрифтовий відбиток, джерело в обох тестів спільне.
  • Рушій і версія браузера. Chromium, Firefox і WebKit малюють по-своєму, а великі оновлення версій приносять зміни в деталях.
Різниця хешів однієї команди малювання на різних пристроях

Разом чотири ланки визначають розбірливість Canvas: кожна розбіжність окремо мікроскопічна, але після стискання в хеш імовірність розбіжності в різних пристроїв доволі висока. За маленькою картинкою стоїть одразу весь ланцюг рендерингу пристрою.

Наскільки точно Canvas-відбиток розпізнає пристрій

Canvas-відбиток належить до ознак пристрою з високою розбірливістю, але сам по собі особу не встановлює. Спершу окреслимо три межі.

Перша: однаковий хеш не доводить, що пристрій той самий: два пристрої з однаковими ланцюгами рендерингу можуть отримати те саме значення, а масові конфігурації на ринку й без того повторюються суцільно.

Друга: сайти не ухвалюють рішення лише за Canvas: показники звіряють у перехресній перевірці разом з UA, екраном, шрифтами та мовою, і в цьому наборі Canvas працює як доказ, який словами не заявити й який можна зняти тільки на місці.

Третя: Canvas і Cookie працюють за різними механізмами: Cookie зберігається локально, його можна видалити чи відхилити, а Canvas рахується просто під час заходу, і чистка Cookie на нього не впливає.

Три межі складаються в один висновок: Canvas не вирішує долю акаунта, але якщо в цілої партії середовищ хеші збігаються повністю, на перехресній перевірці вони видають себе самі.

Три кроки, щоб побачити Canvas-відбиток свого середовища

Для перевірки Canvas нічого встановлювати не потрібно: вистачить однієї сторінки перевірки та двох повторних замірів. Дійте в такому порядку:

  1. Запишіть поточні показники. Відкрийте в середовищі сторінку перевірки Canvas на BrowserLeaks: вона покаже хеш і прев'ю картинки для поточного середовища. Зафіксуйте обидва значення.
  2. Повторіть замір у тому самому середовищі. Закрийте сторінку та відкрийте знову або повторіть тест за день-другий: хеш одного середовища має лишитися колишнім. Якщо два заміри розходяться, у показники втручається додаткова обробка.
  3. Порівняйте середовища між собою. Запустіть той самий тест у другому середовищі: хеші мають помітно розходитися. Що більший розрив, то зрозуміліше розділення між середовищами.

У показниках дивіться на стабільність і на відмінності, а не на конкретне число. Хеші різних перевіркових сторінок можуть не збігатися: у кожної свої фігури, свій спосіб експорту та власний алгоритм хешування. Порівнювати між сайтами немає сенсу, корисне лише порівняння до і після в межах одного інструменту.

Сторінка перевірки Canvas на BrowserLeaks

Як вибрати один із двох режимів Canvas у MostMate

У налаштуваннях відбитка MostMate у Canvas два режими: Real і Noise, типовим стоїть Real. Огляд продукту є в статті що таке MostMate; у списку ручних налаштувань відбитка на офіційному сайті Canvas стоїть поруч з аудіо, WebGL та іншими параметрами, усе налаштовується в одній області під час створення середовища. Спершу порівняння двох режимів:

АспектRealNoise
Джерело показниківЖивий рендеринг на хост-машиніШум поверх реального результату малювання
Поведінка на перевірціВідтворює справжній ланцюг рендерингу хостаВідривається від хоста, своє значення
Доречні сценаріїПерсона збігається з регіоном хост-системиПартії середовищ, яким потрібен розрив
На що звернути увагуНа одній машині показники збігаютьсяАмплітуду шуму тримайте в розумних межах

Режим Real пасує там, де в хост-машини чиста база: англійська Windows на вашому комп'ютері та середовище під США складаються вдало, показники збігаються з ручним відкриттям браузера, і слідів складання не лишається. Обмеження так само очевидне: якщо всі середовища однієї машини сидять на Real, Canvas-показники в усіх однакові, і різниці між середовищами немає.

Режим Noise затикає саме цю прогалину: він додає шум до Canvas-показників середовища, відриває результат від справжнього рендерингу хоста й розводить середовища з партії по різних значеннях. Умова одна: шум під контролем. Навіть із шумом показники мусять лишатися в нормальному діапазоні справжнього пристрою, інакше сама ця «різниця» стає помітною аномалією. Показники, що змінюються між двома замірами одного середовища, теж належать до ознак аномалії; ризики ґрунтовно розібрано в статті чому рандомізація відбитка небезпечна.

Canvas варто звіряти разом із параметрами тієї ж групи. Малювання на полотні не обходиться без операційної системи, шрифтів і відеокарти, і ці параметри мають вказувати на один профіль пристрою: якщо обрано профіль macOS, аудіо, WebGL-зображення та решту параметрів групи перевіряють за розумними діапазонами macOS; погляд лише на Canvas легко пропускає розсинхрон усередині групи. Логіку режимів аудіо розібрано в статті як налаштувати AudioContext-відбиток, підхід переноситься безпосередньо.

Після налаштування проведіть раунд перевірки: підтвердіть режим Canvas у налаштуваннях відбитка, і в панелі попереднього перегляду праворуч поле Canvas покаже код на кшталт Noise[3LR450]. Цей код позначає конфігурацію шуму даного середовища, у кожного середовища він свій, і до хеша зі сторінки перевірки стосунку не має, тож не звіряйте код із хешем. Справжні показники дивляться, відкривши середовище та зайдши на сторінку перевірки, і звіряють з очікуваннями; після кожної зміни проксі чи правки налаштувань відбитка повторюйте тест до введення середовища в роботу.

Область налаштувань відбитка у формі створення середовища MostMate

Часті запитання

Canvas-відбиток і браузерний відбиток: це одне й те саме?

Ні. Браузерний відбиток складається з десятків параметрів, а Canvas лише один із них, ознака малювання в одному ряду з WebGL і списком шрифтів. Ціле складається з усіх пунктів: висока розбірливість Canvas сама по собі не робить увесь відбиток рідкісним.

Чи допомагає вимкнення Canvas уникнути розпізнавання?

Не радимо. Від Canvas залежить чимало функцій сторінок, і його вимкнення заважає нормальній роботі; до того ж Canvas підтримують практично всі звичайні браузери, тож «не підтримується» само по собі рідкісна ознака, яку легше вичепити. Розумний шлях: контроль джерела та стабільності показників, а не вимкнення інтерфейсу.

Чи змінюється Canvas-відбиток після оновлень браузера?

Так, але ритм зовсім інший, ніж у рандомізації. Зміни малювання у великих оновленнях приходять до всіх користувачів одночасно, і платформи знають цей ритм. Для справжнього середовища змінити Canvas-значення кілька разів за рік нормально, аномалією виглядає часта та безсистемна зміна.

Чи може антидетект-браузер зробити Canvas різним у кожному середовищі?

Так, і режим Noise створений саме для цього: він додає шум до Canvas-показників і розводить показники середовищ із партії. Умова: амплітуда шуму в розумних межах, а показники лишаються в нормальному діапазоні відповідної системи.

Підсумок

По суті, Canvas-відбиток показує, як увесь ланцюг рендерингу пристрою виходить на одному полотні: параметр, який сам не встановлює особу, але найважче заявити його словами і перевіряється він лише на місці. В керуванні тримайте два орієнтири: показники одного середовища витримують повторний замір, хеші різних середовищ розходяться, а параметри однієї групи вказують на один профіль пристрою. Щоб зібрати середовище з нуля, завантажте MostMate, створіть середовище та перевірте Canvas-показники кожного з них до введення в роботу.

MOSTMATE

Безпечне керування кількома обліковими записами — це просто

Почніть із першого облікового запису й побудуйте з MostMate безпечнішу, розумнішу та ефективнішу роботу з кількома обліковими записами.

  • Незалежні профілі. Узгоджені ідентичності.
  • ШІ-автоматизація · Стан облікових записів · Командні операції
Завантажити MostMate