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

Process Monitor
Глава 4 117
Procmon может устанавливать все правила фильтра для одного атрибута, а
также добавлять один и тот же фильтр для различных атрибутов. Например,
если выбрать Process Name, Include для значений Notepad.exe и Cmd.exe,
а для элемента Path — команду Include с значением C:\Windows, Procmon
отобразит только события, связанные с путем C:\Windows, сгенерированные
блокнотом и командной строкой, прочие события отображаться не будут.
Вот еще один эффективный способ добавления критериев фильтра: щел-
кните событие правой кнопкой мыши и выберите критерии из контекстного
меню. На рис. 4-12 изображено только контекстное меню из рис. 4-8 с до-
ступными вариантами.
В контекстном меню доступны «быстрые фильтры» для текущего па-
раметра. Например, у четвертого и пятого объектов на рис. 4-12 отобража-
ются «быстрые фильтры» Include и Exclude для пути реестра HKCR\.exe\
OpenWithProgids. Параметр Exclude Events Before (Исключить события
до) скрывает все события, предшествующие выбранному, добавляя правило,
основанное на атрибуте события Date & Time (Дата и время). Аналогичным
образом параметр Exclude Events After (Исключить события после) скры-
вает все события, следующие за выбранным. Наконец, подменю Include и
Exclude (см. второй и третий объекты снизу) содержат наиболее востребо-
ванные атрибуты фильтров. Выберите имя атрибута в одном из этих под-
меню, и к текущему фильтру добавится соответствующее значение. Также
можно создать фильтр по группе одновременно выбранных событий. Для
этого нужно щелкнуть правой кнопкой мыши события и выбрать имя атри-
бута из подменю Include или Exclude. В результате будет создан фильтр, вы-
деляющий уникальные значения, содержащиеся в выбранных событиях.
Рис. 4-12. Контекстное меню из рис. 4-8
Эти способы настройки фильтра можно комбинировать. Допустим, нуж-
но отфильтровать процессы, имеющие доступ к разделу реестра HKCR\
CLSID\{DFEAF541-F3E1-4C24-ACAC-99C30715084A} и его подразделам.
Для начала выберите фильтр «begins with». Чтобы обойтись без длитель-
ного ввода с клавиатуры и нудных операций копирования-вставки, найди-
SIN_ch_04.indd 117
27.12.2011 14:16:27

118 Часть
II
Работа с утилитами
те событие для данного раздела, щелкните его правой кнопкой и выберите
Include HKCR\CLSID\{DFEAF541-F3E1-4C24-ACAC-99C30715084A} —
будет создан фильтр по значению Path. Теперь нажмите Ctrl + L, чтобы от-
крыть диалоговое окно Filter, дважды щелкните новые критерии, чтобы пе-
реместить их из списка в список правил, замените «is» на «begins with», при
необходимости отредактируйте путь, щелкните Add, затем ОК.
Диалоговые окна Process Tree (Дерево процессов) и Summary (Сводка),
описываемые далее в данной главе, также поддерживают настройку фильт-
ров.
Procmon запоминает последний установленный фильтр и открывает окно
Filter перед началом захвата событий при следующем запуске. Вы сможете
сохранить, отредактировать или изменить фильтр перед захватом данных.
Этот шаг можно пропустить, запустив Procmon с параметром командной
строки /Quiet. Можно автоматически очистить фильтр при запуске с помо-
щью параметра командной строки /NoFilter (подробнее об этом — ниже).
Настройка подсветки
Если фильтрация скрывает лишние события, то подсветка подчеркивает
нужные события в списке. По умолчанию события подсвечиваются ярко-
синим фоном. Можно изменять цвета текста и фона, выбрав Highlight Colors
(Цвета подсветки) в меню Options.
Настройка подсветки практически аналогична настройке фильтров.
Чтобы открыть диалоговое окно Highlight (Подсветка), нужно нажать
клавиши Ctrl + H или щелкнуть значок Highlight на панели инструментов.
Диалоговое окно Highlight работает точно так же, как и диалоговое окно
Filter. Контекстное меню выбранных событий содержит те же параметры,
что и для фильтров.
Диалоговое окно Event Properties, описанное ранее в этой главе, по-
зволит вам увидеть следующий или предыдущий объект в списке событий.
Установив флажок Next Highlighted, вы можете перейти к следующему или
предыдущему событию.
Расширенный вывод
По умолчанию Procmon скрывает события, не важные для устранения непо-
ладок приложений:
• события, генерируемые самим Procmon;
• события, генерируемые системными процессами;
• события трассировки;
• низкоуровневые операции, имена которых начинаются с IRP MJ (пакеты
запросов ввода-вывода, используемые драйверами Windows, устройств
ввода-вывода, устройств PnP и в прочих функциях ввода-вывода);
• низкоуровневые операции, имена которых начинаются с FASTIO. Они
аналогичны пакетам запросов ввода-вывода, но, в отличие от них, ис-
SIN_ch_04.indd 118
27.12.2011 14:16:27

