Файл: Руссинович М., Маргозис А. Утилиты Sysinternals. Справочник администратора 2012.pdf
Добавлен: 29.10.2018
Просмотров: 32992
Скачиваний: 742

Утилиты системы безопасности
Глава 8 277
AccessChk сообщает о всех ошибках при перечислении объектов и по-
лучении сведений системы безопасности. Добавьте в командную строку па-
раметр -u, чтобы отключить вывод этих сообщений. Скрыть текст «шапки»
списка AccessChk позволяет параметр -q.
AccessEnum
AccessEnum — это GUI-программа, облегчающая поиск файлов, папок и
разделов реестра с предположительно модифицированными разрешениями.
AccessEnum выводит не все разрешения и объекты, а только те, у которых
разрешения отличаются от разрешений родительских контейнеров. Так уда-
ется выявить точки, в которых набор разрешений был изменен, игнорируя
объекты, унаследовавшие данные изменения.
Например, иногда при попытке запустить приложение при отсутствии
прав администратора некоторые пользователи предоставляют группе Все
полный доступ к папке в Program Files, без прав администратора доступной
только для чтения. AccessEnum идентифицирует эту папку и показывает,
какие пользователи или группы имеют права доступа, отличные от прав до-
ступа к Program Files (рис. 8-2). В этом примере первая строка показывает
разрешения на доступ к C:\Program Files; вторая строка — вложенную пап-
ку, для которой у группы Все есть как минимум некоторые разрешения на
чтения и запись (а, возможно, и полный доступ); последние две папки не
доступны администраторам для записи.
Рис. 8-2. AccessEnum
Введите в текстовое поле вверху окна AccessEnum путь к папке или раз-
делу реестра. Вместо этого можно найти папку, щелкнув кнопку Directory,
или раздел реестра, щелкнув кнопку Registry. Чтобы начать проверку, щел-
кните кнопку Scan (Сканировать).
AccessEnum анализирует сведения об управлении доступом Windows в
поисках записей разрешений на чтение и запись, а также записей отзыва
этих разрешений. Найденный объект считается предоставляющим разреше-
ние на запись независимо от того, предоставляет ли он единственное разре-
шение (например, Write Owner) или полный набор разрешений на запись в
рамках полного доступа. Разрешения на чтение обрабатываются аналогич-
ным образом. Имена в столбце Deny отображаются, если пользователю или
SIN_ch_08.indd 277
27.12.2011 14:31:48

278 Часть
II
Работа с утилитами
группе явно отказано в доступе к объекту. Имейте в виду, что группе Все
запрещен просмотр содержимого «папок»-символических ссылок, описан-
ных в разделе об AccessChk. Программа AccessEnum выводит строку Access
Denied, если она не может прочитать дескриптор защиты объекта.
Сравнивая разрешения объекта и его контейнера, утилита AccessEnum
проверяет идентичность записей, для которых предоставлены либо отозва-
ны разрешения на чтение или запись. Если для файла предоставлено только
разрешение Write Owner, а для его контейнера —только Delete, указанные
разрешения считаются равноценными, поскольку допускают внесение из-
менений (т.е. запись) в объект.
AccessEnum сокращает число отображаемых учетных записей, имеющих
доступ к объекту, скрывая записи с разрешениями, дублирующими разре-
шения, уже назначенные группе, к которой принадлежит учетная запись.
Например, если файл доступен для чтения пользователю по имени Боб и
группе Маркетинг, и Боб является членом группы Маркетинг, то в списке
учетных записей, которым разрешено чтение, будет отображаться только
группа Маркетинг. Имейте в виду, что в режиме UAC Admin-Approval (только
в Windows Vista и выше) процессы, не имеющие повышенных привилегий и
запущенные членом группы Администраторы, но получившие расширенные
права доступа, могут быть не видны. Например, если пользователь Эбби вхо-
дит в группу Администраторы, AccessEnum покажет объекты, к которым пол-
ный доступ есть и у Эбби и у этой группы, как объекты, доступные без огра-
ничений группе Администраторы, даже если процессы, запущенные Эбби без
повышенных привилегий, также обладают полным доступом к объекту.
По умолчанию AccessEnum отображает только объекты, более доступные
по сравнению с их контейнерами. Чтобы увидеть объекты, разрешения на
доступ к которым отличаются от таковых к их контейнерам, щелкните меню
Options | File Display Options | Display Files With Permissions That Differ
From Parent (Параметры | Параметры отображения файлов | Отображать
файлы с разрешениями, отличными от родительских).
Поскольку права доступа, предоставленные учетной записи System и
другим служебным учетным записям, обычно не представляют интереса,
AccessEnum по умолчанию игнорирует их. Чтобы увидеть и эти разрешения,
выберите Show Local System And Service Accounts (Показать учетные за-
писи локальной системы и служб) в меню Options.
Щелкните заголовок столбца, чтобы отсортировать список по его содер-
жимому. Например, чтобы упростить поиск несанкционированно получен-
ных разрешений на запись, щелкните столбец Write и найдите элементы,
представляющие группу Все, а также и других пользователей и группы кро-
ме администраторов. Чтобы изменить порядок столбцов, перетащите столб-
цы на нужное место за заголовок.
Отыскав «сомнительное» разрешение, щелкните соответствующий эле-
мент правой кнопкой мыши, чтобы открыть контекстное меню AccessEnum.
Если этот элемент является файлом или папкой, щелчок Properties откроет
SIN_ch_08.indd 278
27.12.2011 14:31:48

