Защита системных файлов с помощью виртуализации Uac
Когда стандартный пользователь входит в компьютер 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\Param eters\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. Дополнение функции ‘Файлы совместимости (Compatibility Files)’ в меню Windows Explorer появляется только при наличии виртуальных файлов. Новая опция меню появляется только для тех папок, которые содержат виртуальные папки или файлы. Когда опция Compatibility Files в меню выбрана, она направит окно Windows Explorer к виртуальным файлам и содержащим их папкам. опция меню Compability Files открывает папку VirtualStore, расположенную в профиле пользователей. Как видно из рисунка 2, это <username>\AppData\VirtualStore. Заключение Все знают, что приложения, работающие на компьютерах Windows неудачно построены. Основной причиной этого является запись приложений в защищенные системные файлы, папки и директории реестра. Это требует, чтобы пользователь имел права локального администратора или чтобы было использовано другое решение. Включение пользовательских учетных записей в группу локальных администраторов в целях возможности успешно запускать приложения, не является хорошим решением. В зависимости от того, как построено приложение, UAC виртуализация файлов и реестра представляет собой отличное решение. Файлы и записи реестра, которые должны были расположиться в этих защищенных местах системы, просто виртуализируются и располагаются в личном профиле пользователя. Это помогает защитить систему и сеть и в то же время позволяет пользователям запускать свои приложения. |
Текущее время: 03:12. Часовой пояс GMT +3. |
Powered by vBulletin® Version 3.8.9 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot