Pull to refresh

UAC немного деталей

Здравствуйте уважаемые! Хотелось бы рассказать немного про один из механизмов защиты ОС.
Наверняка многие не по наслышке знаю что это такое, но надеюсь так же многие подчеркнут для себя что то новое из этого топика, и так приступим!


UAC (User Account Control) — это средство контроля пользовательских учетных записей, впервые появившийся в Windows Vista.
Главная задача UAC была — заставить всех работать как обычный стандартный системный пользователь, т.к. работа с правами администратора очень не безопасна. Все мы прекрасно знаем, что многие приложения с которыми мы работаем могут содержать «уязвимости» и их же часто используют злоумышленники. Соответственно работая это приложение с правами администратора (хотя за частую приложениям не требуются права такого уровня), может писать в системные папки абсолютно прозрачно для пользователя, чего нам собственно и не нужно. Для воизбежания подобных ситуаций собственно и был призван на помощь UAC.
Он не только защищает вас от злонамеренного кода, а так же в какой то мере оказывает совместимость со «старыми» приложениями. Он позволяет писать «старым» приложения в системные папки, а если быть точнее эти приложения просто так думают что пишут в системные папки, но на самом деле пишут в виртуализированные папки, в следствии чего приложения работают вполне корректно.

Как работает UAC ?

Собственно когда вы заходите в систему, создаются 2а маркера доступа: административный и обычный.
Административный лежит в загашнике, а вы работаете под обычным аккаунтом. Далее если вам потребуется повышение привилегий, возникает защищенный рабочий стол и внутри этой сессии вы делаете выбор «Да, я согласен» или «Отмена». Это сделано для предотвращения спуфинг атак. Если в систему заходит обычный пользователь, то для него административный маркер не создается, а только обычный. Затем если ему нужно повысить свои привилегии, снова появляется защищенный рабочий стол в котором запрашивается пароль административной учетной записи. После чего для приложения формируется административный маркер доступа. По завершению приложения, административный маркер доступа удаляется.

Виртуализация UAC

Хочу напомнить, что отключая user account control вы подвергаете всю систему опасности и превращаете вашу ОС в windows XP, а не просто отключаете надоедливые окошки.
При этом отключая UAC вы выключаете windows resource protection, который собирает все необходимые для «жизни» файлы в хранилище, что бы после критического сбоя восстановить поврежденные файлы.
Виртуализация осуществятся в режиме ядра.
* Файловая система: драйвером luafv.sys.
* Реестр: встроенными средствами.
Перенаправляемые каталоги системы:
\Program Files, \Windows, \Windows\System32.
Исключения: Системные *.exe и *.dll.
Перенаправляемые разделы реестра:
HKLM\Software
Исключения: Некоторые ключе подраздела Microsoft.
Приложение работающее с обычными правами, перенаправляет в:
* Запись:
\Users\\AppData\Local\Virtual Store
HKCU\Software\Classes\VirtualStore
Что совершенно прозрачно происходит для самого приложения, т.е. приложение продолжает думать что оно пишет к примеру в \Program Files.
* Чтение:
Сначала используется зона пользователя, затем глобальное расположение.

Повышение привилегий для определенного приложения:
* В свойствах ярлыка поставить галочку «Запускать от имени администратора».
* Эвристическим инсталлятором.
* Явным запросом пользователя.
* В манифесте.

Ну и в довершение неполный список действий, вызывающих сообщение User Account Control:

* Изменения в каталогах %SystemRoot% и %ProgramFiles% — в частности, инсталляция/деинсталляция ПО, драйверов и компонентов ActiveX; изменение меню «Пуск» для всех пользователей.
* Установка обновлений Windows, конфигурирование Windows Update.
* Перенастройка брандмауэра Windows.
* Перенастройка UAC.
* Добавление/удаление учётных записей.
* Перенастройка родительских запретов.
* Настройка планировщика задач.
* Восстановление системных файлов Windows из резервной копии.
* Любые действия в каталогах других пользователей.
* Изменение текущего времени (впрочем, изменение часового пояса UAC не вызывает).

Для написания данного топика использовался доклад Бешкова Андрея(Сотрудник microsoft), Википидия, собственные наблюдения.
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.