Process Monitor
Глава 4 119
пользуются системой ввода-вывода и используют драйвер файловой си-
стемы или диспетчер кеша для завершения запроса ввода-вывода;
• результаты, начинающиеся с FASTI0, например, FASTI0 DISALLOWED;
• деятельность, связанная с системным файлом подкачки;
• активность диспетчера NTFS и MFT.
Установка флажка Advanced Output (Расширенный вывод) в меню
Filter снимает все эти исключения (кроме событий трассировки) и отобра-
жает имена уровня драйвера для операций файловой системы. Например,
операция, отображаемая как CreateFile в основном режиме, в расширенном
режиме отображается как IRP MJ CREATE. Если снять флажок Advanced
Output, все имена вернутся к исходному виду.
При установке флажка Advanced Output функция Reset Filter удаляет
все правила фильтра, кроме правила, исключающего события трассировки.
Чтобы отслеживать всю деятельность системы, сохранив стандартные
имена событий, удалите фильтры по умолчанию, не включая расширенный
вывод.
Сохранение фильтров
Созданный фильтр можно сохранить. Это позволит вам быстро загружать
и применять сложные фильтры, а также легко переключаться с одного на-
бора фильтров на другой. Кроме того, можно экспортировать сохраненные
фильтры и импортировать их в другую систему или другую учетную запись
пользователя.
Для сохранения фильтра выберите Filter | Save Filter и введите его имя,
как показано на рис. 4-13. Procmon предлагает по умолчанию имена Filter 0,
Filter 1 и т. д. Можно также выбрать более информативное имя, например,
«Операции записей IE».
Рис. 4-13. Диалоговое окно Save Filter
Для загрузки и применения сохраненного фильтра выберите его в меню
Filter | Load Filter. Фильтры располагаются в меню в алфавитном порядке
(см. рис. 4-14).
Фильтры можно переименовывать и удалять с помощью диалогового
окна Organize Filters (Управление фильтрами), как показано на рис. 4-15.
Выберите Organize Filters в меню Filter. Чтобы экспортировать фильтр, вы-
берите его из списка, щелкните кнопку Export (Экспорт) и укажите рас-
положение файла. Procmon использует расширение *.PMF для идентифи-
кации файлов своих фильтров. Чтобы импортировать фильтр щелкните
Import (Импорт) и выберите ранее экспортированный фильтр.
SIN_ch_04.indd 119
27.12.2011 14:16:27

120 Часть
II
Работа с утилитами
Рис. 4-14. Меню Load Filter
Обратите внимание на то, что сохраненные и экспортируемые фильтры
записывают только правила фильтров. Правила подсветки можно сохранять
только путем экспорта конфигурации Procmon (включающей также прави-
ла фильтров), более подробно об этом — ниже.
Рис. 4-15. Диалоговое окно Organize Filters
Дерево процессов
Если нажать клавиши Ctrl+T или щелкнуть кнопку Process Tree (Дерево
процесса) на панели инструментов, откроется окно Process Tree (рис. 4-16).
Оно отображает в виде дерева все процессы, фигурирующие в загруженной
трассировке, как в Procexp. Элементы дерева процессов можно сворачивать
и разворачивать, щелкая значки со знаком (+) или (–) слева от процессов-
предков, либо выбирая узлы и нажимая клавиши правой и левой стрелок.
Предки процессов, расположенных по левой стороне, не генерировали со-
бытия в трассировке.
Каждое имя процесса находится рядом с соответствующим значком при-
ложения. Значок недоступен, если процесс завершился во время трассировки.
Для отображения только процессов, работавших в конце текущей трассиров-
ки, установите соответствующий флажок в верхней части диалогового окна.
Строка в нижней части окна отображает информацию о процессе, вклю-
чая его идентификатор, описание, путь, командную строку, время начала и
SIN_ch_04.indd 120
27.12.2011 14:16:27

Process Monitor
Глава 4 121
завершения (если имеется), имя компании и учетную запись, под которой
работает процесс. Эта информация отображается и в самой таблице, вместе
с графическим представлением временной шкалы работы процесса.
Рис. 4-16. Диалоговое окно Process Tree
Колонка Life Time (Время жизни) отображает временную шкалу процес-
са относительно трассировки или сеанса, в зависимости от того, выбран ли
параметр Timelines Cover Displayed Events Only (Шкала только для ото-
бражаемых событий). Если данный параметр выбран, выводится зеленая
полоса от одного края столбца до другого, свидетельствующая, что процесс
уже работал в момент начала трассировки и продолжил работать после ее
завершения. Зеленая строка, продолжающаяся справа (см., например, по-
следний элемент дерева на рис. 4-16), показывает относительное время
работы процесса после начала трассировки. Более темная зеленая поло-
са показывает процесс, завершившийся во время трассировки, по ее длине
можно судить о моменте его завершения. Если же параметр Timelines Cover
Displayed Events Only не выбран, времена жизни процессов отсчитываются
относительно сеанса работы системы: зеленая полоса у левого края поля по-
казывает процесс, работавший с момента запуска системы или запущенный
вскоре после него.
Помимо графического изображения «родства» процессов, в т. ч. завер-
шенных, Process Tree помогает выявлять нестандартные события, напри-
мер процессы, которые постоянно создаются и тут же завершаются.
Если выбрать процесс из дерева и щелкнуть кнопку Include Process
, то к
фильтру с выбранным ID процесса будет добавлено правило «PID is». Если
щелкнуть кнопку Include Subtree (Включить ветвь дерева), то для выбранно-
го процесса и всех его потомков будет добавлено правило фильтра «PID is».
Чтобы найти событие в трассировке, выберите процесс в дереве и щел-
кните Go To Event (Перейти к событию) — procmon найдет и выберет пер-
вое событие в трассировке, видимое в главном окне. Обратите внимание:
SIN_ch_04.indd 121
27.12.2011 14:16:27