Утилиты системы безопасности
Глава 8 279
диалоговое окно Explorer’s Properties (Свойства Проводника) для данного
элемента. Щелкните вкладку Security для просмотра или редактирования
разрешений на доступ к объекту. Если щелкнуть в контекстном меню Explore
(Проводник), откроется окно Проводника c данной папкой. Если элемент
является разделом реестра, щелчок пункта Explore откроет Regedit с этим
разделом, позволяя просматривать и редактировать его разрешения. Имейте
в виду, что в Windows Vista и выше программа AccessEnum сможет открыть
реестр в Regedit, только если она работает на том же IL, что и Regedit.
Можно скрыть один или несколько элементов, щелкнув их правой кноп-
кой и выбрав Exclude. Выбранный элемент и другие элементы, начинающи-
еся с той же строки, будут скрыты. Например, если исключить C:\Folder, то
C:\Folder\Subfolderwill также будет скрыт.
Щелкните кнопку Save, чтобы сохранить содержимое списка в текстовый
файл в кодировке Unicode с разделителями–знаками табуляции. Выберите
Compare To Saved (Сравнить с сохраненным) в меню File, чтобы отобра-
зить различия по разрешениям между текущим списком и ранее сохранен-
ным файлом. Эту функцию можно использовать для сравнения конфигура-
ции разных компьютеров.
ShareEnum
Такой аспект сетевой безопасности Windows, как защита общих файлов, ча-
сто недооценивают. Недостаточная защита постоянно создает проблемы с
безопасности, поскольку многие пользователи получают слишком большие
права на доступ к файлам на других компьютерах. Если при создании общих
файлов в Windows не задавали явно разрешения, по умолчанию группа Все
получала полный доступ. В дальнейшем эта группа стала получать только
доступ для чтения, но и в этом случае возможен несанкционированный до-
ступ к конфиденциальной информации.
В Windows нет утилит, отображающих все общие ресурсы в сети и их
уровень защиты. ShareEnum восполняет этот пробел, отображая все общие
файлы и принтеры в домене, диапазоне IP-адресов либо во всей сети для бы-
строго просмотра в табличном виде (рис. 8-3) и редактирования разрешений
на доступ к общим ресурсам.
Поскольку только администратор домена имеет возможность просматри-
вать все сетевые ресурсы, использование ShareEnum наиболее эффективно
при запуске из учетной записи администратора домена.
ShareEnum является GUI-программой и не принимает параметры ко-
мандной строки (кроме /accepteula). Выберите из раскрывающегося спи-
ска All domains (Все домены), чтобы проверить всю сеть, IP address range
(Диапазон IP-адресов), чтобы проверить диапазон IP-адресов, либо ука-
жите имя домена. Чтобы просканировать часть сети, щелкните Refresh
(Обновить). Если выбран пункт IP address range, компьютер запросит диа-
пазон IP-адресов для проверки.
SIN_ch_08.indd 279
27.12.2011 14:31:48

