Windows Eventlog фильтрация - PullRequest
       14

Windows Eventlog фильтрация

0 голосов
/ 23 апреля 2019

Я пытаюсь написать собственный фильтр журнала событий Windows для фильтрации событий, которые EventID == 1234 и имеют элемент EventData/Data со значением find_this_string.

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <EventID Qualifiers="16384">1234</EventID> 
    <Version>0</Version> 
    <Level>4</Level> 
    <Task>15</Task> 
    <Opcode>0</Opcode> 
    <Keywords>0x0000000000000000</Keywords> 
    <TimeCreated SystemTime="2019-04-23T12:36:26.514122100Z" /> 
    <EventRecordID>6352806</EventRecordID> 
    <Correlation /> 
    <Execution ProcessID="524" ThreadID="1072" /> 
    <Channel>Directory Service</Channel> 
    <Computer>test_machine</Computer> 
    <Security UserID="S-0-0-0" /> 
  </System>
  <EventData>
    <Data>123455666</Data> 
    <Data>find_this_string</Data> 
    <Data>1</Data> 
    <Data>1</Data> 
    <Data>abcdeg</Data> 
    <Data>base</Data> 
    <Data>options</Data> 
    <Data /> 
    <Data /> 
    <Data>2</Data> 
    <Data>0</Data> 
    <Data>0</Data> 
    <Data>0</Data> 
    <Data>0</Data> 
    <Data>0</Data> 
    <Data>none</Data> 
  </EventData>
</Event>

Я попыталсякуча вариаций, похожих на следующие:

<QueryList>
  <Query Id="0" Path="ABCD">
    <Select Path="ABCD">
*[System[(EventID=1234)]] and *[EventData[(Data[2]='find_this_string')]]
</Select>
  </Query>
</QueryList>
<QueryList>
  <Query Id="0" Path="ABCD">
    <Select Path="ABCD">
*[System[(EventID=1234)]] and *[EventData/Data[2]='find_this_string']
</Select>
  </Query>
</QueryList>

Я изо всех сил пытаюсь выяснить, как фильтровать, когда есть более одного одного и того же элемента.Я также не могу передать их через сценарий powershell и после обработки, я ищу чистый XPath-фильтр.

...