Как с помощью JavaScript можно определить, что браузер пытается подменить параметры устройства? Не обязательно обнаружить реальные значение, а просто факт подмены. Есть антидетект-браузеры, которые подменяют различные параметры, отправляя сайту отличные от фактического, значения, если сайт запрашивает их с помощью Javascript либо HTTP-заголовков: Screen Resolution Набор шрифтов Основной язык и список поддерживаемых языков Часовой пояс Количество ядер процессора Объем оперативной памяти Название видеокарты Количество медиа девайсов (камера, микрофон, наушники) Формат даты на устройстве Speech Voices Поддерживаемые аудио форматы Canvas Fingerprint WebGL Fingerprint Audio Fingerprint DOMRect Fingerprint Какие есть способы определить факт подмены? В одной из статей нашёл информацию, что браузер может производить подмену разными способами: Привожу цитату: "переписать эти функции в исходном коде браузера, до его компиляции. Это самый надежный и самый сложно определяемый способ. - заинжектиться в работающий процесс вкладки и перехватывать обращения к нужным функциям в реальном времени. Технически сложно, т.к. смещения и адреса функций плывут с каждым обновлением браузера. - перезаписать нужные нам значения прямо на странице через javascript же, после инициализации страницы, которую мы просматриваем. Самый простой в реализации, но самый отвратительный способ, т.к. сделать это незаметно действительно сложно. Как я покажу дальше, почти все антидетект-браузеры выбрали этот путь, чем подставили своих пользователей." Вопрос, можно ли проверить, какой способ подмены используется в браузере. И какие именно методы определения подмен существуют? Например, в статье было указано про Object.keys(Object.getOwnPropertyDescriptors(navigator)) для неумелого переопределения свойств Navigator. Также можно обнаружить использование эмулированной среды, эта информация тоже была в статьях. Статьи: https://cpa.rip/stati/antidetect-pa...eration-hash=da113dcf63bf70e9c0681094fbcbb949 https://habr.com/ru/articles/720588/ https://habr.com/ru/articles/716434/ https://www.zenrows.com/blog/bypass-cloudflare https://www.zenrows.com/blog/bypass-akamai Буду благодарен конкретным методам определения подмены.