2016년 6월 19일 일요일

LogParser 활용(Windows Logon Event 이상징후 분석 - 4th)

3회에 걸쳐서 윈도우 로그온 성공 및 실패 이벤트 이상징후 분석 과정을 살펴봤다. 그리고 그 과정에서 로그, 즉 데이터의 구조 및 속성에 대한 이해와 함께 SQL을 이용해서 데이터를 분석에 적절한 형태로 가공만 할 수 있다면 분석은 그다지 어렵지 않다는 사실을 알 수 있었다.

문제는 여태 분석에 사용했던 로그는 달랑 PC 한 대에서 발생한 로그라는 것. 우리 조직의 PC가 100대면 같은 작업을 백 번 해야 한다는 뜻이다. 물론 불가능하진 않다. 처음에 얘기했다시피 한 대로 시작해서 익숙해지면 10대, 100대로 늘려가면 된다.


하지만 PC별 세부 현황을 파악할 수 있다는 장점을 제외하면 같은 작업을 백 번 반복하는 건 별로 효율적이지 않다. 조직적 지원이 얼마나 뒤따르냐에 따라 달라지겠지만 현실적인 실현 가능성은 낮으며, 괜히 말 꺼냈다가 혼자 독박 쓸 가능성도 높다. -_-

가장 현실적이면서도 효율적인 방법은 로그를 중앙으로 통합한 후 일괄 분석하는 것. 중앙에서 큰 밑그림을 그린 후, 세부를 묘사하는 것이다.

숲과 나무

밑그림을 그려보자. 로그온 성공 및 실패 발생 추이는 로그온 이벤트라는 숲의 전체 모양과 지형을 그려준다. 이제 숲의 생태계를 파악할 차례.


숲의 생태계는 어떻게 파악할 수 있을까? 숲을 구성하는 동식물의 구성과 비중, 그리고 그 비중의 변화를 파악하면 될 것이다. 그간의 분석 과정을 통해 우리는 로그온 이벤트의 주요 구성 요소와 그 요소들의 속성을 파악할 수 있었다.

로그온 이벤트 주요 구성 요소

이제 해당 구성 요소들의 발생 통계와 시계열 추이를 분석하면 로그온 이벤트의 전체 생태계를 그릴 수 있다.

로그온 성공 이벤트의 '로그온 유형' 발생 통계
('로그온 유형'의 발생 분포는?)

로그온 유형별 ID 발생 통계
(유형별로 누가, 얼마나 로그온했나?)

'로그온 유형'별 ID 발생 추이
(일별 변화 추이는?)

다음 그림을 보면 중복을 제거한 ID의 일별 개수 변화를 파악할 수 있다. (7일 서비스 로그온 유형으로 로그온에 성공한 ID는 5개)

'로그온 유형'별 ID 발생 추이

통합과 일괄 분석 체계만 잘 수립되면 PC 한 대의 로그든, 백 대의 로그든 주요 구성 요소의 발생 통계와 변화 추이를 추적하는 이상징후 분석 과정은 똑같다. 

통계 분석을 통해 발생 범주와 범위가 확인되면 변화 추이 분석을 통해 범주별 범위 이탈 여부를 추적하는 것이다. 좀 유식하게 표현하면 '자기 유사도 변이 추적'.

뭘 분석할지, 어떻게 분석할지가 정해졌으니 이제 로그만 잘 모으면 된다. 예산이 빵빵하다면 로그 모아주는 솔루션은 다양하더라.

그런데 전반적으로 알려진 솔루션들을 보면 수집/저장 기능에 비해 상대적으로 통계나 관계 분석 기능이 좀 빈약하지 않나 싶다. (물론 분석은 사람 손을 많이 타기도 하고) 더도 말고 덜도 말고 LogParser만큼만 해주면 참 고마울 듯.

참고로 Windows 비스타 이후 버전은 이벤트 로그 몰아주기가 가능하다. 예산이 안습이라면, 그리고 Windows 이벤트 로그만 모을거라면 해당 기능을 이용하는 것도 나쁘지 않아 보인다. (도메인 환경만 가능한 듯)

댓글 없음:

댓글 쓰기

크리에이티브 커먼즈 라이선스