Бортовой журнал Анализирующий Спецвыпуск: Хакер, номер #048, стр. 048-088-4 ‘Очищаются выбранные журналы For each Entry in EventLog Entry.ClearEventlog() Next 'И завершающие штрихи – скипт стирает сам себя. Scriptname=wscript.scriptfullname set fso=CreateObject("Scripting.FileSystemObject") fso.Getfile(Scriptname).Delete ‘Завершение работы сценария Wscript.Quit Изменение свойств логов ТИП: Листинг Option Explicit Dim WshShell, objEnv, fso Dim wmicpath, runstr, prm Dim temp1, batfile, batfilerun Dim LogFileNm 'Получается доступ к системным объектам Set WshShell=CreateObject("WScript.Shell") Set objEnv=WshShell.Environment("Process") Set fso=CreateObject("Scripting.FileSystemObject") 'Определяется каталог временных файлов temp1=objEnv("TEMP") Назначается имя исполняемому файлу batfile=temp1 & chr(92) & "logsettings.bat" 'Выбирается журнал LogFileNm = chr(34) & "Application" & chr(34) 'LogFileNm = chr(34) & "System" & chr(34) 'LogFileNm = chr(34) & "Security" & chr(34) 'Формируется путь к wmic.exe wmicpath = objEnv("windir") & "\system32\wbem\wmic.exe " 'Определяется устанавливаемый параметр prm = "MaxFileSize=3000000" 'prm = "OverwriteOutDated=7" 'Формируется командная строка runstr=wmicpath & "NTEVENTLOG WHERE LogFileName=" & LogFileNm & " SET " & prm 'Создается командный файл Set batfilerun = fso.opentextfile(batfile,2,true) batfilerun.writeline runstr '& "> nul" batfilerun.close 'Выполняется командный файл в скрытом режиме WshShell.run batfile,1 'Через 3 секунды командный файл удаляется wscript.sleep 3000 fso.deletefile batfile 'Для контроля исполняемой команды 'msgbox runstr Wscript.Quit Вносим записи в логи сами ТИП: Листинг 'Объявляются используемые переменные Option Explicit Dim WshShell, LEvent Dim Ltype,LMsgevent,Lcomputer 'Ltype -Код типа события '0 - Успех (Success) '1 - Ошибка (Error) '2 - Предупреждение (Warning) '4 - Уведомление (Information) '8 - Аудит успехов (Audit_Sucess) '16 - Аудит отказов (Audit_Failure) 'LMsgevent - Текстовое сообщение 'Lcomputer - Дополнительный параметр, указывающий имя компьютера для записи события на удаленной машине Ltype = 2 LMsgevent = "Настрой фаервол!" 'Получается доступ к системным объектам Set WshShell=CreateObject("WScript.Shell") 'Вносится запись LEvent=WshShell.LogEvent(Ltype,LMsgevent) 'Завершение работы сценария Wscript.Quit Отслеживаем появление в логах определенной записи ТИП: Листинг strComputer = "." Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate, (System)}!\\" & strComputer & "\root\cimv2") Set colMonitoredEvents = objWMIService.ExecNotificationQuery ("Select * from instancecreationevent where " & "TargetInstance isa 'Win32_NTLogEvent' " & "and TargetInstance.EventCode = '6005' ") Do Set objLatestEvent = colMonitoredEvents.NextEvent strAlertToSend = objLatestEvent.TargetInstance.User & " attempted to access DatabaseServer." ' *** ‘ Команды, исполняемые при возникновении записи с кодом 6005 в журнале «Система» ‘*** Loop Сайты, на которых можно найти материалы по WSH Тип: WWW http://www.microsoft.com/technet/scriptcenter - куча примеров от создателя встроенного средства автоматизации http://msdn.microsoft.com/scripting - без комментариев |