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

ВУЗ: Не указан

Категория: Книга

Дисциплина: Операционные системы

Добавлен: 29.10.2018

Просмотров: 32980

Скачиваний: 742

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

82  Часть 

II   

Работа с утилитами

Рис. 3-30.  Вкладка TCP/IP в Windows XP и в окне Thread Stack

Вкладка Security

Маркер процесса определяет его контекст защиты: базовое имя пользова-
теля, под записью которого работает процесс; группы, в которые входит эта 
запись, и ее привилегии в системе. Вкладка Security (рис. 3-31) отображает 
все эти сведения, а также показывает, включена ли для процесса виртуализа-
ция UAC для файлов и реестра, выводит также ID сеанса служб терминалов, 
в котором работает процесс. При выборе группы в списке Group под спи-
ском отображается идентификатор защиты (SID) выбранной группы.

Рис. 3-31.  Вкладка Security в окне свойств процесса

Обычно (особенно в случае «настольных» приложений) проверка прав 

доступа выполняются по маркеру процесса или (иногда) маркеру потока, 

SIN_ch_03.indd   82

27.12.2011   14:14:29


background image

Process Explorer  

Глава 3  83 

производному от маркера процесса. Таким образом, у маркера потока не 
может быть больше прав, чем у маркера процесса. Информация вкладки 
Security помогает найти причину успеха или неудачи различных операций.

Службы и серверные приложения могут олицетворять контекст защиты 

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

Не буду углубляться в устройство маркера, но дам несколько полезных 

советов, чтобы развеять некоторые распространенные заблуждения:
•  группа, для которой установлен флаг Deny (Запрет), равноценна от-

сутствию данной группы в маркере. Если активирован UAC, то группы 
с высоким уровнем прав, например Администраторы помечены флагом 
Deny-Only  (Только запрет), за исключением процессов с повышенны-
ми привилегиями. Флаг Deny говорит о том, что при наличии в списке 
управления доступом (ACL) объекта разрешающего доступ элемента 
(ACE) для группы Администраторы  этот элемент игнорируется, а при 
наличии ACE, запрещающего доступ Администраторам  (а не всем во-
обще), доступ будет запрещен;

•  привилегия, отмеченная флагом Disabled (Отключена), вовсе не счита-

ется отсутствующей. Напротив, если привилегия фигурирует в маркере, 
программа может активировать ее и использовать. Если же привилегия 
отсутствует вообще, процесс никак не сможет получить ее. Важно от-
метить, что в Windows Vista и выше ряд привилегий приравнивается к 
администраторским. Windows никогда не вносит эти привилегиям в мар-
керы обычных  пользователей;

•  если компьютер, подключенный к домену, не может связаться с контрол-

лером домена и не кешировал результаты прежних запросов разрешения 
SID в имя, он не может установить имена групп по их SID. В этом случае 
Procexp просто отображает SID;

•  SID группы Logon основан на случайном числе, сгенерированном в мо-

мент входа пользователя в систему. Одна из его функций — предостав-
ление доступа к специальным ресурсам сеанса служб терминалов. SID 
группы Logon всегда начинаются с S-1-5-5-.
Кнопка  Permissions  (Разрешения) отображает дескриптор защиты са-

мого объекта процесса, то есть показывает, кто какие действия может вы-
полнять с процессом.

Вкладка Environment

Вкладка  Environment (Окружение) отображает переменные окружения 
процесса и их значения. Процессы обычно наследуют свои переменные окру-

SIN_ch_03.indd   83

27.12.2011   14:14:30


background image

84  Часть 

II   

Работа с утилитами

жения от родительских процессов, и зачастую блоки переменных окружения 
всех процессов оказываются, в сущности, эквивалентными. Исключения 
возникают, когда:
•  родительский процесс может определять другой набор переменных окру-

жения для дочернего процесса;

•  процесс добавляет, удаляет или изменяет свои переменные окружения 

(это может каждый процесс);

