В Google Chrome недавно устранили уязвимость, позволяющую по изменению цвета ссылок отслеживать посещения сайтов и персонализировать рекламу. Проблему, свойственную браузерам более 20 лет, решили секционированием хранимой истории визитов.
Патч включен в состав сборки Chrome 136 бета. Выпуск новой версии браузера запланирован на 23 апреля.
Проблема приватности, о которой идет речь, возникла во времена, когда сайты стали полагаться на CSS-селектор :visited, чтобы улучшить взаимодействие с пользователем и помочь ему перемещаться в интернете.
Активные ссылки обычно подсвечиваются синим на страницах, а при клике цвет изменяется в соответствии с настройками — к примеру, становится фиолетовым.
Таким же образом совершенный переход будет отображаться на всех сайтах, содержащих эту ссылку (браузер проверяет ее наличие в истории посещений).
Этот механизм зачастую используют для отслеживания перемещений рекламодатели и исполняемые скрипты на сайтах. Разработчики браузеров многократно пытались смягчить угрозу приватности пользователей с помощью различных ухищрений, но искоренить проблему они не могли.
В баг-трекере Chromium она долгое время числилась как Won’t Fix — «неразрешимая», а теперь в Google нашли, наконец, выход. Посещенные ссылки теперь будут храниться в Chrome храниться вместе с контекстом (URL, TLD сайта, источник содержимого iframe).
В результате такой привязки ссылка будет отображаться как посещенная только на том сайте, с которого был совершен переход.
Исключения сделаны для вложенных страниц на сайтах: они будут отображаться как :visited даже в том случае, когда на них пришли с другого сайта.