.

Приложения пользовательского интерфейса системы Windows 8

Microsoft делает ставку на приложения Windows 8 и на новую модель программирования, которая дает разработчикам возможность быстро создавать приложения. Эта модель базируется на языке JavaScript, где уровень представления реализован в HTML5 и в стандарте оформления документов CSS3 (или, в качестве альтернативного варианта, — в языках Visual Basic, C++, либо в C# и в языке XAML — Extensible Application Markup Language).

Эта новая среда разработки дала специалистам Microsoft возможность встраивать средства безопасности с самого начала работы над продуктом, а не «наворачивать» их на заготовленную «болванку», как это делается при создании традиционных приложений для настольных систем. Сами по себе низкоуровневые изменения в системе Windows 8 предназначены для того, чтобы сделать современные приложения пользовательского интерфейса более защищенными, нежели аналогичные изделия для настольных систем.

«Песочница» для приложений

До выхода в свет версии Windows Vista вопрос о том, какой пользователь или пользователи могут обращаться к файлам и другим системным объектам, решался с помощью списков управления доступом access control lists (ACL). Уровни целостности были введены в Windows Vista отчасти для того, чтобы способствовать реализации защищенного режима браузера Internet Explorer (IE), который ограничивает возможности веб-сайтов по модификации объектов, обладающих средним или высоким уровнем целостности. Уровни целостности придают средствам безопасности Windows дополнительное измерение; с их появлением процессы и объекты, доступные пользователю, могут быть ассоциированы с тем или иным уровнем доверия. Так, приложения или файлы, которые, как принято считать, представляют угрозу для безопасности системы, такие, как IE или файлы, загруженные из Интернета, выполняются с низким уровнем целостности и не могут модифицировать объекты, наделенные более высоким уровнем целостности.

AppContainer — это новый механизм обеспечения безопасности для приложений Windows 8. Данный механизм инициализируется с помощью нового уровня целостности, который блокирует доступ с правами чтения и записи к объектам с более высоким уровнем целостности. Этот подход отличается от механизма, реализованного в версиях Windows Vista и Windows 7, где приложения, выполняемые с низкой степенью целостности, могут считывать содержимое объектов, обладающих средней или высокой целостностью. Все приложения в новом интерфейсе Windows 8 выполняются с уровнем целостности AppContainer — за исключением браузера Internet Explorer 10 (IE10), который выполняется со средним уровнем целостности.

Когда пользователи регистрируются в системе Windows 7, каждому пользовательскому сеансу назначается особое пространство имен ядра с целью предотвращения конфликтов. В ядре Windows пространства имен используются для построения иерархической структуры ресурсов (или объектов) Windows. В системе Windows 8 приложения с уровнем целостности AppContainer формируют именованные объекты ядра в отдельном пространстве имен, изолированном от сеанса пользователя. В отличие от объектов с другими уровнями целостности в Windows 8 объекты AppContainer могут быть настроены для взаимодействия с индивидуальными приложениями. Набор заданных возможностей позволяет приложениям обращаться к таким областям операционной системы, доступ к которым по умолчанию закрыт.

Декларации

По умолчанию приложения в новом интерфейсе Windows 8 могут обращаться только к своим областям хранения данных. Чтобы получить доступ к пользовательской библиотеке, к сети или аппаратному устройству, приложение должно объявить об этом намерении в своем файле манифеста. Когда пользователь устанавливает приложение из магазина Windows Store, на экране отображаются декларации с указанием типа доступа, необходимого для данного приложения, и пользователь должен решить, следует ли предоставлять такой доступ. В состав декларации могут входить 10 указанных ниже разрешений:

internetClient

internetClientServer

privateNetworkClientServer

documentsLibrary

picturesLibrary

videosLibrary

musicLibrary

enterpriseAuthentication

sharedUserCertificates

removableStorage

Разрешение enterpriseAuthentication позволяет приложениям предъявлять учетные данные зарегистрированного пользователя по сети. Содержание других разрешений легко понять из их названий; следует только отметить, что приложения могут обращаться к файлам на съемных носителях, только если тип упомянутых файлов указан в манифесте. Доступ к файлам сетевых папок HomeGroup не предоставляется. В данный момент приложения в новом интерфейсе Windows 8 не могут обращаться к локальным данным SQL Server, однако ожидается, что в будущих версиях Windows разработчики Microsoft реализуют дополнительные возможности. Более подробную информацию об объявлении разрешений для приложений в новом интерфейсе можно найти в разделе Capabilities интернет-центра разработки для Windows Windows Dev Center.

Расширенный защищенный режим IE

При включении расширенного защищенного режима IE (Enhanced Protected Mode — EPM) вкладки в версии IE 10 для настольных систем тоже выполняются в «песочнице» AppContainer. В защищенном режиме попытки установить вредоносный код или внести изменения в системные файлы в случае взлома браузера блокируются с помощью функции контроля целостности учетных данных Mandatory Integrity Control. Режим EPM представляет собой защищенный режим, дополненный рядом новых средств безопасности.

Если вы загрузили систему Windows 8 и запустили браузер IE, то наверняка заметили, что по умолчанию приложение IE 10 функционирует в смешанном 32-разрядном/64-разрядном режиме. Границы окон и меню выполняются в 64-разрядных процессах, а вкладки — в 32-разрядных.

Там, где это возможно, задействуйте 64-разрядные процессы, чтобы воспользоваться усовершенствованными средствами безопасности, такими, как технология Address Space Layout Randomization (ASLR). Более подробно эта технология будет описана ниже. Некоторые панели инструментов и подключаемые модули несовместимы с 64-разрядным браузером IE, поэтому по умолчанию в IE для настольных систем режим EPM отключен. Поскольку архитектура версии браузера IE для нового интерфейса Windows 8 не предусматривает использования подключаемых модулей, вероятность возникновения связанных с совместимостью проблем при работе в режиме EPM невелика, так что данный режим по умолчанию включен. Если в процессе функционирования «настольной» версии IE возникает вопрос об использовании подключаемого модуля, не совместимого с режимом EPM, такой модуль автоматически отключается. После этого вы сможете принять решение о том, следует ли отключать режим EPM в процессе работы браузера с конкретным сайтом.

Для обеспечения дополнительной защиты персональных данных в момент, когда пользователь пытается выложить на сайте какой-либо документ, в режиме EPM используется процесс посредника (broker process). Этот процесс предоставляет браузеру IE доступ к документу лишь в том случае, если в диалоговом окне File Upload пользователь нажимает кнопку Open. При задействованном режиме EPM браузер IE имеет доступ к пользовательским документам не все время, а только при необходимости. Вкладки тоже имеют ограничения на доступ к локальным сайтам, действующим в корпоративных сетях, а также к учетным данным пользователей. Наконец, вкладки EPM не могут выступать в роли локального веб-сервера. Режим EPM может быть активирован из вкладки Advanced оснастки Internet Settings панели управления или с использованием групповой политики, как показано на экране 1.

 

Активация режима EPM в браузере IE10
Экран 1. Активация режима EPM в браузере IE10

SmartScreen

Фильтр SmartScreen, который поначалу использовался для проверки целостности веб-сайтов, загруженных в IE, в системе Windows 8 получил дальнейшее развитие. Теперь это средство применяется и для проверки всех файлов, загружаемых из интернета, с помощью службы репутации Microsoft.

По умолчанию SmartScreen настраивается в Windows 8 таким образом, чтобы файл, не сопровождаемый сведениями о своей репутации, мог запускаться только с санкции администратора. Настройки SmartScreen можно изменить в центре поддержки Action Center или с помощью групповой политики в разделах Computer Configuration, Administrative Templates, Windows Components, File Explorer, как показано на экране 2.

 

Настройка фильтра SmartScreen для утилиты File?Explorer в Windows 8
Экран 2. Настройка фильтра SmartScreen для утилиты File?Explorer в Windows 8

Управлять фильтром SmartScreen также можно посредством Group Policy для зон безопасности IE.

Архитектура целостности платформы: измеряемая и защищенная загрузка

Дальнейшее развитие в Windows 8 получили аппаратные средства защиты данных. Теперь система оснащена несколькими новыми функциями, активируемыми через встроенную программу Unified Extensible Firmware Interface (UEFI) и через доверенный платформенный модуль Trusted Platform Module (TPM), который также может использоваться аппаратным средством защиты BitLocker в Windows Vista и более новых версиях. Протоколы Measured Boot и Secure Boot дают возможность идентифицировать руткиты и блокировать попытки вредоносных программ укрыться от операционной системы. Для функционирования протокола Measured Boot требуется модуль TPM, но вы можете обойтись и традиционной системой BIOS.

Secure Boot. В системе Windows 8 обеспечена возможность взаимодействия с протоколом UEFI Secure Boot, который является компонентом архитектуры защищенной загрузки Windows 8. Этот протокол предназначен для работы с аппаратными устройствами, на которых выполняются UEFI -совместимые системы BIOS, для проверки целостности существовавшей до установки Windows среды, а также для пресечения попыток вредоносного программного обеспечения модифицировать встроенные программы и запуститься до загрузки системы. Интерфейс UEFI разрабатывается независимым форумом. Цель разработки — опираясь на современное оборудование, обеспечить возможность прямого взаимодействия предоперационной среды с аппаратными компонентами с помощью быстрых блоковых операций ввода-вывода без использования традиционных аппаратных прерываний. Спецификации UEFI определяются организацией Trusted Computing Group (TCG).

Протокол Secure Boot защищает встроенные программы компьютерного устройства от установки вредоносных загрузчиков операционных систем, которые могут скрывать свое присутствие от средств безопасности Windows. Реализованная в Windows 8 архитектура целостности платформы также предусматривает использование технологии раннего запуска защиты от вредоносных программ Early Launch Anti-Malware (ELAM) и возможность проверки состояния клиента посредством сравнения начального состояния системы, записанного в модуле TPM устройства, с данными, содержащимися в удаленном центре проверки.

Инфраструктура открытых ключей Public Key Infrastructure (PKI) используется для формирования цепочки доверия. В процессе производства OEM-изготовители устанавливают платформенный ключ, защищающий микропрограммное обеспечение от опасных изменений. При запуске компьютера с установленным протоколом UEFI Secure Boot аппаратно реализованное программное обеспечение до передачи обработки проверяет состояние файлов запуска загрузки и микропрограмм на таких устройствах, как сетевые платы и видеоплаты. Верификация осуществляется посредством сопоставления сигнатур, хранящихся в различных встроенных программах, с базами данных, где хранятся санкционированные и запрещенные сигнатуры. Ваша системная плата должна иметь совместимость с интерфейсом UEFI, который необходимо активировать во встроенных программах перед установкой Windows 8. После активации UEFI система Windows 8 может быть установлена с носителя DVD или с загрузочного USB-накопителя FAT32. Для нормальной работы UEFI требуется, чтобы система Windows устанавливалась в дисковом разделе формата GUID Partition Table (GPT); если на вашей системе предыдущая версия Windows установлена в разделе Master Boot Record (MBR), ее необходимо удалить и преобразовать раздел в соответствии со стандартом GPT. При необходимости это можно сделать с помощью команды Diskpart среды предустановки Windows PE.

По завершении подготовки загрузочного раздела мы можем приступать к установке системы Windows 8. Чтобы установить эту систему в режиме UEFI (а не в режиме BIOS), убедитесь, что вы осуществляете загрузку с накопителя, оснащенного эталонным интерфейсом Extensible Firmware Interface (EFI). Это касается тех случаев, когда при установке Windows загрузка осуществляется с накопителей DVD или USB. Самый простой способ убедиться в этом — указать настройки загрузочного накопителя в микропрограммах. Тогда вы увидите накопители с пометкой EFI.

Для работы протокола UEFI Secure Boot требуется четыре раздела, но выполнять необходимую настройку вам не придется: все необходимые операции проделает за вас процесс установщики. Описание требуемых разделов приводится в таблице 1.

 

Размеры дисковых разделов по умолчанию, применяемые в системах UEFI

По завершении установки системы Windows 8 вы можете проверить, активирован ли протокол UEFI Secure Boot; для этого нужно выполнить следующую команду PowerShell:

confirm-SecureBootUEFI

Команда возвращает значение True, если Windows 8 выполняется в режиме UEFI.

Measured Boot. Это новая функция, доступная для антивирусных программ и базирующаяся на протоколе UEFI Secure Boot. Она подтверждает работоспособность системы на основе хранимого на микросхеме TPM журнального файла, который генерируется всякий раз во время загрузки системы. Журнал содержит список хэшей, используемых для подтверждения целостности драйверов и компонентов, которые загружаются в процессе загрузки до запуска антивирусной программы. Журнальный файл может быть также защищен криптографическим ключом, выдаваемым модулю TPM. Будучи полностью загруженным, выполняемое в среде Windows антивирусное программное обеспечение может проверять хэши на наличие несанкционированных модификаций в загрузочных компонентах и драйверах.

Удаленная аттестация позволяет антивирусным программам, выполняемым на клиенте, направлять журнальный файл Measured Boot на сервер для верификации. Таким образом, при проверке собственной работоспособности клиентский компьютер не полагается исключительно на собственные данные. Считается, что серверы более надежны, поэтому осуществляемое подобным образом подтверждение притязаний клиентских компьютеров является предпочтительным.

Система ELAM

Если системный драйвер Windows ELAM активирован, он загружается первым. Этот компонент позволяет драйверу ELAM, установленному в антивирусном программном обеспечении, классифицировать драйверы как надежные и ненадежные (см. таблицу 2).

 

Классификация драйверов запуска загрузки ELAM

Затем эта информация вновь поступает на драйвер Windows ELAM, который определяет, нужно ли инициализировать следующие один за другим загрузочные драйверы на основе политики инициализации соответствующего драйвера. Политику ELAM Boot-Start Driver Initialization Policy вы можете обнаружить в разделе Group Policy, доступ к которому осуществляется последовательным выбором пунктов Computer Configuration, Administrative Templates, System, Early Launch Anti-Malware.

Активировав Boot-Start Driver Initialization Policy, вы можете настроить эту политику таким образом, чтобы инициализировались только надежные драйверы; надежные драйверы и драйверы с неизвестным статусом; надежные драйверы, драйверы с неизвестным статусом, а также ненадежные, но критически важные драйверы — или все драйверы. Если ваши аппаратные средства оснащены модулем TPM, модуль Windows Defender готов к взаимодействию со средствами ELAM без какой-либо предварительной настройки.

Современные средства снижения угрозы от изъянов программ

Технология ASLR, реализованная в системе Windows со времен Windows Vista, вносит элемент случайности в размещение в памяти системных библиотек, затрудняя тем самым установку программ использования уязвимостей. Применяемая в Windows 8 технология ForceASLR была усовершенствована. Она разупорядочивает размещение DLL, которые позиционируются как несовместимые с технологией ASLR. Кроме того, ForceASLR может быть использована в системах Windows 7, а также Windows Server 2008 R2 как факультативно догружаемый компонент.

Еще одна новинка Windows 8 — технология High Entropy ASLR (HEASLR). Она повышает уровень случайности, достигаемый при использовании ASLR, но для ее применения требуется предварительное «согласие» библиотек DLL. Если вы эксплуатируете устройства с процессорами Intel на основе новой архитектуры Ivy Bridge, система Windows 8 использует новый генератор случайных чисел Intel Secure Key Technology, обеспечивающий более высокий уровень рандомизации, нежели достигаемый при работе с системными часами. Windows 8 разупорядочивает некоторые функции распределения памяти низкого уровня, причем рандомизация касается не только системных библиотек, но и стандартных приложений Windows. В браузере IE10 реализован полный набор функций ASLR. Приложения пользовательского интерфейса Windows 8 и службы Windows всегда выступают «за» HEASLR.

Windows 8 невозможно устанавливать на аппаратных средствах, несовместимых с технологией Intel NX (No eXecute) или с ее эквивалентом. Наличие аппаратного средства предотвращения выполнения в области данных data execution prevention (DEP), назначение которого — блокировать выполнение приложений в не предназначенных для этого областях памяти, является системным требованием. Сейчас ядро Windows 8 запускается в не допускающей выполнение кода памяти, и такая же память распределяется этой операционной системой, что затрудняет осуществление хакерских атак. Функция Supervisor Mode Execution Prevention (SMEP), реализованная в процессорах на базе архитектуры Intel Ivy Bridge, блокирует попытки злоумышленников использовать ошибки в ядре системы. Эта цель достигается за счет того, что SMEP не позволяет ядру выполнять атакующую программу, расположенную в памяти, которая выделена для вредоносного процесса. Более подробную информацию о DEP и ASLR можно найти в статье «Борьба с «вредителями» в Vista и Windows Server 2008», опубликованной в Windows IT Pro/RE № 7 за 2008 год.

Управление доступом и управление данными

Механизм динамического контроля доступа Dynamic Access Control (DAC) впервые реализован в системе Windows Server 2012. Он обещает изменить подход организаций к управлению доступом к корпоративным данным. Традиционная система списков управления доступом на базе NTFS слишком тяжеловесна, чтобы обеспечивать управление крупномасштабными структурами; отчасти это объясняется тем, что она не предусматривает возможности централизованного управления в той или иной форме. Windows 8 — единственная операционная система корпорации Microsoft, способная обеспечить авторизацию на основе утверждений (а это является необходимым условием для взаимодействия с механизмом DAC в системе Windows Server). Обработка комбинированных утверждений (утверждений пользователей и устройств) тоже возможна только в среде Windows 8. Благодаря усовершенствованию средства DirectAccess и функциям управления виртуальными смарт-картами пользователи Windows 8 получают возможность использовать это устройство в качестве сетевого маркера доступа, обходясь при этом без физических интеллектуальных плат. Более подробные сведения о механизме DAC можно найти в посте «Introduction to Windows Server 2012 Dynamic Access Control» блога Windows Server Blog или на интернет-странице «Understanding and Evaluating Virtual Smart Cards», где вы сможете познакомиться с информационной «белой» книгой о виртуальных смарт-картах.

Windows Defender

Сегодня Windows 8 наделена всем набором функциональных возможностей, которые ранее были доступны лишь пользователям дополнительно устанавливаемой программы Microsoft Security Essentials. Компьютеры, работающие под управлением этой системы, позволяют без всякой предварительной настройки обращаться к антивирусным и spyware-модулям через компонент Windows Defender, как показано на экране 3.

 

Антивирусная программа, встроенная в Windows Defender
Экран 3. Антивирусная программа, встроенная в Windows Defender

Скорее всего, Windows Defender больше всего понравится индивидуальным потребителям, сотрудникам предприятий малого бизнеса или тем, кто просто не хочет тратить деньги на программные средства безопасности. И все же оснащение Windows базовыми возможностями антивирусной защиты может принести только пользу всем, кто занимается вопросами компьютерной безопасности. Программа Windows Defender не допускает централизованного управления, так что крупным организациям, заинтересованным в получении всех средств управления и мониторинга, все еще придется платить за антивирусное программное обеспечение.

Больше безопасности и кое-что еще

Операционная система Windows 8 радует потребителей отнюдь не только своим новым интерфейсом. Некоторые усовершенствования в области безопасности были реализованы в ней благодаря новым аппаратным средствам, разработанным корпорациями Microsoft и Intel. Конечно, стопроцентной защиты в природе не существует. Но, так или иначе, Windows 8 существенно усложняет задачу злоумышленников, которые попытаются взламывать системы с должным образом сконфигурированными средствами безопасности.