В данной статье расскажем о «Контроле учетных записей пользователей», в основе которого был заложен принцип наименее привилегированного пользователя. По сравнению с Windows Vista и Server 2008 в системах Windows 7 и Server 2008 R 2 появились несколько улучшений в его функционале. Также подробно расскажем о маркерах доступа и процессе входа в систему.

Большинство проблем, связанных с безопасностью в последних версиях Windows были вызваны одной главной причиной: большинство пользователей запускали Windows, обладая правами администратора. Администраторы могут делать все что угодно с компьютером, работающим под управлением Windows: инсталлироватьпрограммы , добавлять устройства, обновлять драйвера, инсталлировать обновления, изменять параметры реестра, запускать служебные программы, а также создавать и модифицировать учетные записи пользователей. Несмотря на то, что это очень удобно, наличие этих прав приводит к возникновению огромной проблемы: любая шпионская программа, внедрившаяся в систему, тоже сможет работать, имея права администратора, и, таким образом, может нанести огромный урон, как самому компьютеру, так и всему, что к нему подключено.

В Windows XP эту проблему пытались решить путем создания второго уровня учетных записей, называемых ограниченными пользователями, которые обладали только самыми необходимыми разрешениями, но имели ряд недостатков. В Windows Vista снова попытались устранить эту проблему. Это решение называется «Контроль учетных записей пользователей», в основе которого был заложен принцип наименее привилегированного пользователя.

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

С появлением UAC модель управления доступом изменилась таким образом, чтобы можно было помочь смягчить последствия вносимые вредоносными программами. Когда пользователь пытается запустить определенные компоненты системы или службы, появляется диалог контроля учетными записями, который дает пользователю право выбора: продолжать ли действие для получения административных привилегий или нет. Если пользователь не обладает правами администратора, то он должен в соответствующем диалоге предоставить данные учетной записи администратора для запуска необходимой ему программы.

Для применения установок UAC требует только одобрение администратора, в связи с этим несанкционированные приложения не смогут устанавливаться без явного согласия администратора. В этой статье подробно расписан принципе работы «Контроля учетных записей пользователей» в операционной системе Windows 7

По сравнению с Windows Vista и Windows Server 2008 в операционных системах Windows 7 и Windows Server 2008 R2 появились следующие улучшения в функционале контроля учетных записей пользователей:

Увеличилось количество задач, которые может выполнять обычный пользователь без запроса подтверждения администратором;

Пользователю с правами администратора разрешается настраивать уровень UAC из «Панели Управления»;

Существуют дополнительные настройки локальной политики безопасности, которые позволяют локальным администраторам изменять поведение сообщений UAC для локальных администраторов в режиме одобрения администратором;

Существуют дополнительные настройки локальной политики безопасности, которые позволяют локальным администраторам изменять поведение сообщений UAC для обычных пользователей.

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

В связи с тем, что UAC позволяет пользователям запускать приложения как обычные пользователи:

ИТ-отделы могут быть уверены в целостности их окружающей среды, включая системные файлы, журналы аудита, а также настройки системы;

Администраторам больше не приходится тратить много времени на определение разрешений для задач на отдельных компьютерах;

Администраторам предоставляется более эффективный контроль над лицензированием программного обеспечения, поскольку они могут обеспечить установку только авторизованных приложений. Им больше не придется беспокоиться о возможных угрозах их сетей из-за нелицензионного или вредоносного программного обеспечения.

Спецификации UAC

Маркер доступа. Маркеры доступа содержат информацию безопасности сеанса входа, определяющую пользователя, группы пользователей и привилегии. Операционная система использует маркер доступа дляконтроля доступа к защищаемым объектам и контролирует возможность выполнения пользователем различных связанных с системой операций на локальном компьютере. Маркеры доступа UAC – это особый вид маркеров доступа, определяющих минимальные привилегии, необходимые для работы – привилегии интерактивного доступа по умолчанию для пользователя Windows в системе с включенной функцией UAC. Второй маркер, маркер полного доступа администратора, имеет максимальные привилегии, разрешенные для учетной записи администратора. Когда пользователь входит в систему, то для этого пользователя создается маркер доступа. Маркер доступа содержит информацию об уровне доступа, который выдается пользователю, в том числе идентификаторы безопасности (SID).

Режим одобрения администратором. Режим одобрения администратором – это конфигурация управления учетными записями пользователей, в которой для администратора создается пользовательский маркер комбинированного доступа. Когда администратор входит в компьютер с ОС Windows, ему назначаются два отдельных маркера доступа. Если режим одобрения администратором не используется, администратор получает только один маркер доступа, предоставляющий ему доступ ко всем ресурсам Windows.

