Лабораторная работа Ревизия 3 2 История изменений
![]()
|
34. ProcDump ProcDump - утилита командной строки, которая может перехватывать дампы процесса в зависимости от результатов деятельности или поведения триггеров. С помощью ProcDump можно указать, сколько ресурсов центрального процессора должен занимать процесс и, какое время должно пройти, прежде чем ProcDump создаст дамп процесса. Администратору не обязательно присутствовать у консоли, чтобы выдать команду, когда процесс в очередной раз повысит нагрузку на центральный процессор. Необходимо определить порог потребления ресурсов центрального процессора, прежде чем ProcDump сформирует дамп процесса. Например, замечено, что wmiprvse.exe (процесс WMI Provider Host) в произвольные моменты времени занимает до 90% ресурсов центрального процессора, и нужно получить несколько дампов для анализа. Следующая команда записывает дамп процесса диспетчера очереди печати три раза, когда потребление ресурсов центрального процессора программой wmiprvse.exe достигает или превышает 90% в течение трех секунд, и сохраняет дамп в заранее подготовленном каталоге c:procdumps: c:procdump.exe -c 80-s 3-n 3 wmiprvse.exe c:procdumps Параметр -c задает порог нагрузки центрального процессора. Параметр -s указывает, в течение какого времени служба должна занимать ресурсы центрального процессора на пороговом уровне, прежде чем начнется формирование дампа. Параметр -n указывает, сколько дампов нужно создать, а wmiprvse.exe — имя процесса, который предстоит отслеживать. 29 Поэтому в предшествующей команде дамп для службы WMI Provider Host будет записываться каждый раз, когда процесс занимает более 80% ресурсов центрального процессора в течение трех и более секунд. Файлы дампов будут храниться в каталоге c:procdumps. Имя файлам дампов назначается в формате ИМЯПРОЦЕССА_ДАТА_ВРЕМЯ.dmp; благодаря временной метке легко идентифицировать файлы, записанные в течение нескольких дней. Другая особенность ProcDump заключается в том, что поток, занимающий больше всего ресурсов центрального процессора, записывается в файл дампа, поэтому, открывая дамп, пользователь видит сообщение о потоке, занимающем центральный процессор. Параметр ProcDump (-x) обеспечивает запуск процесса непосредственно в отладчике. Параметр -x взаимодействует с разделом реестра Image File Execution Options. 35. Process Explorer Эта программа отображает файлы, разделы реестра, динамические библиотеки DLL и прочие объекты, открытые или загруженные различными процессами, и другую информацию, такую как владелец процесса. Рабочая область программы Process Explorer состоит из двух окон. В верхнем окне отображается список активных процессов, включая имена учетных записей, которым принадлежат эти процессы. Информация, которая отображается в нижнем окне, зависит от выбранного режима работы программы. В режиме дескрипторов в нижнем окне отображаются все открытые дескрипторы выбранного в верхнем окне процесса, а в режиме библиотек DLL — все загруженные процессом динамические библиотеки и отображенные в память файлы. Помимо этого в программе Process Explorer также есть мощные возможности поиска, благодаря которым можно быстро узнать, у какого процесса открыт определенный дескриптор или загружена определенная библиотека DLL. Благодаря своим уникальным возможностям, программа Process Explorer полезна для разрешения проблем с версиями библиотек DLL и утечками дескрипторов, а также для понимания принципов работы ОС Windows и приложений. Программа Process Explorer работает в ОС Windows 9x/Me, Windows NT 4.0, Windows 2000, Windows XP, Server 2003, в 64-разрядных версиях Windows для x64 и IA64 процессоров, а также в ОС Windows Vista. Новые возможности в версии 10.2: уровень благонадежности Vista, виртуализованные колонки и свойства процесса; подписанный драйвер для 64-разрядной версии ОС Vista для процессоров x64. Новые возможности в версии 10.1: счетчики циклов процессов для ОС Vista в свойствах процесса и в виде отдельной колонки; просмотр и редактирование разрешений для служб; обход утечек дескрипторов в среде выполнения .NET; множество новых колонок ввода-вывода и свойств процессов; графики объемов данных ввода-вывода в системе и отдельно для каждого процесса; хронологический мини-график операций ввода-вывода; хронологический мини-график выделения памяти; дополнительный хронологический график операций ввода-вывода в панели задач; 30 поддержка 64-разрядной версии ОС Windows для процессоров Itanium. 36. Process Monitor Программа Process Monitor является усовершенствованным инструментом отслеживания для Windows, который в режиме реального времени отображает активность файловой системы, реестра, а также процессов и потоков. В этой программе сочетаются возможности двух ранее выпущенных программ от Sysinternals: Filemon и Regmon, а также огромный ряд улучшений, включая расширенную и безвредную фильтрацию, всеобъемлющие свойства событий, такие как ID сессий и имена пользователей, достоверную информацию о процессах, полноценный стек потока со встроенной поддержкой всех операций, одновременный запись информации в файл и многие другие возможности. Эти уникальные возможности делают программу Process Monitor ключевым инструментом для устранения неполадок и избавления от вредоносных программ. Программа Process Monitor работает в ОС Windows 2000 с пакетом обновлений 4 (SP4) с накопительным пакетом обновлений 1, Windows XP с пакетом обновлений 2 (SP2), Windows Server 2003 с пакетом обновлений 1 (SP1) и Windows Vista, а также x64-версии ОС Windows XP, Windows Server 2003 с пакетом обновлений 1 (SP1) и Windows Vista. Преимущества программы Process Monitor над программами Filemon и Regmon: Пользовательский интерфейс программы Process Monitor и параметры схожи с интерфейсом и параметрами программ Filemon и Regmon , но в программе Process Monitor есть ряд существенных улучшений, таких как: отслеживание запуска и завершения работы процессов и потоков, включая информацию о коде завершения; отслеживание загрузки образов (библиотек DLL и драйверов устройств, работающих в режиме ядра); больше собираемых данных об параметрах операций ввода и вывода; безвредные фильтры позволяют устанавливать фильтры, которые не будут приводить к потере данных; сбор стеков потоков для каждой операции позволяет в большинстве случаев определить исходную причину выполнения операции; достоверный сбор информации о процессах, включая путь к образу процесса, командную строку, а также ID пользователя и сессии; настраиваемые и перемещаемые колонки для каждого свойства события; фильтры можно установить на любое поле с данными, включая поля, которые не являются колонками; усовершенствованная архитектура записи журналов расширяет возможности программы до десятков миллионов зарегистрированных событий и гигабайтов записанных данных о событиях; дерево процессов отображает отношения между всеми процессами, перечисленными в сведениях трассировки; основной формат журнала сохраняет все данные, чтобы их можно было загрузить в другом экземпляре программы Process Monitor; подсказки к процессам для простого просмотра информации об образе процесса; детальные подсказки позволяют получить удобный доступ к форматированным данным, которые не помещаются в колонке; прекращаемый поиск; запись в журнал всех операций во время загрузки системы. 31 37. ProcFeatures ProcessorFeatures — это простое приложение, которое при помощи прикладного программного интерфейса IsProcessorFeaturePresent ОС Windows устанавливает поддержку процессором и ОС различных функций, среди которых — предотвращение исполнения, расширение физических адресов (PAE) и счетчик циклов реального времени. Ее основная задача — установить, действуют ли в системе расширения PAE ядра и поддерживается ли защита от переполнения буфера путем запрета исполнения. 38. PsExec v1.98 Служебные программы, такие как Telnet, и программы удаленного управления, такие как PC Anywhere компании Symantec, позволяют выполнять программы в удаленных системах, однако их не так просто установить, поскольку требуется устанавливать еще и клиентское программное обеспечение в тех удаленных системах, к которым необходимо получить доступ. Программа PsExec — это облегченный вариант Telnet. Она позволяет выполнять процессы в удаленных системах, используя для этого все возможности интерактивного интерфейса консольных приложений, и при этом нет необходимости вручную устанавливать клиентское программное обеспечение. Основное достоинство PsExec — это возможность вызывать в интерактивном режиме интерфейс командной строки в удаленных системах и удаленно запускать такие инструменты как IpConfig. Это единственный способ вывести на экран локального компьютера данные об удаленной системе. Примечание. Некоторые антивирусные сканеры сообщают, что одна или несколько из этих программ заражены вирусом «remote admin». Ни одна из программ, входящих в набор PsTools, не содержит вирусов, но они использовались вирусами, что и приводит к появлению таких предупреждений. Установка Просто скопируйте программу PsExec в папку для исполняемых файлов. При вводе команды psexec на экран выводится справка о синтаксисе команды. Программа PsExec работает в операционных системах Windows Vista, NT 4.0, Win2000, Windows XP и Server 2003, в том числе в 64-разрядных версиях ОС Использование psexec [\\компьютер[,компьютер2[,...] | @файл][-u пользователь [-p пароль]][- n s][-l][-s|-e][-x][-i [сеанс]][-c [-f|-v]][-w каталог][-d][-<приоритет>][-a n,n,... ] программа [аргументы] компьютер - указывает программе PsExec, что нужно запустить приложение на заданном компьютере или компьютерах. Если имя компьютера не указано, то программа PsExec запустит приложение в локальной системе, если же вместо имени компьютера задан символ «звездочка» (\\*), то программа PsExec запустит приложение на всех компьютерах текущего домена. @файл - указывает программе PsExec, что нужно запустить приложение на всех компьютерах, перечисленных в заданном текстовом файле. -a - процессоры, на которых можно запустить приложение, отделяются запятыми, при этом процессоры нумеруются, начиная с 1. Например, чтобы запустить приложение на процессорах втором и четвертом, введите «-a 2,4» -c - указанная программа копируется в удаленную систему для выполнения. Если этот параметр не задан, то приложение должно находиться в системной папке удаленной системы. 32 -d - указывает, что не нужно ждать завершения приложения. Этот параметр следует использовать только при запуске не интерактивных приложений. -e - указанный профиль учетной записи не загружается. -f - указанная программа копируется в удаленную систему, даже если такой файл в удаленной системе уже есть. -i - запускаемая программа получает доступ к рабочему столу указанного сеанса в удаленной системе. Если сеанс не задан, то процесс выполняется в консольном сеансе. -l - при запуске процесса пользователю предоставляются ограниченные права (права группы администраторов отменяются, и пользователю предоставляются только права, назначенные группе «пользователи»). В ОС Windows Vista процесс запускается с низким уровнем благонадежности. -n - позволяет задать задержку подключения к удаленным компьютерам (в секундах). -p - позволяет указать необязательный пароль для имени пользователя. Если этот параметр опущен, то будет выдан запрос на ввод пароля, при этом пароль не будет отображаться на экране. -s - удаленный процесс запускается из системной учетной записи. -u - позволяет указать необязательное имя пользователя для входа в удаленную систему. -v - указанный файл копируется в удаленную систему вместо уже имеющегося только при условии, что номер его версии выше или он более новый. -w - позволяет указать для процесса рабочий каталог (путь внутри удаленной системы). -x - отображает интерфейс пользователя на рабочем столе Winlogon (только в локальной системе). -приоритет (приоритет) - позволяет задавать для процесса различные приоритеты: -low (низкий), -belownormal (ниже среднего), -abovenormal (выше среднего), -high (высокий) или -realtime (реального времени). Программа - имя запускаемой программы. Аргументы - передаваемые аргументы (обратите внимание, что пути файлов должны указываться как локальные пути в целевой системе). Чтобы задать имя приложения, которое содержит пробелы, используйте кавычки, например psexec \\marklap "c:\длинное имя\app.exe". Введенные данные передаются в удаленную систему при нажатии клавиши «Ввод», для завершения удаленного процесса нужно нажать сочетание клавиш Ctrl-C. Если имя пользователя не задано, то удаленный процесс запускается из той же учетной записи, что и программа PsExec. Однако поскольку удаленный процесс является олицетворением, то он не будет иметь доступа к сетевым ресурсам удаленной системы. Если имя пользователя задано, то удаленный процесс запускается из указанной учетной записи и получает доступ к тем же сетевым ресурсам удаленной системы, что и данная учетная запись. Учтите, что пароль передается в удаленную систему в виде открытого текста. При обращении к локальной системе эту версию программы PsExec можно использовать вместо программы Runas, поскольку для программы PsExec не требуются права администратора. Примеры Эта команда вызывает интерактивный интерфейс командной строки в системе \\marklap: psexec \\marklap cmd 33 Эта команда запускает в удаленной системе программу IpConfig с параметром /all и выводит полученные данные на экран локальной системы: psexec \\marklap ipconfig /all Эта команда копирует программу test.exe в удаленную систему и выполняет ее в интерактивном режиме. psexec \\marklap -c test.exe Если в удаленной системе такая программа уже установлена и находится не в системном каталоге, укажите полный путь к этой программе psexec \\marklap c:\bin\test.exe. Эта команда запускает в интерактивном режиме из системной учетной записи программу Regedit для просмотра данных разделов реестра SAM и SECURITY: psexec -i -d -s c:\windows\regedit.exe Эта команда используется для вызова программы Internet Explorer от имени пользователя с ограниченными правами: psexec -l -d "c:\program files\internet explorer\iexplore.exe". 39. PsFile v1.02 Команда «net file» выводит на экран список файлов, открытых другими компьютерами в системе, в которой выполняется данная команда, однако она усекает длинные имена путей и не позволяет просматривать эти данные для удаленных систем. Служебная программа PsFile с интерфейсом командной строки выводит на экран список файлов системы, которые открыты удаленно, а также позволяет закрывать открытые файлы по имени или по идентификатору файла. Установка Просто скопируйте программу PsFile в папку для исполняемых файлов и затем введите «psfile». Программа PsFile работает в операционных системах NT 4.0, Win2K, Windows XP и Server 2003. Применение По умолчанию программа PsFile выводит список файлов локальной системы, которые открыты удаленными системами. Если после команды ввести символ «- », на экран выводится информация о синтаксисе этой команды. применение: psfile [\\удаленный_компьютер [-u имя_пользователя [-p пароль]]] [[Id | путь] [-c]] -u - позволяет указать необязательное имя пользователя для входа в систему удаленного компьютера. -p - позволяет указать пароль для имени пользователя. Если этот параметр опущен, то появится подсказка, предлагающая ввести пароль, при этом он не будет отображаться на экране. Id - идентификатор файла (присвоенный программой PsFile), для которого необходимо вывести информацию или который нужно закрыть. Путь - полный или частичный путь к файлам, для которых необходимо вывести информацию или которые нужно закрыть. -c - позволяет закрыть файлы, определенные с помощью идентификатора или пути. Работа программы Программа PsFile использует прикладной программный интерфейс NET API, документация по которому содержится в комплекте разработчика Platform SDK. 34 40. PsInfo PsInfo — это утилита командной строки, которая собирает основные данные о локальной или удаленной системе Windows NT/2000 — о типе установки, сборке ядра, зарегистрированной организации и владельце, числе и типе процессоров, объеме физической памяти, дате установки системы, статусе пробной версии и сроке ее действия. Установка Скопируйте программу PsInfo в папку для исполняемых файлов и затем введите команду «psinfo». Программа PsInfo работает в Windows NT 4.0 и в более поздних версиях ОС, в том числе в Windows Vista. Применение По умолчанию программа PsInfo выводит сведения о локальной системе. Для получения сведения об удаленной системе укажите ее имя. Так как для получения данных программа PsInfo обращается к удаленному реестру, в искомой системе должна работать служба удаленного реестра, а учетная запись, от имени которой запускается PsInfo, должна иметь доступ к разделу HKLM\System удаленного реестра. В целях содействия автоматическому получению пакетов обновления программа PsInfo возвращает номер пакета обновления, установленного в системе, в виде значения (где 0 обозначает отсутствие пакета обновления, 1 — SP 1 и т.д.). Синтаксис: psinfo [[\\компьютер[,компьютер[,..] | @файл [-u пользователь [-p пароль]]] [-h] [-s] [-d] [-c [-t разделитель]] [фильтр] \\компьютер - запуск команды на удаленном компьютере или на указанных компьютерах. Если не указывать имя компьютера, команда будет исполнена в локальной системе; подстановочный знак (\\*) позволяет выполнить команду на всех компьютерах, относящихся к текущему домену. @файл - запуск команды на всех компьютерах, перечисленных в заданном текстовом файле. -u - позволяет в факультативном порядке указать имя пользователя для входа в удаленную систему. -p - позволяет в факультативном порядке указать пароль, соответствующий имени пользователя. Если пароль не указан в команде, его придется ввести в скрытом режиме в специальном окне. |