Как установила группа исследователей, с 2016 года в Google Chrome и Mozilla Firefox работала уязвимость, позволяющая сайтам получать информацию о Facebook-профилях посетителей, пишет ArsTechnica. Проблема просуществовала более года, ее исправили в обновлениях: Chrome 63 (вышел в прошлом году) и Firefox 60 (вышел две недели назад).

Причиной появления уязвимости стала новая функция, появившаяся в языке CSS в 2016 году. Она называется «mix-blend-mode» и вводит смешивание разных цветов. Она же позволяла сайтам получать информацию с Facebook. Использовались iframe-элементы (так встраивают кнопки лайка или логина) и необычный способ обработки данных. Объектом «слива» были просто пиксели — баг не позволял выгружать целые картинки или посты.

Как это работает — на примере iframe-элемента от Facebook. Источник: ArsTechnica

Сайты анализировали то, что «видели» на iframe-элементе, помещая сверху дополнительные слои-обработчики, поскольку получить доступ к его содержимому не могли. Извлеченные пиксели можно обработать при помощи системы оптического распознавания. Так они узнавали имена пользователей или их изображения профилей.

Пример полученной картинки. Источник: ArsTechnica

Хотя со стороны процесс выглядит достаточно сложно, на выполнение всех операций компьютер мог потратить не более 20 секунд, отмечает издание Slashgear. При этом, обычно в браузерах действует политика безопасности, не позволяющая доменам обмениваться информацией, которую они хостят — но в этом случае правила были нарушены. Браузер Safari не был подвержен уязвимости, а Internet Explorer и Edge просто не было поддержки mix-blend-mode.

Тем не менее, как опасаются исследователи, обнаружившие проблему, это может быть только началом. С усложнением веб-технологий и увеличением возможностей HTML и CSS появится все больше способов получать доступ к чужим данным.

Напомним, ранее на AIN.UA выходил материал о том, почему не стоит пользоваться бесплатными VPN-сервисами.