1. Что такое MediaDevices в создании цифровых отпечатков браузера
Интерфейс MediaDevices
, доступный через navigator.mediaDevices.enumerateDevices()
, позволяет веб-сайтам запрашивать устройства ввода/вывода, такие как:
- Микрофоны
- Камеры
- Колонки
- Аудио/Видео устройства с реальными ID и метками устройств
Эти данные включают уникальные идентификаторы устройств (deviceId
, groupId
), названия продуктов (label
) и поддерживаемые возможности захвата (частота кадров, форматы и т.д.).
Многие платформы используют списки MediaDevices как часть анализа цифрового отпечатка браузера для:
- Обнаружения повторных пользователей по постоянным ID устройств
- Отслеживания стабильности устройств (например, использование одной и той же гарнитуры или веб-камеры)
- Предотвращения MAS (многопользовательского доступа) путем проверки названий и типов устройств
- Обнаружения или блокировки попыток подмены
MediaDevices
без согласованности между профилями
Поскольку Web Audio API, WebRTC и вызовы getUserMedia
часто зависят от уникальных характеристик устройств, отпечаток медиаустройств представляет собой серьезный идентификационный признак, если он не подвергается манипуляциям.
2. Как платформы обнаруживают отпечатки MediaDevices
Системы анти-отпечатков обнаруживают информацию о медиаустройствах через:
Списки устройств из
enumerateDevices()
, основанные на плагинах или перехваченные JavaScript
Эти системы анализируют ID и метки устройств программно для определения реального оборудования.Сопоставление с отпечатками AudioContext и Canvas
Особенности устройств, такие как качество колонок или фильтрация микрофона, могут быть проанализированы для выявления поддельных устройств.Постоянство устройств между сеансами
Сложные системы отслеживания наблюдают за сохранением списков устройств с течением времени, чтобы выявить автоматизацию или виртуализацию.Проверка согласованности User Agent и поведения устройств
Устройства Android не должны сообщать о веб-камере с меткойHD Pro Webcam C920
, и наоборот — несоответствие вызывает подозрения.Точность времени перечисления устройств
Настоящие устройства возвращают списки за предсказуемое время, в то время как поддельные библиотеки могут оставлять обнаруживаемые аномалии.
3. Как FlashID скрывает отпечатки MediaDevices
FlashID обеспечивает полный контроль над отпечатками медиаустройств, гарантируя:
Виртуализация списка устройств
FlashID заменяет реальные данные изenumerateDevices()
на профиль-специфичные поддельные списки, имитирующие реальные устройства или платформенные метки.Согласованность меток устройств через профили
Каждый браузер содержит виртуальный набор устройств (например,"Microsoft LifeCam HD-3000"
или"Logitech C920"
), но изолирует их по регионам или сценариям использования.Стабильность deviceId и groupId между сеансами
FlashID сохраняет поддельныеdeviceId
,groupId
и временные метки, имитируя долговременное использование устройств.Маскировка возможностей устройств
FlashID генерирует виртуальные параметры устройств, такие как разрешение, частота кадров и подавление эхо, чтобы обойти анализ ограничений.Реалистичное поведение времени запроса устройств
Для имитации реального оборудования FlashID добавляет задержки и случайные отклонения во время перечисления устройств.Подмена реального потока при запросе getUserMedia()
FlashID заменяет реальный поток на безопасный виртуальный, соответствующий контексту отпечатка.Возможность полного запрета доступа к списку устройств
Опционально можно запретить страницам доступ к списку устройств, что полезно для соблюдения приватности и обхода обнаружения.
Благодаря глубокой и надежной маскировке отпечатков медиаустройств FlashID позволяет пользователям управлять несколькими аккаунтами, сохраняя правдоподобное, стабильное и изолированное поведение аудио/видео устройств — ключевое преимущество в условиях современных агрессивных систем анти-спуфинга.
Рекомендуемое Чтение