Это стало ударом для некоммерческого консорциума Khronos Group, который перенял у фонда Mozilla Foundation разработку WebGL и ранее в этом году выпустил версию 1.0.
Группа характеризует WebGL как «предназначенный для Интернета API-интерфейс трехмерного рендеринга в непосредственном режиме. Он является ответвлением OpenGL ES 2.0 и обеспечивает сходные функции рендеринга, но в контексте HTML».
Иными словами, WebGL представляет собой элемент контекста Canvas HTML, предоставляющий API-интерфейс трехмерной графики без использования плагинов. Потенциально он позволяет веб-браузерам отображать трехмерную графику как в компьютерной игре.
Но, считает Microsoft, поскольку эта технология предоставляет веб-сайтам прямой доступ к низкоуровневым аппаратным графическим функциям, с ее помощью можно делать некоторые гадости. Корпорация ссылается на продолжающуюся работу лондонской консультативной фирмы Context Information Security. В мае та опубликовала запись в блоге о том, что сумела создать веб-страницы, вызывающие с помощью WebGL аварийное завершение работы компьютеров посетителей.
В записи от 16 июня Context утверждает, что вредоносные веб-сайты могут также использовать WebGL для считывания содержания графической памяти. Как показано на иллюстрации, это позволяет украсть любые данные, которые выводятся на экран пользователя.
Context и Microsoft отмечают, что уязвимости в WebGL не всегда будут проявляться в API-интерфейсе, но будут возникать также в некоторых веб-браузерах или драйверах графических карт, из которых одни защищены больше, другие меньше. Microsoft указывает в своей записи, что «пользователи не привыкли проверять, установлены ли у них новейшие драйверы графических карт, что было бы необходимо для безопасного серфинга в Интернете».
Context в записи от 16 июня «рекомендует пользователям и системным администраторам отключить WebGL». В свою очередь, Microsoft формулирует следующие основные претензии:
- поддержка WebGL браузерами делает аппаратные функции непосредственно доступными через Интернет таким образом, который обеспечивает слишком широкие полномочия;
- при поддержке браузерами WebGL они слишком сильно зависят от дополнительных программ при обеспечении безопасности серфинга в Интернете;
- возможны сценарии системных DoS-атак.
Реакция Khronos
Отвечая на приведенные утверждения, представитель Khronos Джонатан Хершон сказал, что проблема мошенничества или случайных окон на рабочем столе была связана с ошибкой в реализации WebGL в Firefox, и о ней нельзя говорить как об общей для реализации WebGL в других браузерах. Более того, добавил он, этой проблемой занялись 26 мая, и в Firefox 5, выпуск которого намечен на 21 июня, она решена.
Между тем, отмеченные ранее проблемы с отказом в обслуживании, видимо, сохраняются, поскольку производители браузеров все еще пытаются обеспечить поддержку расширения GL_ARB_robustness. «Ожидается, что выявленные проблемы с отказом в обслуживании будут решены после интеграции данного расширения», — сказал Хершон.
Подытоживая, Хершон заявил: «Все производители браузеров пока только работают над обеспечением совместимости с WebGL. Лишь после того, как браузеры успешно пройдут проверку на совместимость, они смогут претендовать на поддержку Canvas.getContext(«webgl») вместо Canvas.getContext(«experimental-webgl»)».
Наконец, Khronos указывает на запись в блоге Ави Бар-Зеева, главного архитектора подразделения Microsoft Research. В своем личном блоге RealityPrime Бар-Зеев пишет, что разочарован мнением сотрудников MSRC, которое «создает впечатление, будто Microsoft уходит от решения вопросов безопасности, которые требуют небольшой технической работы».
Бар-Зеев продолжает: «WebGL будет работать и на моем ПК, и на вашем, тем или иным образом. Microsoft придется иметь с ним дело. Кстати, в действительности мы можем помочь сделать его гораздо более надежным, если возьмемся за это вместо того, чтобы демонстративно отворачиваться».
В своей записи Бар-Зеев отмечает также, что в отличие от плагинов для браузеров (включая элементы управления ActiveX, впервые появившиеся в Microsoft Internet Explorer) WebGL не позволяет получать широкий доступ к низкоуровневым функциям. «Никакой записи на диск, никакого доступа к основной памяти, никакого кода для процессора помимо официально подписанных драйверов. В действительности этот шейдер может затронуть лишь вашу графическую карту и экран».
В заключение Бар-Зеев пишет: «Совершенно очевидно, что есть только одно направление для продвижения Microsoft и трехмерной графики в Интернете. И это направление связано с WebGL».















