1. Что такое отпечаток шрифтов

Отпечаток шрифтов — это техника перечисления и идентификации списка шрифтов, доступных в системе пользователя, с помощью следующих методов:

  • API document.fonts
  • Согласованность рендеринга размера/ширины шрифта (измерение времени или пикселей)
  • Проверка шрифтов через Flash или CSS
  • Определение поддержки шрифтов с использованием Canvas и измерение различий в отображении текста

Хотя этот метод не привязан к конкретному API (в отличие от WebGL или Battery), доступность шрифтов может сильно различаться на разных устройствах, что делает их слабым индикатором уникальности пользователя.

Он часто используется в сочетании с другими отпечатками (Canvas, User-Agent, ОС, язык) для повышения точности сопоставления браузеров, особенно в:

  • Системах KYC и идентификации
  • Обнаружении мультиаккаунтинга
  • Выявлении сговора веб-сессий

2. Как платформы определяют доступность шрифтов

Антифрод- и ad-tech-системы часто используют один или несколько из следующих методов:

  • document.fonts.keys() и check(): Определяет, поддерживается ли шрифт и готов ли к использованию в браузере.
  • Рендеринг шрифтов в Canvas: Рисование текста с определенными шрифтами и измерение результата позволяет косвенно идентифицировать шрифты.
  • Обнаружение внедрения системных шрифтов: Некоторые эвристики выявляют, были ли шрифты добавлены инструментами вроде Puppeteer, по названиям или доступности семейств.
  • Подгрузка и время загрузки шрифтов: Время, когда шрифт становится “доступным” или “недоступным”, может использоваться для выявления следов автоматизации браузера.
  • Проверка CSS @font-face: Системы могут загружать известные веб-шрифты и анализировать, как браузер обрабатывает их отображение или время загрузки, чтобы определить внутренние настройки.

Веб-сайты могут создавать производный профиль на основе шрифтов для усиления уникальности устройства, обнаруживая аномалии, такие как:

  • “Слишком много системных шрифтов” или “Отсутствие шрифтов”
  • Шрифты, не соответствующие местоположению или заявленной ОС
  • Необычные или заблокированные шрифты (например, вспомогательные шрифты, используемые в спуфинге)

3. Как FlashID обеспечивает безопасность и согласованность отпечатков шрифтов

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

Вот как FlashID маскирует или имитирует шрифты:

  1. Изоляция списка шрифтов: Каждый профиль браузера имеет собственный список шрифтов, независимый от основной системы. Скрытые системные шрифты могут имитироваться для отражения любого региона или ОС.
  2. Алгоритм подмены текста в Canvas: FlashID точно изменяет ширину текста и значения fallback глифов при рендеринге Canvas, чтобы имитировать определенные списки шрифтов — даже в headless- или защищенных профилях.
  3. Контроль document.fonts:
  • Симулированные сигнатуры FontFaceSet
  • Управление возвращаемыми значениями check()
  • Имитация времени загрузки / задержек шрифтов
  1. Обфускация названий шрифтов: FlashID может переименовывать системные шрифты (например, “Arial” в “Calibri”), чтобы избежать детерминированного сопоставления, сохраняя реалистичное распределение и поведение рендеринга.
  2. Имитация шрифтов других ОС: FlashID позволяет использовать списки шрифтов, имитирующие другие операционные системы, чтобы разорвать корреляции между платформой и шрифтами.
  3. Рандомизация порядка шрифтов: Порядок запросов шрифтов рандомизируется для каждого экземпляра браузера, чтобы избежать повторной идентификации через статистику или шаблоны доступности.
  4. Защита от отсутствия рисования глифов: Некоторые платформы обнаруживают автоматизацию браузера, наблюдая, происходит ли рисование глифов в фоновом режиме. FlashID эмулирует корректное поведение рисования и разрешения шрифтов в реальном времени.

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


Рекомендуемое Чтение

Защита безопасности нескольких аккаунтов, начиная с FlashID

С помощью нашей технологии отпечатков пальцев оставайтесь незаметными.

Защита безопасности нескольких аккаунтов, начиная с FlashID