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

Process Monitor
Глава 4 107
на рис. 4-2, поля сгруппированы по разделам: Application Details (Сведения
о приложениях), Event Details (Сведения о событиях) и Process Mana-
gement (Управление процессами).
Раздел Application Details содержит статическую информацию, которая
определяется при запуске процесса и не изменяется до его завершения, на-
пример путь к образу, командная строка и тип архитектуры.
Раздел Event Details содержит информацию о конкретном событии.
Помимо полей по умолчанию, выводятся:
• Sequence Number на текущей странице.
• Event Class: реестр, файловая система, сеть, процесс, трассировка.
• Category (если есть): чтение, запись, чтение и запись метаданных.
• Relative Time прошедшее от запуска Procmon или последней очистки
экрана до операции.
• Duration операции в секундах. Для событий трассировки потоков это
сумма времени ядра и времени пользователя, затраченных потоком с
момента предыдущего события трассировки. Для событий трассировки
процесса эта величина установлена в ноль (см. ниже).
Раздел Process Management содержит следующую информацию о про-
цессе:
• User Name Участник системы безопасности, под учетной записью кото-
рого исполняется процесс.
• Session ID Сеанс служб терминалов, в котором работает процесс. Служ-
бы всегда работают в сеансе 0 (см. главу 2).
• Integrity Уровень целостности (IL) процесса, выполняющего операцию
(только в Windows Vista и выше).
• Thread ID Идентификатор потока, выполняющего операцию, отобра-
жается как «TID».
• Virtualized Показывает, включена ли виртуализация UAC для процесса,
выполняющего операцию (только в Windows Vista и выше). Не путайте
эту виртуализацию с виртуализацией приложений и компьютеров.
Диалог Event Properties
Для получения более подробной информации о событии дважды щелкни-
те запись события — откроется окно Event Properties
(Свойства события).
При нажатии Ctrl+K
это окно
открывается с вкладкой Stack. Это окно — не
модальное, поэтому можно работать с главным окном Procmon, не закрывая
это окно, а также открывать сразу несколько таких окон. Можно также из-
менять размеры окон и раскрывать их на весь экран.
Кнопки со стрелками (рис. 4-3) позволяют прокручивать список собы-
тий. Если вы установите флажок Next Highlighted (Следующее выделен-
ное), щелчок кнопки со стрелкой откроет следующее выделенное (см. ниже)
событие.
SIN_ch_04.indd 107
27.12.2011 14:16:24

108 Часть
II
Работа с утилитами
Рис. 4-3. Кнопки навигации в диалоговом окне Event Properties
Щелчок кнопки Copy All (Копировать все) приводит к копированию со-
держимого текущей вкладки в буфер обмена как обычного текста.
Вкладка Event
Вкладка Event в диалоговом окне Event Properties (рис. 4-4) отображает
следующую информацию о событии: дату и время, идентификатор потока,
класс события, операцию, результат, путь и длительность. Под горизонталь-
ной строкой находится информация об отдельных операциях. Та же инфор-
мация есть и в поле Details, однако здесь она представлена в более удобной
форме.
Табл. 4-3. Атрибуты файлов в поле Details
Атрибут
Значение
A
Архивный файл или каталог. Приложения обычно используют данный
атрибут для резервирования или удаления файлов
C
Сжатый файл или каталог. Содержимое файлов сжато, новые файлы
и вложенные каталоги в таких каталогах сжимаются по умолчанию
D
Объект является каталогом или устройством
E
Зашифрованный файл или каталог. Потоки файлов зашифрованы,
новые файлы и вложенные каталоги в таких каталогах шифруются
по умолчанию
H
Скрытый файл или каталог. Не включен в стандартный список каталогов
N
Файл, не имеющий других атрибутов. Используется только в одиночку
NCI
Файл или каталог не индексируется службой индексирования
0
Данные файла в настоящее время недоступны (файл перенесен в авто-
номное хранилище). Используется программой Remote Storage
R
Файл доступен только для чтения. Приложения могут читать его, но не
могут записывать или удалять. Этот атрибут игнорируется для каталога
RP
Файл или каталог, с которым связана точка повторного разбора либо
файл с символической связью
S
Файл или каталог, который сообща либо монопольно используется
операционной системой
SF
Разреженный файл
T
Временный файл. Файловые системы не сбрасывают данные на нако-
питель при наличии достаточного объема кеш-памяти, т.к. приложение
обычно удаляет временный файл после закрытия его описателя.
При использовании временного файла система может обойтись вовсе
без записи, в противном случае после закрытия описателя файла данные
записываются
SIN_ch_04.indd 108
27.12.2011 14:16:24

