Источник: ain.ua
Как установила группа исследователей, с 2016 года в Google Chrome и Mozilla Firefox работала уязвимость, позволяющая сайтам получать информацию о Facebook-профилях посетителей, пишет ArsTechnica.
Проблема просуществовала более года, ее исправили в обновлениях: Chrome 63 (вышел в прошлом году) и Firefox 60 (вышел две недели назад).
Причиной появления уязвимости стала новая функция, появившаяся в языке CSS в 2016 году. Она называется «mix-blend-mode» и вводит смешивание разных цветов.
Она же позволяла сайтам получать информацию с Facebook. Использовались iframe-элементы (так встраивают кнопки лайка или логина) и необычный способ обработки данных.
Объектом «слива» были просто пиксели — баг не позволял выгружать целые картинки или посты.
Как это работает — на примере iframe-элемента от Facebook.
Сайты анализировали то, что «видели» на iframe-элементе, помещая сверху дополнительные слои-обработчики, поскольку получить доступ к его содержимому не могли.
Извлеченные пиксели можно обработать при помощи системы оптического распознавания. Так они узнавали имена пользователей или их изображения профилей.
Пример полученной картинки.
Хотя со стороны процесс выглядит достаточно сложно, на выполнение всех операций компьютер мог потратить не более 20 секунд, отмечает издание Slashgear.
При этом, обычно в браузерах действует политика безопасности, не позволяющая доменам обмениваться информацией, которую они хостят — но в этом случае правила были нарушены.
Браузер Safari не был подвержен уязвимости, а Internet Explorer и Edge просто не было поддержки mix-blend-mode.
Тем не менее, как опасаются исследователи, обнаружившие проблему, это может быть только началом.
С усложнением веб-технологий и увеличением возможностей HTML и CSS появится все больше способов получать доступ к чужим данным.