Россия, Москва, Московский Государственный Открытый Университет, 2007 |
Средства ревизии Windows
Пример из жизни. Одомашнивание IDS
PsTools кажется настолько элементарным, что вы можете усомниться в его полезности. Спросите себя, что вы хотите сделать. Способность дистанционно взаимодействовать со службами, файлами протоколов (logfiles) и командной строкой - это не то, над чем можно посмеяться. Фактически, немного гениальности в комбинации с несколькими короткими batch-файлами и запланированными задачами может создать систему вторжения/обнаружения (IDS) среднего уровня. Рассмотрите следующие сценарии.
Управляющие процессы. В 2001 г. прогон взломов IIS отправлял программные оболочки cmd.exe обратно к взломщику. Иногда cmd.exe переименовывали в root.exe.
Чтобы справиться с таким типом взлома, вы сначала настраиваете усиленную систему Windows на работу в качестве главного административного сервера. Затем запускаете следующий сценарий, чтобы просмотреть на предмет нестандартных процессов (вам понадобятся команды sleep и tee из Resource Kit или Cygwin).
rem ProcWatch.bat| rem usage: procwatch.bat IP address username password :loop pslist \\%1 -u %2 -p%3 cmd | tee procwatch.txt sleep 60 goto :loop
Обратите внимание, что batch-файл принимает IP-адрес, имя пользователя и пароль из командной строки. Это гарантирует, что мы никогда не пишем пароль, который делает файл универсально применимым. Заметьте, что файл истории DOS на главном сервере запомнит пароль. Следующее диалоговое окно свойства (Properties) показывает, как установить размер буфера в ноль, используя свойства (Properties) cmd.exe.
Вы можете наблюдать отчет на командном экране, или запустить другие средства, чтобы просмотреть файл procwatch.txt автоматически на присутствие cmd.exe.
Сбор файлов протоколов (Log Files). Другое преимущество использования PsExec и PsLogList состоит в консолидации файлов протоколов (logfile). Мы уже продемонстрировали, насколько полезен PsLogList для сбора и чистки удаленных протоколов событий. Файлы протоколов Web-сервера требуют более сложного подхода. Вы можете запускать сценарии на каждом отдельном Web-сервере, которые копируют протоколы, или запустить один сценарий со своего главного административного сервера, который собирает файлы протоколов со всех Web-серверов. В дополнение к следующим двум batch-файлам, вам необходимо задать следующее.
- C:\shares\dropoff\. Директория, размещенная на главном сервере, в которой пользователь Guest записывает привилегии.
- C:\logs\. Директория для хранения файлов протоколов (logfiles). Создайте вложенные директории по имени каждого Web-сервера.
- batch-файл сбора. Это файл, чтобы запускать процесс сбора.
rem CollectLogs.bat rem usage: CollectLogs.bat username password for /F %%h in (webservers.txt) do rotate.bat %%h %1 %2
Это вспомогательный batch-файл, который выполняет фактическую работу.
rem rotate.bat rem usage: rotate.bat IP address username password rem Stop the Web Service psservice \\%1 -u %2 -p %3 stop w3svc rem Mount the master's file share for dropping off files psexec \\%1 -u %2 -p %3 net use L: \\master\dropoff plainpass /u:guest rem Copy the files from the web server to the master psexec \\%1 -u %2 -p %3 cmd copy C:\Winnt\System32\LogFiles\W3SVC1\*.log L:\ rem Move the files from the master's dropoff folder to the log folder rem for the web server move C:\shares\dropoff\*.log C:\logs\%1\ rem Disconnect the share psexec \\%1 -u %2 -p %3 net use L: /del rem Restart the Web Service psservice \\%1 -u %2 -p %3 start w3svc7.4.
Вы можете запускать его каждый день, неделю, месяц. Он оставляет файлы протоколов (logfiles) на Web-сервере, но создает копии на вашем главном сервере. Затем вы можете запускать другие сценарии, чтобы производить автоматизированный обзор протоколов.