Средства ревизии Windows
PsKill и PsSuspend
Получив список процессов, вы можете уничтожить (или подвесить) процесс. Программа PsKill принимает в качестве аргумента или имя процесса или его идентификатор. Если вы точно знаете идентификатор PID, вам может понадобиться использовать PsKill совместно с PsList. С другой стороны, задав процесс по имени, можно удалить больше процессов, чем вы рассчитывали. Оба метода чувствительны к такому типу уязвимости, как "oops" - ошибка в значении PID и случайное удаление ошибочно введенного процесса.
C:\>pslist.exe | findstr /i notepad notepad 1764 8 1 30 1728 0:00:00.020 0:00:00.020 0:00:07.400 notepad 1044 8 1 30 1724 0:00:00.020 0:00:00.020 0:00:05.077 notepad 1796 8 1 30 1724 0:00:00.010 0:00:00.020 0:00:03.835 C:\>pskill.exe 1764 process #1764 killed C:\>pskill.exe notepad 2 processes named notepad killed.
Внимание. Будьте бдительны, удаляя процесс по имени. PsKill выбирает все процессы, а не только тот, который встретится первым. Эффект, сходный с использованием регулярного выражения, вроде звездочки (*).
PsSuspend работает аналогично. Задайте имя процесса или ID после имени команды, чтобы приостановить процесс.
C:\>pssuspend.exe 1116 Process 1116 suspended.
Используйте параметр -r для возобновления работы процесса.
C:\>pssuspend.exe -r 1116 Process 1116 resumed.
PsLogList
Журнал системных событий содержит богатейшую информацию о состоянии системы, статусе служб и безопасности. К сожалению, неуклюжесть средств просмотра журнала обычно подталкивает администратора к краткому аудиту журнала событий. В отличие от мира Unix, где большинство системных журналов представлено в текстовом формате, журнал Windows представляет собой двоичную головоломку. Появление программы PsLogList открыло две возможности: журнал может быть преобразован в текстовый формат и разобран в таблицу другого формата, и журналы могут быть получены удаленно для консолидации, резервирования и сохранения их содержания.
PsLogList отображает содержимое журнала в расширенном или консолидированном форматах, с запятыми вместо разделителя полей. По умолчанию PsLogList выводит информацию в расширенном варианте.
C:\>psloglist.exe System log on \\GOBLYNSWOOD: [16554] Dhcp Type: WARNING Computer: GOBLYNSWOOD Time: 3/11/2002 11:01:28 PM ID: 1003 Your computer was not able to renew its address from the network (from the DHCP Server) for the Network Card with network address 00047644DFBF.The following error occurred: The semaphore timeout period has expired. Your computer will continue to try and obtain an address on its own from the network address (DHCP) server.
Вывод в формате с разделителями производится, если воспользоваться параметром -s. Как обычно, пример сокращен для удобства.
C:\>psloglist.exe -s System log on \\GOBLYNSWOOD: 16554,System,Dhcp,WARNING,GOBLYNSWOOD,Mon Mar 11 23:01:28 2002,1003,None,... 16553,System,Application Popup,INFORMATION,GOBLYNSWOOD,Mon Mar 11...
Можно просмотреть любой из трех журналов (системных событий, приложений или безопасности).
C:\>psloglist.exe -s security Security log on \\GOBLYNSWOOD: 14308,Security,Security,AUDIT SUCCESS,GOBLYNSWOOD,Tue Mar 12 00:49:35 2002,538,Orc\GOBLYNSWOOD,orcGOBLYNSWOOD(0x0,0x119382)3 14307,Security,Security,AUDIT SUCCESS,GOBLYNSWOOD,Tue Mar 12 00:32:00 2002,538,Administrator\GOBLYNSWOOD,AdministratorGOBLYNSWOOD(0x0,0x119513)3
Параметр -f дает возможность фильтровать сообщения о событиях пятью способами: Warning (w), Information (i), Errors (e), Audit Success и Audit Failure. (Символы в скобках представляют собой сокращения, которые воспринимает PsLogList на входе). Два способа аудита применимы только для анализа журнала безопасности и должны вводиться в кавычках.
C:\>psloglist.exe -s -f "Audit Success" Security Security_successes.log
Используйте PsLogList для помощи в управлении вашей политикой сетевого аудита. Хотя эта программа не может переключить установки журнала событий, используйте программу для координации журналов и создания ежедневных, еженедельных или ежемесячных отчетов о своей сети. Надлежащий просмотр журнала поможет не только определить подозрительных пользователей, но и обеспечит управление состоянием сети.
В заключение еще одно замечание: параметр -c очищает системный журнал после того, как он сброшен в текстовый файл. Используйте этот параметр с осторожностью, поскольку вы можете неумышленно очистить системный журнал до того, как сделана его резервная копия.
C:\>psloglist.exe -c Application ...output truncated... Application event log on GOBLYNSWOOD cleared. C:\psloglist.exe Application Application log on \\GOBLYNSWOOD: No records in Application event log on GOBLYNSWOOD.
Параметры -a и -b позволяют получить информацию о событиях, происшедших после или до заданной даты, введенной в формате мм/дд/гг. Ниже приведен образец того, как запросить информацию о событиях, относящихся к системе безопасности за предыдущую дату (02/09/02 - текущий день).
C:\>psloglist.exe -a 02/08/02 -b 02/09/02 Security
PsLogList читает журнал в двоичном формате из любой системы. Введите перед именем файла параметр -l. PsLogList определит тип системного журнала (события, безопасность, система).
C:\>psloglist.exe -l Security.evt