Запрос согласия. Запрос согласия отображается в том случае, когда пользователь пытается выполнить задачу, которая требует права администратора. Пользователь дает согласие или отказывается, нажимая на кнопку «Да» или «Нет».

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

Принцип работы UAC

Контроль учетных записей пользователей (UAC) помогает предотвращать заражение компьютера от вредоносных программ, помогая организациям более эффективно разворачивать настольные приложения.

С использованием UAC, приложения и задачи всегда запускаются в безопасной области от неадминистраторской учетной записи, если администратор дает права для административного доступа в системе.

Панель управления UAC позволяет выбрать один из четырех вариантов:

Уведомлять при каждом изменении, вносимом в систему: такое поведение присутствует в Vista – диалог UAC появляется каждый раз, когда пользователь пытается внести любое изменение в систему (настройка Windows, установка приложений и т.д.);

Уведомлять только тогда, когда приложения пытаются внести изменения в систему: в этом случае уведомление не появится при внесении изменений в Windows, например, через панель управления и оснастки;

Уведомлять только тогда, когда приложения пытаются внести изменения в систему, без использования безопасного рабочего стола: то же самое, что и пункт 2, за исключением того, что диалог UAC появляется в виде традиционного диалога, а не в режиме безопасного рабочего стола. Несмотря на то, что это может оказаться удобным в случае использования определенных графических драйверов, затрудняющих переключение между рабочими столами, этот режим является барьером на пути приложений, имитирующих поведение UAC;

Никогда не уведомлять: данная настройка полностью отключает UAC.

Процесс входа в систему в Windows 7

На следующем рисунке показано как отличается процесс входа в систему администратора от стандартного пользователя.



Для обеспечения безопасности, по умолчанию, доступ к системным ресурсам и приложениям, обычным пользователям и администраторам предоставляется в режиме обычного пользователя. Когда пользователь входит в систему, то для него создается маркер доступа. Маркер доступа содержит информацию об уровне доступа, который задается пользователю, в том числе и идентификаторы безопасности (SID).

Когда администратор входит в систему, создается два отдельных пользовательских маркера: маркер доступа стандартного пользователя и маркер полного доступа администратора. В стандартном пользовательском доступе содержится та же пользовательская информация, что и в маркере полного доступа администратора, но без административных привилегий и SID. Маркер доступа стандартного пользователя используется для запуска приложений, которые не выполняют административные задачи. Доступ стандартного пользователя используется только для отображения рабочего стола (explorer.exe). Explorer.exe является родительским процессом, из-под которого пользователь может запускать другие процессы, наследуемые своим маркером доступа. В результате все приложения запускаются от имени обычного пользователя, кроме тех случаев, когда приложения требует использования административного доступа.

Пользователь, который является членом группы «Администраторы» может войти в систему для просмотра веб-страниц и чтения сообщений электронной почты при использовании стандартного маркера пользовательского доступа. Когда администратору необходимо выполнить задачу, которая требует от него маркер административного пользователя, Windows 7 автоматически покажет уведомление для использования административных прав. Это уведомление называется запросом учетных данных, а его поведение может быть настроено при помощи оснастки локальной политики безопасности (Secpol.msc) или групповых политик.

Каждое приложение, которое требует маркер доступа администратора должно запускаться с согласием администратора. Исключением является взаимосвязь между родительским и дочерним процессами. Дочерние процессы наследуют маркер доступа пользователей из родительского процесса. Оба процесса родителя и ребенка должны иметь одинаковый уровень интеграции.

Windows 7 защищает процессы при помощи маркировки уровней интеграции. Уровни интеграции измеряются доверием. Приложения с «высокой» интеграцией – это приложения, выполняющие задачи, которые могут изменять системные данные. А приложения с «низкой» интеграцией – это выполняемые задачи, которые потенциально могут нанести ущерб операционной системе. Приложения с более низким уровнем интеграции не могут изменять данные в приложениях с высоким уровнем интеграции.

Когда обычный пользователь пытается запустить приложение, которое требует маркер доступа администратора, UAC требует пользователя предоставить данные администратора.

Пользовательские возможности UAC

При включенном UAC, пользовательские возможности отличаются от возможностей администратора в режиме одобрения администратором. Существует еще более безопасный метод входа в систему Windows 7 – создание основной учетной записи с правами обычного пользователя. Работа в качестве обычного пользователя позволяет максимально повысить степень безопасности. Благодаря встроенному в UAC компоненту полномочий обычные пользователи могут легко выполнять административные задачи путем ввода данных локальной учетной записи администратора.

