Назад | Перейти на главную страницу

Сценарий Powershell для чтения журналов безопасности Windows и фильтрации типов высоты 196 и 1937

У меня есть сценарий PowerShell, который считывает тип высоты и отображает содержимое в окне PowerShell. Однако мне нужно поместить содержимое в файл Excel.

Пожалуйста помоги.

cls

$ evtLogEntries = $ null $ WorkDir = "import.csv" $ evtEntry = $ null

$ datetimeAfter = get-date "20.06.2016 10:00:00"

$ evtLogEntries = $ null

$ evtLogEntries = Get-EventLog -LogName Security -After $ datetimeAfter -EntryType SuccessAudit -Message «Создан новый процесс *» | Экспорт-CSV SecurityLog.csv

foreach ($ evtEntry в $ evtLogEntries) {

$startIdx=$null

$len=$null

$startIdx=$evtEntry.Message.IndexOf("Subject:")

$len=$evtEntry.Message.IndexOf("Token Elevation Type indicates")–$startIdx

# write-host $ evtEntry.Message.substring ($ startIdx, $ len)

switch ( $evtEntry.Message.substring($evtEntry.Message.IndexOf("%%"),6))

{

    "%%1936" { 
    write-host $evtEntry.TimeGenerated 
    write-host $evtEntry.Message.substring($startIdx,$len)
    write-host "`tToken Elevation Type: Type 1 is a full token with no privileges removed or groups disabled.  A full token is only used if User Account Control is disabled or if the user is the built-in Administrator account or a service account."

    }

    "%%1937" { 

    write-host $evtEntry.TimeGenerated
   write-host $evtEntry.Message.substring($startIdx,$len)
   write-host "`tToken Elevation Type: Type 2 is an elevated token with no privileges removed or groups disabled.  An elevated token is used when User Account Control is enabled and the user chooses to start the program using Run as administrator.  An elevated token is also used when an application is configured to always require administrative privilege or to always require maximum privilege, and the user is a member of the Administrators group."

    }



}

} 

# "%% 1936" - Тип повышения уровня токена: Тип 1 - это полный токен без удаленных привилегий или отключенных групп. Полный токен используется только в том случае, если Контроль учетных записей пользователей отключен или если пользователь является встроенной учетной записью администратора или учетной записью службы.

# "%% 1937" - Тип повышения уровня токена: Тип 2 - это токен с повышенными правами, без удаления привилегий или отключенных групп. Маркер с повышенными привилегиями используется, когда включен # Контроль учетных записей пользователей и пользователь выбирает запуск программы с помощью Запуск от имени администратора. Маркер с повышенными правами также используется, когда приложение настроено так, чтобы всегда требовать административные #privilege или всегда требовать максимальные привилегии, а пользователь является членом группы администраторов.

# "%% 1938" - Тип повышения уровня токена: Тип 3 - это ограниченный токен с удаленными административными привилегиями и отключенными административными группами. Ограниченный токен используется # когда включен контроль учетных записей пользователей, приложение не требует прав администратора, и пользователь не выбирает запуск программы с использованием функции «Запуск от имени администратора».

вы пробовали что-то вроде этого:

Get-EventLog -logname security | Where-Object {($_.eventid -eq 1936) -or ($_.eventid -eq 1937) -or ($_.eventid -eq 1938)} | export-csv -path c:\temp\events

Отфильтруйте соответствующую часть

Get-EventLog -logname security | Where-Object {($_.eventid -eq 1936) -or ($_.eventid -eq 1937) -or ($_.eventid -eq 1938)} | select EventID,MachineName,EntryType,Message,InstanceId,TimeGenerated,Timecreated,UserName | fl | export-csv -path C:\logs.csv