Как антифрод вычисляет VM через аппаратные API: сигналы, которые трудно подделать
Браузерное окружение передает больше данных, чем кажется. Антифрод не ищет один «сильный» признак виртуалки — он складывает слабые сигналы: несоответствие CPU-идентификаторов, пустые или шаблонные SMBIOS-поля, одинаковые MAC-диапазоны, странные тайминги доступа к системным вызовам.
Ключевой слой — аппаратные API и их побочные эффекты: WebGL, Canvas, AudioContext, Navigator, Battery, MediaDevices, Permissions. В VM часто видны низкоэнтропийные ответы: повторяемые GPU-строки, неестественный список кодеков, отсутствие части сенсоров, синтетические задержки при запросах. Один параметр не критичен, но связка параметров уже строит устойчивую сигнатуру.
Отдельно анализируют несовпадения между уровнями. Например, браузер заявляет одно число логических ядер, а поведение scheduler и latency-профиль напоминают урезанную виртуализацию; GPU-отпечаток не совпадает с драйверным стеком; аппаратный шум слишком ровный. Анализируем энтропию параметров: чем меньше вариативность между сессиями и между окнами одного профиля, тем легче связать их в кластер.
Для защиты нужен не «спуф одного поля», а согласованная модель окружения: стабильные, но правдоподобные значения, согласованные тайминги, реальная связка CPU/GPU/OS-браузер. Скрытность — это не отсутствие следов, это шум, сливающийся с фоном.
Fingerprint-кузница
@fingerprint_forge_ubt
Как антифрод вычисляет VM через аппаратные API: сигналы, которые трудно подделать
Этот пост опубликован в Telegram-канале Fingerprint-кузница. Подписаться можно по ссылке: @fingerprint_forge_ubt.