Pull to refresh

Новые механизмы обеспечения безопасности в IE 8

Reading time5 min
Views1.2K
После выхода Internet Explorer Beta2 на многочисленных ресурсах, включая Хабр, часто обсуждались нововведения, которые касаются в основном интерфейса и дополнительных инструментах для пользователя. Таких нововведений достаточно много, тут и акселераторы и измененная строка ввода адреса и группировка табов и продвинутый инструмент для разработчиков многое другое. Так же достаточно широко обсуждается изменение в браузере в плане рендеринга страниц, в том числе тот факт что во многом этот механизм пишется для восьмой версии с нуля. Все это конечно интересно и значительно, но целью данной статьи ставится компиляция сведений о средствах безопасности нового браузера.

Введение


Не так давно, 29 августа, на блоге MSDN IEBlog была размещена статья «Безопасная навигация с IE8: обобщение информации» (Trustworthy Browsing with IE8: Summary). В довольно обширной форме в статье скомпилированы предыдущие статьи, касающиеся отношения к безопасности в IE. В этой статье я не собираюсь переводить все статьи, для меня это неподъемная работа, да и не считаю, что это необходимо. Статьи написаны доступным языком и каждый желающий может с ними ознакомиться. В этой статье я попытаюсь в краткой форме изложить информацию об основных изменениях в элементах безопасности в IE.

Содержание

  • защита памяти средствами DEP/NX;
  • улучшения в ActiveX;
  • фильтр SmartScreen;
  • XSS-фильтр;
  • общая защита.

Защита памяти средствами DEP/NX


Функция «Включить защиту памяти для снижения риска атаки из интернета» доступна и в седьмой версии браузера, но она не включена по умолчанию. Правда, на 64-битных платформах этой функции нет, но только потому, что все процессы в 64-битных версиях Windows защищены через DEP. Теперь же, данная функция будет включена по умолчанию. Напомню, что DEP/NX позволяет предотвратить выполнение кода, которые помечен как данные. Таким образом отсекается целый пласт атак таких как переполнение буфера.

Улучшения в ActiveX


В восьмой версии Internet Explorer элементы ActiveX могут быть установлены только для определенного пользователя (Per-User ActiveX), что снижает риск заражения, при учете того, что пользователь не работает под правами администратора. В это случае под ударом находится только профиль одного пользователя и ничего больше.
Per-Site ActiveX — новая техника, которая позволяет задать элементу ActiveX возможность исполнения только но одном единственном (вашем собственном) сайте и нигде больше. Пользователь также может разрешить использование, скажем Silverlight, только на том сервере, где он первый раз понадобился. Как и все остальное, управление механизмом установки ActiveX будет доступно для администраторов через групповые политики.

Фильтр SmartScreen


SmartScreen — это новая функция Internet Explorer против фишинга, которая расширяет фишинг-фильтр, который был в предыдущих версиях браузера. Вот список основных изменений:
  • улучшенный интерфейс;
  • улучшенная производительность;
  • новая эвристическая улучшенная телеметрия;
  • поддержка анти-malware;
  • улучшенная поддержка через групповые политики.

Я приведу некоторые скриншоты с комментариями, которые показывают технологию в действии:

Здесь показан улучшенный интерфейс информации, которая выводится пользователю при посещении подозрительного сайта:



То же окно, но только с запрещенным администратором переходом на опасный сайт:



Следующее окно будет показано, если Internet Explorer определит, что загрузка файлов будет произведена из опасного источника:



В редких случаях пользователь может увидеть следующее окно, которое предупреждает пользователя о подозрительных сайтах:



XSS-фильтр


Самое интересное на мой взгляд нововведение, это встроенный XSS-фильтр, которые позволяет защитить пользователя от «Cross-Site Scripting»-атак. Чтобы хотя бы приблизительно оценить величину угрозы от XSS-атак можно перейти по адресу XSSed.com и посмотреть какие не самые мелкие публичные ресурсы подвержены этим атакам. Любой пользователь потенциально может стать жертвой просто перейдя на эти ресурсы, и сейчас число таких обнаруженных «дырявых» сайтов перевалило уже за 20 тысяч.

XSS-фильтр Internet Explorer 8 направлен против xss-атак т.н. типа Type1. Согласно информации с википедии атаки такого типа самые распространенные.



Для тех сайтов, которые по какой-то причине не хотят позволить пользователю включить защиту против XSS на их ресурсах доступна опция в заголовках HTTP: X-XSS-Protection: 0. Она может понадобится тем, кто в своих проектах использовал техники схожие с XSS-атаками.

Общая защита


Помимо защиты от xss-атак, в новой версии браузера будут поддержаны так же следующие техники и технологии защиты:
  • поддержка кросс-документного обмена сообщениями HTML5 (HTML5 cross-document messaging);
  • новый объект XDomainRequest для передачи данных через домены;
  • новая функция toStaticHTML, которая позволит избежать внедрения опасного кода на страницы путем форматирования html-тегов, эта функция делает тоже что и описанные здесь функции библиотеки Microsoft Anti-Cross Site Scripting Library;
  • Internet Explorer 8 реализует функции ECMAScript 3.1 для работы с JSON. Для обеспечения безопасности, объект для работы с JSON содержит функцию parse, которая так же как и toStaticHTML надежно форматирует потенциально-опасный текст;
  • в новой версии Internet Explorer браузер содержит улучшения в т.н. механизме MIME-sniffing. Этот функционал позволяет определять браузеру содержимое страницы не по «content-type», а по содержанию. Нередко такое определение позволяло внедрить опасный код. Теперь, например, при «content-type: image/*» не будет рендерится вложенный html- или скрипт-код. Для управления фильтром разработчик может воспользоваться новым параметром authoritative и указать «Content-Type: text/plain; authoritative=true;» и в таком случае IE8 не будет пытаться определить тип содержимого, выведя его согласно указанию в «Content-Type»;
  • новые параметры для HTTP-заголовков X-Download-Options: noopen и Content-Disposition: attachment; filename=untrustedfile.html позволяют заставить браузер сохранить содержимое вместо его отображения. Это может понадобится в тех случаях когда веб-приложению требуется передать пользователю страницу с небезопасным содержимым. В случае сохранения его на клиенте и последующем открытии такие страницы не будут работать в контексте сервера, что оставит его в безопасности;
  • в контроле File Upload теперь в целях безопасности изменили статус поля ввода на read-only. В дополнение к этому, с той же целью, IE8 теперь не будет отправлять полный путь файла, вместо этого отправляться будет только его имя;
  • Internet Explorer 8 так же содержит некоторые методики противодействия атакам с применением социальной инженерии, для примера приведу два скриншота правильного

    и неправильного PayPal.

    Заметно, что настоящие имена доменов подсвечены более темным текстом.

Заключение


В статье рассмотрены несколько новых механизмов в плане защиты в Internet Explorer 8. Некоторые из них показались мне достаточно значительными, другие менее. Наиболее интересный механизм — это XSS-фильтр, очень своевременная техника, которая в наше время является очень актуальной. В целом же, размеры работы над безопасностью нового браузера лично меня впечатляют. Восьмая версия однозначно совершит значительно больший шаг в обеспечении безопасности, чем все ее предшественники.
Tags:
Hubs:
Total votes 8: ↑5 and ↓3+2
Comments1

Articles