Оглашены отдельные детали 0-day-уязвимости в браузерном плагине Unity Web Player. Данная брешь позволяет атакующему использовать идентификаторы жертвы для чтения сообщений и других злоупотреблений чужим доступом к онлайн-сервисам.

Финский исследователь Йоуко Пюннонен (Jouko Pynnonen) отважился на частичное раскрытие спустя полгода после подачи разработчику соответствующего отчета, оставшегося без ответа. По словам Пюннонена, Unity Technologies лишь позавчера подтвердила получение отчета о баге, сообщив, что работает над его устранением и принимает меры по совершенствованию процедур реагирования на ИБ-инциденты.

Компания поставляет Unity Web Player в комплекте со своим движком, которым пользуются разработчики игр для ПК под Windows или Mac OS X, а также для специализированных консолей и мобильных устройств. Этот плагин используется во многих играх на Facebook; социальная сеть предлагает свой SDK, чтобы можно было встраивать ее функции в разные Unity-игры. Согласно статистике Unity Technologies, ее плеер-плагин был скачан более 125 млн раз.

Хотя найденная уязвимость имеет широкий охват, недавнее решение Google отключить в своем браузере NPAPI поможет значительно снизить риски. Этот созданный в 90-е годы API хорошо известен как основная причина зависаний, сбоев и проблем с безопасностью. Отказ от поддержки NPAPI в версиях Chrome 42 и выше означает дефолтное отключение не только Unity Web Player, но других плагинов, таких как Java и Silverlight (запрет пока еще можно снять вручную).

«Решение Google в отношении Chrome в значительной мере сокращает проблему, — уверен Пюннонен. — Чтобы запустить плагин, нужно произвести изменения в настройках. Без таких изменений приложение Unity просто не будет работать. В дальнейшем эта возможность будет закрыта».

Для использования новоявленной бреши злоумышленнику придется заманить пользователя на свой сайт с вредоносным вариантом Unity-приложения либо внедрить такого зловреда на легитимный ресурс или, к примеру, в игру Facebook. По свидетельству финского исследователя, данная уязвимость позволяет вредоносному Unity обойти политику одного источника, запрещающую приложениям доступ к URL и ресурсам из другого домена. Успешная эксплуатация через Internet Explorer, например, откроет атакующему возможность для просмотра файлов, сохраненных локально.

По словам Пюннонена, загруженный со специального сайта зловред подменяет URL в браузере. Подлинное Unity-приложение должно пресекать такие редиректы, но в данном случае этого не происходит. «Некоторые версии плагинов и браузеров диктуют использование IP-адреса в десятичном формате без точек, а не в виде удобочитаемого имени узла, — поясняет эксперт. — При использовании записи в виде десятичного числа, не разделенного точками, на сайте атакующего должен присутствовать файл crossdomain.xml в обеспечение полного доступа». Файлы crossdomain.xml могут расширять политики, предотвращающие подобный доступ со стороны.

Пюннонен записал видеоролик с демонстрацией PoC-обхода, из которого видно, как после загрузки поддельное приложение запрашивает особый URL на сайте атакующего и в ответ получает ошибку 301 с перенаправлением на Gmail. После этого браузер, используя идентификаторы пользователя, грузит список сообщений атакующему, который посредством эксплойта получает возможность читать отдельные письма.

«Степень взаимодействия [с жертвой] зависит от типа браузера и версии, — подчеркивает Пюннонен. — За последние годы и месяцы работа веб-плагинов подверглась существенным ограничениям, особенно в Chrome. Некоторые браузеры сразу прогоняли приложение при просмотре страницы. Другие запрашивают разрешение на запуск. Пользователь может по собственному выбору согласиться на все Unity-приложения при первом запуске одного из них и т.п.».

«Если разрешить запуск плагина [Unity Web Player], он автоматически загрузит приложение и запустит его на исполнение в браузере, — добавляет эксперт. — Предполагается, что безопасность исполнения обеспечит песочница, как и в случае с Flash-приложениями или Java-апплетами».

Категории: Уязвимости