•  не все процессы (особенно консольные программы) принимают широ-

ковещательные сообщения, оповещающее работающие процессы об из-
менении конфигурации переменных окружений системы, поэтому не все 
процессы вносят эти изменения в свои блоки переменных окружения.

Вкладка Strings

Вкладка Strings (Строки) в окне свойств процесса (рис. 3-32) показывает 
все последовательности из трех и более пригодных для печати знаков, най-
денных в образе процесса; подробнее про отображение строк рассказывается 
выше в этой главе. 

Рис. 3-32.  Вкладка Strings в окне свойств процесса

Вкладка Services

Службы Windows работают в процессах (как правило, неинтерактивных), 
которые можно настроить так, чтобы они запускались независимо от входа 
в систему пользователя, а также для управления через стандартный интер-
фейс SCM (Диспетчера управления службами). Возможен запуск несколь-
ких служб в одном процессе, типичным примером является Svchost.exe, раз-
работанный специально для хостинга нескольких служб, реализованных в 
отдельных DLL.

SIN_ch_03.indd   84

27.12.2011   14:14:30


background image

Process Explorer  

Глава 3  85 

Если выбранный процесс содержит одну или несколько служб, в окно 

свойств процесса добавляется вкладка Services (рис. 3-33). Список на этой 
вкладке содержит внутренние и отображаемые имена каждой службы, а так-
же служб, содержащихся в процессах Svchost.exe, и пути к их DLL. При вы-
боре службы в списке ниже открывается ее описание. 

Рис. 3-33.  Вкладка Services в окне свойств процесса

Для отдельных служб можно разрешать либо запрещать остановку, прио-

становку и возобновление работы. Procexp отображает кнопки Stop, Pause и 
Resume
, если данные операции разрешены для выбранной службы.

Кнопка  Permissions отображает окно редактора защиты и позволяет 

просматривать и изменять разрешения для службы. Отдельные разреше-
ния для служб включают Start (Пуск), Stop (Остановка), Pause/Resume 
(Пауза/Возобновление)
, Query Status (Запрос состояния), Query Config 
(Запроса конфигурирования)
, Change Config (Изменение конфигура-
ции)
, Interrogate (Опрос), Enumerate Dependents (Перечисление зависи-
мостей)
, User-Defined Control (Управление пользователем), а также стан-
дартные  Read (Чтение), Change Permissions (Изменение разрешение) и 
Change Owner (Смена владельца)
.

 Внимание! 

Предоставив разрешение Write (даже без прав администратора) либо от-

дельных разрешений Change Config, Change Permissions или Change Owner какой-либо 
службе позволит постороннему без труда получить полный администраторский доступ 
к компьютеру.

Вкладки .NET

Если выбранный процесс использует .NET Framework, Procexp добав-
ляет в окно свойств процесса вкладки .NET. Вкладка .NET Performance 
(Производительность .NET) 
(рис. 3-34) отображает домены приложений 

SIN_ch_03.indd   85

27.12.2011   14:14:30


background image

86  Часть 

II   

Работа с утилитами

в процессе и данные девяти наборов счетчиков производительности .NET. 
Выберите объект производительности из раскрывающегося списка (напри-
мер, .NET CLR Data, Exceptions, Interop, Memory или Security) — в списке 
ниже откроется набор текущих счетчиков объекта.

Рис. 3-34.  Вкладка .NET Performance в окна свойств процесса

Когда Procexp работает с правами администратора в Windows Vista и 

выше, на вкладке .NET Assemblies (Сборки .NET) (рис. 3-35) отображают-
ся все домены приложений в процессе, включая дерево имен загруженных 
в них сборок. Справа от имени Procexp показывает флаги и полный путь к 
исполняемому образу сборки. Для получения этой информации Procexp ис-
пользует недокументированные события .NET ETW.

Рис. 3-35.  Вкладка .NET Assemblies в окне свойств процесса

SIN_ch_03.indd   86

27.12.2011   14:14:31