Tuesday, August 22, 2017

 

[Windows] Event Log를 필터링하기(XML을 통한 Custom View생성)



XML을 통한 Event 로그를 Custom View생성





[Explanation]
이벤트 메시지를 통해서 원하는 정보를 검색하기 위해서 기본적으로 해당 이벤트에서 Find 혹은 Filter Current Custom View 등을 이용하실텐데요, 보다 세부적인 이벤트 로그만을 filtering 하는 방법을 알아보겠습니다. 

우선 오늘 테스트로 적용할 이벤트는 ID 4624이고 Logon Type이 '3' 입니다. 이벤트를 보면 제일 많이 보시는 화면이 'General'이지만, XML로 검색을 하려면 Details>XML View로 보셔야 합니다. 





XML View를 보시면 General에서 보셨던 화면이 그대로 보이시는데, 여기서 검색하려는 정보인 'LoggonType'을 3이 되도록 필터링을 생성해보겠습니다. 



기본적으로 Filter 화면에서 대략적인 이벤트 정보를 기입해두는 것이 XML을 편집할 때 보다 수월합니다. 그래서 저는 EventID에 대한 정보만을 선입력을 하니 XML에서 그 정보가 반영되어 보입니다. 



기본적으로 보이는 XML은 아래와 같습니다.
<QueryList>
  <Query Id="0" Path="Security">
    <Select Path="Security">*[System[(EventID=4624)]]
</Select>
  </Query>
</QueryList>



기본적으로 원하는 정보를 조회하기 위해서는 원하는 data를 선정하고 그에 대한 속성값을 지정해야 합니다. 여기서 원하는 data를 선정하는 것이 '*[EventData[Data[@Name='LogonType']]]'이고 그 중 속성값을 지정하는 것이 'and (Data='3')'입니다. 구조를 보면 'EventData 중에서 Data로 된 정보 중에서 @Name이 ~~인 애들을 찾아볼거야'라는 의미입니다.  
<QueryList>
  <Query Id="0" Path="Security">
    <Select Path="Security">*[System[(EventID=4624)]]
and
*[EventData[Data[@Name='LogonType'] and (Data='3')]] 

</Select>
  </Query>
</QueryList>


추가적으로 특정 id 혹은 특정 시간(예를 들어, 24시간) 이내에 로그온한 상대로만 추출을 하고 싶다면 아래와 같이 설정을 하면 된다. 
 <QueryList>
  <Query Id="0" Path="Security">
    <Select Path="Security">*[System[(EventID=4624)
and
TimeCreated[timediff(@SystemTime) &lt;= 86400000]]] and
  *
[EventData[Data[@Name='SubjectUserName'] and (Data='ad_iyamus' or Data='est9')]] and *[EventData[Data[@Name='LogonType'] and (Data='3')]]
</Select>
  </Query>

</QueryList>

이처럼 기존 이벤트에서 원하는 정보를 XML 보기로 확인 한 후 별도로 필터링을 설정하여 조회가 가능합니다. (참고자료)

♔♔♔♔♔♔♔♔♔♔




댓글이나 의견은 언제든지 환영합니다.

Your Comments are Always Welcome!
Share:

0 comments:

Post a Comment