Альтернативный вариант запуска приложений обычным пользователем является запуск приложений с повышенными правами администратора. С помощью встроенного в UAC компонента учетных данных, члены локальной группы Администраторы могут легко выполнять административные задачи путем предоставления утверждающих данных. По умолчанию, встроенный компонент учетных данных для учетной записи администратора в режиме одобрения называется запросом согласий. Запрос учетных данных UAC может быть настроен при помощи оснастки локальной политики безопасности (Secpol.msc) или групповых политик.

С включенным UAC, Windows 7 запрашивает согласие или учетные данные записи локального администратора, перед запуском программы или задания, которое требует маркер полного доступа администратора. Этот запрос не гарантирует того, что шпионские программы могут быть установлены в тихом режиме.

Запрос согласия отображается в том случае, когда пользователь пытается выполнить задачу, которая требует маркер доступа администратора. Ниже приведен скриншот с запросом согласия UAC.



Запрос учетных данных отображается в том случае, когда обычный пользователь пытается запустить задачу, которая требует маркер доступа администратора. Этот запрос для обычного пользователя может быть настроен при помощи оснастки локальной политикибезопасности (Secpol.msc) или групповых политик. Запрос учетных данных также может быть настроен для администраторов при помощи изменения политики Контроль учетных записей: поведение запроса на повышение прав для администраторов в режиме одобрения администратором со значением Запрос учетных данных.

На следующем скриншоте отображен пример запроса полномочия UAC.



Запросы на повышение прав UAC

Запросы на повышение прав UAC имеют цветовую маркировку для конкретных приложений, позволяя немедленно идентифицировать потенциальный риск безопасности. Когда приложение пытается запуститься с маркером полного доступа администратора, Windows 7 сначала анализирует исполняемый файл для определения издателя. Прежде всего, приложения делятся на 3 категории издателей исполняемого файла: Windows 7, проверенный издатель (подписанный), не проверенный издатель (не подписанный). На следующем изображении отображается то, как Windows 7 определяет какой цвет запроса повышения отображать пользователю.

Цветовая маркировка запросов на повышение прав следующая:

На красном фоне отображен значок щита: приложение блокируется при помощи групповой политики или блокируется из-за неизвестного издателя.

На синем фоне отображен золотистый значок щита: приложение является административным приложением Windows 7, таким как «Панель управления».

На голубом фоне отображается синий значок щита: приложение подписано и является доверенным на локальном компьютере.

На желтом фоне отображается желтый значок щита: приложение не подписано или подписано, но не является доверенным на локальном компьютере.



Запросы на повышение прав используют ту же цветовую маркировку, что и диалоговые окна в Windows Internet Explorer 8.

Значок щита

Некоторые элементы «Панели управления», такие как «Дата и время» содержат комбинацию операций администратора и обычных пользователей. Обычные пользователи могут видеть время и изменять часовой пояс, маркер полного доступа администратора требуется для изменения даты и времени системы. Ниже приведен скриншот диалога «Дата и время» панели управления.



Значок щита на кнопке «Изменить дату и время» указывает на то, что этот процесс требует маркер полного доступа администратора и отобразит запрос на повышения прав UAC .

Обеспечение запроса на повышение прав

Процесс повышения прав обеспечивает прямые запросы для защиты рабочего стола. Запросы согласия и учетных данных отображаются по умолчанию в Windows 7 для обеспечения безопасности системы. Только системные процессы могут получить полный доступ к безопасной рабочей среде. Для достижения более высокого уровня безопасности рекомендуется включить групповую политику Контроль учетных записей: переключение к безопасному рабочему столу при выполнении запроса на повышение прав.

Когда исполняемые файлы просят повышения прав, интерактивный рабочий стол, называемый также рабочим столом, переключается на безопасный рабочий стол. Безопасный рабочий стол затемняет пользовательский и отображает запрос на повышение прав, в котором пользователь должен принять решение для продолжения выполнения задачи. Когда пользователь нажимает на кнопку «Да» или «Нет», рабочий стол снова переключается на пользовательский.

Вредоносное программное обеспечение может имитировать безопасный рабочий стол, но при включенной политике Контроль учетных записей: поведение запроса на повышение прав для администраторов в режиме одобрения администратором со значением «Запрос согласия» вредоносная программа не сможет получить повышенные права, если даже пользователь нажмет на кнопку «Да». Если параметр политики имеет значение «Запрос учетных данных», то вредоносное программное обеспечение сможет собирать учетные данные пользователей.