Поиск на сайте: Расширенный поиск


Новые программы oszone.net Читать ленту новостей RSS
CheckBootSpeed - это диагностический пакет на основе скриптов PowerShell, создающий отчет о скорости загрузки Windows 7 ...
Вы когда-нибудь хотели создать установочный диск Windows, который бы автоматически установил систему, не задавая вопросо...
Если после установки Windows XP у вас перестала загружаться Windows Vista или Windows 7, вам необходимо восстановить заг...
Программа подготовки документов и ведения учетных и отчетных данных по командировкам. Используются формы, утвержденные п...
Red Button – это мощная утилита для оптимизации и очистки всех актуальных клиентских версий операционной системы Windows...
OSzone.net Microsoft Windows Vista Безопасность Защита системных файлов с помощью виртуализации UAC RSS

Защита системных файлов с помощью виртуализации UAC

Текущий рейтинг: 4.05 (проголосовало 43)
 Посетителей: 24774 | Просмотров: 35951 (сегодня 0)  Шрифт: - +
Когда стандартный пользователь входит в компьютер Windows, есть некоторые действия и деятельность, которые нужно защитить. Эта защита не всегда успешна, поскольку некоторые версии Windows не защищают общую систему так, как хотелось бы. Действия, которые нужно защитить, включают в себя изменения и записи в системные папки и системные расположения в реестре. Это необходимо для защиты общей стабильности и безопасности ОС. Windows Vista предоставляет отличное решение для помощи в защите этих ключевых областей системы. Vista использует управление пользовательскими учетными записями (User Account Control) и виртуализацию для обеспечения защиты и безопасности. В этой статье будет рассмотрено, как UAC использует виртуализацию для защиты системы.

Историческое поведение приложений бизнеса (LOB)

Директория программных файлов (Program Files) (обычно расположенная на C:\Program Files и обозначаемая %ProgramFiles%) является тем каталогом, где в большинстве производственных сценариев хранятся исполняемые файлы приложений. Параметры LOB приложений хранятся в ключе HKEY_LOCAL_MACHINE\Software в системном реестре в большинстве случаев. Большинство из этих мест защищено ОС, то есть системе и администратору разрешен доступ с записью, а пользователям дан доступ только чтения и выполнения.

LOB приложения должны разрабатываться так, чтобы записывать в указанную пользователем папку данных приложения, которая расположена в профиле пользоваться. Обычно она располагается в C:\Users\<username>\AppData и обозначается %AppData%. Если есть какие-то специфические пользовательские параметры, которые необходимо хранить, они должны располагаться в ключе реестра HKEY_CURRENT_USER\Software. Оба этих расположения созданы для каждого отдельного пользователя и защищены так, что лишь этот пользователь имеет доступ к данным, которые записаны по умолчанию.

Однако многие (я бы даже сказал БОЛЬШИНСТВО) LOB приложения сделаны не в соответствии с вышеописанной технологией. Вместо этого они хранят специфичные для пользователя данные в папке %ProgramFiles% и в HKEY_LOCAL_MACHINE\Software. К сожалению, обычные пользователи не имеют доступа для записи в эти директории, что заставило многие компании добавлять обычных пользователей в группы локальных администраторов, чтобы они могли выполнять эти приложения. Конечно, это не идеальное решение, так как пользователь в таком случае может изменять что угодно на компьютере, а не только определенные параметры LOB приложения в этих директориях системы.

Специфика виртуализации UAC

Поскольку LOB не легко изменить, и тем не менее пользователям необходимо выполнять эти приложения, Vista использует другой подход для решения этой проблемы. В Vista, UAC протягивает руку помощи, виртуализируя файловую систему и пространство имен системного реестра. UAC виртуализирует наследственные приложения, позволяя стандартному пользователю оставаться «стандартным пользователем» и в то же время выполнять приложения. Определение наследственного в этом случае включает тридцати двух разрядные процессы, работающие без административных привилегий, и не включает явный файл Windows Vista. Если процесс или операция не отвечает этим критериям, он(а) не виртуализируется. Следующие процессы и операции также не виртуализируются:

  • Стандартные приложения Vista
  • Файлы с такими исполняемыми расширениями, как .EXE, .BAT, .VBS и .SCR. Можно добавлять дополнительные исключения расширения файлов в HKLM\System\CurrentControlSet\Services\Luafv\Parameters\ExcludedExtensionsAdd
  • 64-разрядные приложения и процессы
  • Приложения с запрошенной директивой уровня исполнения (Execution Level directive) в своем исполняемом проявлении, как большинство исполняемых файлов Vista
  • Процессы или приложения, работающие с правами администратора
  • Приложения в режиме Kernel
  • Операции, не имеющие происхождения в интерактивных сеансах, такие как совместное использование файлов
  • Приложения, изменяющие ключ реестра флажком Don't_Virtualize (не виртулизировать)

Виртуализация файловой системы и реестра, конечно, не распространена на всю систему. Есть лишь ограниченное количество мест, которые виртуализируются, и все они необходимы для работы и безопасности ОС. Вот практически полный список расположений, которые виртуализируются:

  • \Program Files и подпапки
  • \Program Files (x86) на 64-разрядных системах
  • \Windows и все подпапки, включая System32
  • \Users\%AllUsersProfile%\ProgramData
  • \Documents and Settings (symbolic link)
  • HKLM\Software

Верификация UAC виртуализации

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

Первый указатель находится в интерфейсе проводника Windows Explorer GUI. В зависимости от того, какая папка или файлы были виртуализированы, появляются дополнительные опции меню в Windows Explorer. На рисунке 1 показано, что отображает Windows Explorer, когда у вас есть виртуализированные файлы в папке C:\Windows.

*
Увеличить

Рисунок 1: Выделенное красное поле указывает, что есть виртуальные файлы

Дополнение функции ‘Файлы совместимости (Compatibility Files)’ в меню Windows Explorer появляется только при наличии виртуальных файлов. Новая опция меню появляется только для тех папок, которые содержат виртуальные папки или файлы.

Когда опция Compatibility Files в меню выбрана, она направит окно Windows Explorer к виртуальным файлам и содержащим их папкам. Рисунок 2 демонстрирует, как выглядит содержимое этих виртуальных файлов и папок.

*
Увеличить

Рисунок 2: Опция Compatibility Files в меню хранится в папке VirtuaStore

Как видно, опция меню Compability Files открывает папку VirtualStore, расположенную в профиле пользователей. Как видно из рисунка 2, это <username>\AppData\VirtualStore.

Заключение

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

Автор: Дерек Мелбер  •  Иcточник: winsecurity.ru  •  Опубликована: 19.01.2009
Нашли ошибку в тексте? Сообщите о ней автору: выделите мышкой и нажмите CTRL + ENTER


Оценить статью:
Вверх
Комментарии посетителей
08.02.2009/13:19  DEMO23

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