Контроль учётных записей пользователей¶
Контроль учётных записей пользователей (англ. User Account Control, UAC) — компонент операционных систем семейства Microsoft Windows, впервые внедрённый в Windows Vista и присутствующий во всех последующих версиях (Windows 7, 8, 8.1, 10, 11). Предназначен для ограничения привилегий программ и предотвращения несанкционированных изменений в системе, требующих прав администратора. UAC реализует механизм разделения привилегий между стандартными учётными записями и учётными записями администратора, запрашивая подтверждение или учётные данные администратора перед выполнением операций, потенциально изменяющих параметры системы или установку программного обеспечения.
¶История
До появления Windows Vista пользователи операционных систем Windows (например, Windows XP) часто работали с учётными записями, обладающими полными правами администратора. Это приводило к тому, что вредоносное программное обеспечение, запущенное от имени пользователя, автоматически получало максимальные привилегии и могло беспрепятственно изменять системные файлы, реестр и настройки безопасности. Для повышения безопасности корпорация Microsoft ввела в Windows Vista механизм UAC, основанный на концепции «наименьших привилегий» (англ. least privilege). Изначально UAC подвергался критике за избыточные запросы подтверждения, что снижало удобство работы. В последующих версиях (Windows 7, 8, 10) механизм был доработан: уменьшено количество запросов для стандартных операций, введена возможность настройки уровня уведомлений, а также добавлена поддержка автоматического повышения привилегий для доверенных приложений.
¶Принцип работы
UAC основан на модели разделения привилегий, реализованной через два типа маркеров доступа (токенов) для каждого процесса:
- Стандартный маркер пользователя — предоставляет права, соответствующие обычной учётной записи (ограниченный доступ к системным ресурсам).
- Маркер администратора — предоставляет полные права администратора (доступ к защищённым системным областям).
При запуске приложения, если оно не помечено как требующее повышения привилегий, процесс получает стандартный маркер. Если программа пытается выполнить действие, требующее прав администратора (например, изменение системного реестра, установка драйвера, изменение настроек брандмауэра), UAC приостанавливает выполнение и выводит диалоговое окно с запросом подтверждения. Пользователь должен либо нажать «Да» (если он работает от имени администратора), либо ввести пароль учётной записи администратора (если он работает от имени стандартного пользователя). В случае отказа действие блокируется.
¶Уровни уведомлений
В Windows 10 и 11 существует четыре уровня уведомлений UAC, которые пользователь может настроить через панель управления:
- Всегда уведомлять (наивысший уровень) — запрос появляется при любом изменении системных параметров, включая действия самого пользователя и программ.
- Уведомлять, только когда приложения пытаются внести изменения (по умолчанию) — запрос отображается только при попытке программы выполнить административное действие, но не при изменении настроек пользователем через панель управления.
- Уведомлять, только когда приложения пытаются внести изменения (без затемнения рабочего стола) — аналогично предыдущему, но диалоговое окно не затемняет рабочий стол, что снижает безопасность (возможна атака «кликджекинг»).
- Никогда не уведомлять — UAC отключается полностью, все программы запускаются с полными правами администратора (не рекомендуется из соображений безопасности).
¶Классификация операций, требующих подтверждения
UAC запрашивает подтверждение для следующих категорий действий:
- Установка и удаление программ, драйверов, обновлений Windows.
- Изменение системных настроек (дата и время, параметры брандмауэра, настройки безопасности).
- Доступ к защищённым системным папкам (например,
C:\Windows,C:\Program Files). - Изменение реестра в ключах, защищённых от записи для стандартных пользователей.
- Запуск приложений, помеченных как требующие прав администратора (например, установщики
.msi,.exeс манифестомrequireAdministrator). - Изменение параметров учётных записей пользователей.
¶Влияние на безопасность
UAC является одним из ключевых компонентов системы безопасности Windows, направленным на предотвращение несанкционированного выполнения вредоносного кода. По данным Microsoft, внедрение UAC в Windows Vista снизило количество успешных атак, использующих повышение привилегий, на 60–70% по сравнению с Windows XP. Однако механизм не является абсолютной защитой: некоторые вредоносные программы могут обходить UAC, используя уязвимости в доверенных приложениях (например, в системных утилитах, запускаемых с повышенными привилегиями). Для повышения безопасности рекомендуется использовать UAC в сочетании с другими средствами защиты (антивирус, брандмауэр, обновления системы).
¶Критика
UAC подвергался критике за несколько недостатков:
- Избыточные запросы — в ранних версиях (Windows Vista) количество диалоговых окон было чрезмерным, что вызывало раздражение пользователей и приводило к отключению UAC.
- Сложность для неопытных пользователей — многие пользователи не понимают, какие действия требуют подтверждения, и могут случайно разрешить вредоносной программе выполнить изменения.
- Возможность обхода — некоторые атаки (например, «атака на основе DLL» или «BypassUAC») используют уязвимости в системных компонентах для запуска кода с правами администратора без запроса UAC.
- Отсутствие защиты от социальной инженерии — UAC не предотвращает запуск вредоносных программ, если пользователь сам подтверждает их выполнение (например, при установке фальшивого обновления).
¶Настройка и отключение
UAC можно настроить через панель управления (раздел «Учётные записи пользователей» → «Изменение параметров контроля учётных записей»). Полное отключение UAC (уровень «Никогда не уведомлять») не рекомендуется, так как это снижает уровень безопасности системы. В корпоративной среде настройки UAC могут управляться через групповые политики (например, параметр «Поведение запроса на повышение прав для администраторов в режиме одобрения администратором»). В Windows 10 и 11 также доступна настройка через реестр (ключ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA).
¶Применение в других операционных системах
Аналогичные механизмы контроля учётных записей существуют в других операционных системах:
- Linux — механизм
sudo(substitute user do) иpolkit(PolicyKit) позволяют временно повышать привилегии для выполнения отдельных команд. - macOS — система запрашивает пароль администратора для установки программ, изменения системных настроек и доступа к защищённым папкам.
- Android — запрос разрешений для приложений при доступе к конфиденциальным данным (например, контакты, камера, местоположение).
¶Интересные факты
- UAC был первоначально разработан для Windows Vista под кодовым названием «Windows Vista Security Center». В ранних сборках Vista механизм назывался «User Account Protection» (UAP), но позже был переименован.
- В Windows 7 и более поздних версиях UAC по умолчанию не запрашивает подтверждение для действий, выполняемых через панель управления (например, изменение даты и времени), что снижает количество уведомлений.
- В Windows 10 и 11 UAC интегрирован с системой Windows Defender, что позволяет автоматически блокировать подозрительные действия, не требующие подтверждения пользователя.
¶Источники
- Microsoft Docs. «User Account Control (UAC) Overview». Документация по Windows.
- Windows Security Center. «Understanding User Account Control». Техническая документация Microsoft.
- «Windows Vista Security Guide». Microsoft Corporation, 2007.
- «Windows 10 Security: A Guide to UAC and Other Features». TechNet Magazine, 2015.
- «User Account Control: How It Works and How to Configure It». Windows IT Pro, 2018.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →


