Потенциальная уязвимость в технологии CSS Shaders

16/12/2011 18:39

Адам Барт (Adam Barth), ответственный за безопасность браузера Chrome, опубликовал информацию о потенциальной опасности раскрытия конфиденциальной информации интернет-пользователей с помощью технологии CSS Shaders, предложенной к включению в стандарт CSS. Технология CSS Shaders позволяет применять шейдеры к различным элементам веб-страницы, открывая огромный простор для графических дизайнеров и программистов веб-сайтов. Однако, по мнению Адама Барта такая технология по своей природе имеет изъян, который позволяет разработчику веб-сайта применить тайминг-атаку для получения текущего содержимого того или иного элемента веб-страницы. В качестве примера Адам приводит различные кнопки "Like", "+1", а также блоки "iframe", в которых открыты другие сайты. Злоумышленник может создать страницу, которая будет содержать в себе "iframe", в котором будет открываться другая страница, содержащая конфиденциальную информацию пользователя. С помощью CSS Shaders злоумышленник также может применить к этому "iframe" специальный шейдер, который будет проходить по участкам полученного на вход изображения и применять к ним тот или иной метод трансформации. В зависимости от содержимого участка эта операция будет занимать разное количество времени, после измерения которого злоумышленник сможет достаточно точно восстановить оригинальное изображение и, таким образом, получить доступ к данным пользователя. Несмотря на чрезвычайную сложность выполнения такой атаки и отсутствие доказательств существования уязвимости в виде работающего эксплойта, разработчики других web-браузеров из компаний Apple, Adobe (которая развивает свою собственную версию WebKit с более полной поддержкой CSS3/CSS4) и Opera подтвердили наличие проблемы, но пришли к заключению, что тревогу бить пока рано. Интересно, что не так давно аналогичная уязвимость была найдена в технологии WebGL, для которой даже был представлен работающий эксплойт. Однако разработчики быстро устранили проблему с помощью запрета использования в качестве источника данных не авторизованные заранее веб-сайты.
Источник