Google хочет усложнить сайтам определение режима инкогнито в Chrome

Поскольку многие веб-сайты зарабатывают на отслеживании и рекламе, особенно на рекламе, таргетированной на отдельных пользователей на основе их веб-активности, режим инкогнито в Google Chrome помогает пользователям сохранить некоторую конфиденциальность, временно отключаясь от своих учетных записей Google, Facebook и Amazon. Те, кто использует режим инкогнито таким образом, могут быть шокированы, узнав, что в Chrome давно существует уязвимость, которую веб-разработчики могут использовать для определения того, используете ли вы режим инкогнито. Согласно ряду новых изменений в коде, Google наконец-то собирается исправить эту проблему.

К сожалению, среди веб-разработчиков давно не секрет, что существует очень простой трюк, позволяющий определить, находится ли пользователь в режиме инкогнито. Простой поиск по запросу «как определить режим инкогнито» выдает результаты со Stack Overflow, где разработчики поделились лучшими способами сделать это.

В настоящее время принятый ответ заключается в том, чтобы просто попытаться использовать API «FileSystem», который обычно используется приложениями для хранения файлов, как временно, так и более постоянно. В режиме инкогнито этот API полностью отключен, поскольку он может использоваться для создания постоянных файлов, которые останутся после выхода из режима инкогнито, что нарушает одну из его основных целей.

Реклама — прокрутите дальше, чтобы узнать больше

Некоторые веб-сайты, включая крупные издания с платным доступом, такие как The Boston Globe, используют этот трюк, чтобы полностью блокировать пользователей, обнаруженных в режиме инкогнито, поскольку их нельзя отслеживать.

Очевидно, что возможность так легко определять, находится ли пользователь Chrome в режиме инкогнито, не входило в планы Google. Серия недавних коммитов в системе управления исходным кодом Chromium Gerrit показывает, что Google наконец-то собирается решить эту проблему после многих лет осведомленности о ней.

По сути, при запросе файловой системы в режиме инкогнито Chrome будет создавать виртуальную, используя оперативную память, чтобы полностью гарантировать ее удаление после выхода из режима инкогнито. Это должно легко пресечь все текущие методы определения того, находится ли Chrome в режиме инкогнито.

Согласно внутреннему документу о проектировании, полученному 9to5Google, как только эта защита будет внедрена, конечная цель Google — полностью удалить API FileSystem, исходя из того, сколько законных случаев его использования останется после того, как злоупотребляющие им для обнаружения инкогнито уйдут.

Поскольку другие поставщики браузеров не используют API FileSystem, похоже, что он используется только сайтами для обнаружения режима инкогнито. Усложнив это, мы надеемся, что общее использование API снизится до точки, когда мы сможем его вывести из эксплуатации и удалить.

Что касается того, когда ожидается запуск функции предотвращения обнаружения режима инкогнито в Chrome, разработчик, ответственный за проект, говорит, что он намерен выпустить его в Chrome 74 через флаг, а затем включить по умолчанию «через 2 этапа» (или Chrome 76). Если это сохранится, вы сможете корректно скрыть режим инкогнито от обнаружения, используя флаг #enable-filesystem-in-incognito начиная с сборок Chrome Canary в ближайшие дни.