280 Часть
II
Работа с утилитами
Рис. 8-3. ShareEnum
Щелкните заголовок столбца, чтобы отсортировать список по данным
этого столбца. Чтобы изменить порядок столбцов, перетащите заголовки
столбцов на нужное место. ShareEnum отображает следующую информацию
об общих ресурсах:
• Share Path (Путь к общему ресурсу) Имя компьютера и общего ре-
сурса.
• Local Path (Локальный путь) Путь к ресурсу в файловой системе уда-
ленного компьютера.
• Domain Домен.
• Type (Тип) Указывает, является ли ресурс общим файлом (Disk), прин-
тером (Printer) или неизвестным ресурсом (Unknown).
• Everyone Разрешения на доступ к ресурсу у группы Все, разделенные
на категории «чтение», «запись», «чтение/запись», либо пустые поля,
если у группы Все нет разрешений.
• Other Read (Чтение для остальных) Пользователи, кроме членов
группы Все, которым предоставлено разрешение на чтение общего ре-
сурса.
• Other Write (Запись для остальных) Пользователи, кроме членов
группы Все, которым предоставлено разрешение на изменение или пол-
ный доступ к общему ресурсу.
• Deny Любые объекты, которым явно запрещен доступ к общему ре-
сурсу.
Щелкните кнопку Export, чтобы сохранить содержимое списка в тексто-
вый файл в кодировке Unicode с разделителями-табуляторами.
Выберите Compare To Saved в меню File, чтобы сравнить разрешения из
текущего списка и ранее экспортированного файла.
Для изменения разрешений общего ресурса щелкните его в списке
правой кнопкой и выберите Properties — ShareEnum откроет окно редак-
тора разрешений на доступ к общему ресурсу. Чтобы открыть общий файл
в Проводнике, щелкните его правой кнопкой и выберите Explore.
SIN_ch_08.indd 280
27.12.2011 14:31:48

Утилиты системы безопасности
Глава 8 281
ShellRunAs
В Windows XP и Windows Server 2003 можно запускать программу от имени
другой учетной записи, щелкнув ее правой кнопкой мыши в Проводнике,
выбрав команду Run As (Запуск от имени) в контекстном меню и введя
учетные данные в одноименном окне. Эту функцию часто использовали для
запуска программ от имени администратора из-под учетной записи обычно-
го пользователя. Начиная с Windows Vista, эта функция заменена командой
Run As Administrator (Запуск от имени Администратора), инициирующей
повышение привилегий UAC. Для тех, кто использовал Запуск от имени,
единственной альтернативой стала менее удобная консольная программа
Runas.exe. Для восстановления GUI-команды Запуск от имени я написал
совместно с Джоном Шварцем, членом команды разработчиков Windows,
программу ShellRunAs.
Примечание
Некоторые функции ShellRunAs «вернулись» в Windows 7. Если щел-
кнуть программу или ярлык правой кнопкой, удерживая клавишу Shift, в контекстное
меню будет добавлена команда Run As A Different User.
ShellRunAs позволяет запускать программу от имени другого пользова-
теля из контекстного меню, запрашивая имя и пароль этого пользователя
(рис. 8-4) или PIN-код его смарт-карты в системах, настроенных на вход с
помощью смарт-карты. ShellRunAs работает как Runas.exe, но имеет более
удобный графический интерфейс. Ни одна из функций ShellRunAs не тре-
бует наличия прав администратора и даже не регистрирует элементы кон-
текстного меню. ShellRunAs работает в Windows XP и выше.
Рис. 8-4. ShellRunAs запрашивает учетные данные
ShellRunAs также поддерживает параметр Runas.exe netonly, который не
поддерживался ранее графическим интерфейсом пользователя Windows.
С параметром netonly запускаемая программа использует контекст безопас-
ности запускающего ее пользователя для локального доступа, но для удален-
ного доступа использует альтернативные учетные данные (рис. 8-5). Имейте
в виду, что при запуске программы с параметром netonly окно консоли на
мгновение «мигает».
SIN_ch_08.indd 281
27.12.2011 14:31:48