Process Monitor
Глава 4 109
На рис. 4-4 изображена попытка выполнения операции CreateFile в кор-
невом каталоге диска C, результат которой — Access Denied. Подробности со-
держат требуемый доступ. Строка Disposition (Расположение) показывает,
что в случае успешного завершения операции был бы открыт существую-
щий объект, а не создан новый. Строка ShareMode показывает, что доступ
не является эксклюзивным, и другие процессы могут открывать объект для
чтения, записей и удаления. Очевидно, что эти детали относятся к операции
CreateFile и не имеют отношения, например, к операции Load Image (Если
ширина текста слишком большая для дисплея, можно уменьшить размер
шрифта или увеличить диалоговое окно. Можно также выбрать Копировать
все либо щелкнуть правой кнопкой мыши диалоговое окно Details, выде-
лить все и копировать, а затем вставить текст в другом месте).
Рис. 4-4. Вкладка Event в диалоговом окне Event Properties
Вкладка Process
Вкладка Process диалогового окна Event Properties (рис. 4-5) отображает
подробную информацию о генерации выбранного события на момент его
возникновения.
Вкладка Process содержит следующую информацию:
• Значок приложения, извлеченный из образа процесса (или значок по
умолчанию, если у образа его нет).
• Описание, имя компании и версия файла, извлеченные из информацион-
ного ресурса образа.
• Имя процесса.
• Путь к файлу исполняемого образа.
• Командная строка, которая использовалась для запуска данного процесса.
SIN_ch_04.indd 109
27.12.2011 14:16:24

110 Часть
II
Работа с утилитами
• ID процесса и ID процесса-предка, запустившего его.
• ID сеанса служб терминалов, в котором работает данный процесс.
• Учетная запись пользователя, под которой работает процесс.
• Идентификатор аутентификации (Auth ID) для маркера процесса. Иден-
тификатор аутентификации — это локально уникальный идентификатор
(LUID), идентифицирующий сеанс LSA, создавший маркер доступа для
данного процесса. (LUID — это сгенерированное системой 64-разрядное
значение, гарантированно уникальное в течение сеанса, в котором оно
было сгенерировано). Подробнее об утилите LogonSessions, регистриру-
ющей активные сеансы входа LSA, см. в главе 8.
• Время начала и время завершения процесса (если оно зарегистрирова-
но).
• Архитектура (32- или 64-разрядная).
• Активированы ли UAC и виртуализация реестра для данного процесса
(только в Windows Vista и выше).
• Уровень целостности процесса (только в Windows Vista и более поздних
версиях).
• Список модулей (исполняемых образов), загруженных в адресное про-
странство процесса на момент данного события. В недавно запущенном
процессе список будет пустым до тех пор, пока какие-либо события Load
Image не загрузят exe-файл, Ntdll.dll или другие модули.
Рис. 4-5. Вкладка Process в диалоговом окне Event Properties
Вкладка Stack
Вкладка Stack диалогового окна Event Properties (рис. 4-6) показывает стек
вызовов потока в момент регистрации события. По стеку можно определить
SIN_ch_04.indd 110
27.12.2011 14:16:25

Process Monitor
Глава 4 111
причину события и отвечающего за него компонента. Чтобы понять, что та-
кое стек вызовов и как настроить Procmon для максимального отображения
информации, которую можно от него получить, см. раздел «Стеки вызовов
и символы» Главы 2.
Каждая строка представляет один фрейм стека и содержит пять полей:
• Frame Отображает номер фрейма, а также букву K для фрейма в режи-
ме ядра или U для фрейма режима пользователя (фреймы стека в поль-
зовательском режиме не записываются в 64-разрядных версиях Windows
до Windows Vista SP1 и Windows Server 2008).
• Module Имя файла, содержащего код, исполняемый в данном фрейме.
• Location Адрес кода внутри модуля, где исполняется код. Если име-
ются символы, указывается имя функции и смещение от начала данной
функции. Если есть и исходный код, выводится путь к нему и номер
строки. Если символы недоступны, но модуль имеет таблицу экспорта,
выводится ближайшая предшествующая экспортированная функция со
смещением относительно нее. Если ни символы, ни экспортированные
функции не доступны, выводится смещение от базового адреса модуля в
памяти (см. главу 2).
• Address Адрес команды в виртуальном адресном пространстве испол-
няемого процесса.
• Path Полный путь к файлу, указанному в поле Module. Если окно име-
ет размер по умолчанию, придется прокрутить или изменить его размер,
чтобы увидеть это поле, по которому можно определить, какая версия
DLL исполняется.
Рис. 4-6. Вкладка Stack в диалоговом окне Event Properties
SIN_ch_04.indd 111
27.12.2011 14:16:25