Ваши пиксели — предатели: безобидная анимация работает как рентген, вытягивая пароли и номера карт сквозь защиту браузера

Почему отключение JavaScript больше не спасает от кражи конфиденциальной информации через SVG-фильтры.


6786zuw96b1m58713eirt9uxkfxshufh.jpg

Эстонская исследовательница безопасности Лира Ребане представила необычный приём кликджекинга , который опирается на сочетание SVG-графики и каскадных таблиц стилей. Её доклад на конференции BSides Tallinn в октябре остался незамеченным широкой аудиторией, но опубликованное ею недавно описание техники показало, что речь идёт о куда более серьёзной проблеме, чем эксперимент с визуальными эффектами. Ребане обнаружила, что фильтры SVG способны вытягивать данные из веб-страниц, находящихся под ними во встроенном фрейме (iframe), - и тем самым нарушать одно из базовых правил браузерной безопасности, ограничивающее взаимодействие между разными источниками контента.

Кликджекинг существует больше десяти лет и объединяет множество способов заставить человека выполнить действие, которого он не собирался совершать. Манипуляция может выглядеть безобидной - например, пользователь нажимает на кнопку, не подозревая, что под ней спрятан элемент стороннего сайта. Термин предложили в 2008 году исследователи Джеремайя Гроссман и Роберт Хансен, изучавшие способы перехвата кликов и перенаправления их на элементы, выбранные злоумышленником. С тех пор появились надёжные методы защиты, которые ограничивают работу страниц во фреймах, блокируют перенос сессионных файлов cookie в таких условиях и повышают прозрачность взаимодействия между доменами.

Несмотря на защитные меры, новые варианты атак продолжают всплывать - достаточно вспомнить прошлогоднюю технику подделки межоконных взаимодействий. Открытие Ребане из той же оперы, но опирается на совершенно иной механизм. Первоначально исследовательница пыталась воссоздать характерный визуальный эффект Apple Liquid Glass с помощью SVG-фильтров и CSS. Когда эксперимент удался, она заметила, что применённый фильтр, будучи размещённым во встроенном фрейме, получает доступ к пикселям основного документа, который по правилам должен оставаться недоступным.

Ребане подчёркивает, что работа с SVG в междоменных атаках изучается давно: она ссылается на исследование Perfect Pixel Timing Attacks Пола Стоуна и работу Рона Масаса Human Side Channel. Тем не менее, по её словам, никто прежде не проделывал ничего подобного с данными, полученными через SVG-фильтры , таким способом: «Я не думаю, что кто-то ещё запускал вычисления на междоменных данных так, как это сделала я», отметила она в разговоре с The Register.