суббота, 17 декабря 2011 г.

Уязвимость CSS шедеров способствует краже данных

Разработчики ПО из Гугл, Apple, Adobe и т.д. борются с рисками безопасности, возникшими благодаря зарождающейся графической технологии, которая в собственном этом виде способна подвергнуть опасности миллионы людей.

"Технология, небезызвестная как CSS шейдеры, разработана для того, чтоб отображать разные эффекты искажения вроде колебаний, ряби и складок. Она работает за счет предоставления программных интерфейсов, которыми разработчики могут пользоваться, чтоб использовать мощные функции графических карт конечных людей. Однако тоже она может использоваться злонамеренными операторами сайтов чтоб красть историю просмотров в сети, данные с Facebook и другую чувствительную информацию у ничего не подозревающих людей", - предупредил не слишком давно Адам Барт, ученый безопасности Гугл Chrome.






"Т.к. сайтам позволено показывать контент, который им не позволено читать, атакующий может применять CSS шейдеры для чтения секретной информации ч/з канал синхронизации", - написал Барт в собственном блоге 3 дек.. "К примеру, веб ресурс может применять CSS шейдеры для извлечения твоих индивидуальных данных на Facebook ч/з вставленную кнопку "Like". Если более тонко, то ресурс может достать историю твоих просмотров обойдя защиту от отслеживания истории Дэвида Бейрона".

В дискуссионном листе для разработчиков браузерного движка WEBKIT Барт вместе с разработчиками из Гугл, Adobe и Opera обсуждали риски, представляемые технологией CSS шейдеров, которая была подана в W3C в качестве стандарта индустрии в окт.. Отдельные участники утверждали, что атака, которую имел ввиду Барт, непрактична, т.к. ее требуется подстраивать под конкретный браузер, а извлечение только части изображения на мониторе конечного пользователя займет долгое время.

"Даже если тебе удастся настроить CSS атаку под конкретный браузер, поведение визуализации которого ты понимаешь, уйдет немало времени, чтоб определить ценность одного пикселя, однако даже после этого, я думаю, точность и повторяемость будут весьма низки", - написал в ответ разработчик из Apple Крис Маррин. "Естественно, я могу ошибаться, однако я еще не увидел убедительного эксплойта рендеринга CSS".

Барт признал, что у него нет надежного прототипа, демонстрирующего атаку, однако он выразил обеспокоенность тем, что эта функция может подвергнуть людей классической browse-and-get-hacked атаке, в ходе которой приватная информация крадется просто при посещении не того интернет-сайт.

"К примеру, атакующий может применить CSS шейдер к iframe, который содержит контент с иного ресурса", - написал Барт в e-mail. "Если атакующий изготовит подобный шейдер, время исполнения которого будет зависеть от содержания iframe, потенциально он сумеет похитить чувствительные данные с ресурса".

Он прибавил, что эксплойт тоже может подвергнуть риску местоположение директорий с чувствительными файлами, когда пользователи загружают их на веб ресурс.

Сценарий, изложенный Бартом, весьма напоминает уязвимость, обнаруженную в другом графическом движке, который также набирает обороты в качестве стандарта индустрии. В июне ученые безопасности предупредили, что технология 3d-ускорения АПИ, небезызвестная как WEBGL, также позволяет сайтам извлекать изображения на мониторах посетителей. Представленный прототип эксплойта украл изображения в браузере Firefox путем "распыления" памяти в графической карте компьютера. Ученые сказали, что иные браузеры, вероятно, также уязвимы. Барт уверил, что с того момента уязвимость была исправлена.

Части спецификации CSS шейдеров доступны в еженощных сборках браузерного движка WEBKIT, которые формирует Гугл Chrome и Safari. У Adobe есть внутренняя сборка WEBKIT, которая реализует CSS шейдеры более полно. Барт заявил, что он не знает о выпуске технологии для рабочих версий любых браузеров. А это означает, что у коалиции разработчиков есть еще время на то, чтоб поправить недостаток, пока он не нанес ущерба.

"Есть ряд средств защиты, которые мы обсуждаем в W3C CSS-SVG Effects Task Force", - написал Барт. "По-моему, наиболее перспективный подход - отыскать подмножество шейдерного языка GLSL в коем на исполнение шейдера постоянно будет уходить одно и то же число времени, независимо от ввода. Если мы найдем такое подмножество, у сайтов будет возможность применять эти эффекты без риска утечки чувствительной информации ч/з канал синхронизации".

Комментариев нет:

Отправить комментарий