이 포스트에서는 깊은 내용은 다루지 않고, 얕은 내용만 다룰 예정입니다. 이 후에 작성할 포스트에서 용어들과 개념에 대해 깊게 다룰 예정입니다.

[1] 참고 서적

실전 LOG 분석과 체계적인 관리 가이드 / 지은이 - 앤톤 츄바킨, 케빈 슈미트, 크리스토퍼 필립스 [링크]

[2] 핵심 내용

이 책은 시스템 로그를 다루는 방법을 다루면서 모든 종류의 로그에서 유용한 정보를 얻는 방법을 알려준다. 책에서 말하는 로그라는 용어의 정의는 다음과 같다.

로그이벤트 기록의 집합이다.

해당 책에서는 로그라는 용어의 정의를 설명하면서 mitre 에서 공개한 Common Event Expression Architecture Overview Version 0.5에 있는 이벤트의 정의를 인용하였다.

[원문] Common Event Expression Architecture Overview Version 0.5 2p


An event is a single occurrence within an environment, usually involving an attempted state change. An event usually includes a notion of time, the occurrence, and any details the explicitly pertain to the event or environment that may help explain or understand the event's causes or effects.


위 내용을 빠르게 요약하면 이벤트는 일반적으로 시도된 상태 변화와 관련된 환경에서의 single occurrence (e.g. 단일 발생, 적절한 사례) 이다. 

여기서 로그 소스는 두 가지의 일반적인 카테고리로 나눌 수 있다고 한다.

푸시 기반풀 기반으로 나뉘는데, 푸시 기반은 장치나 애플리케이션이 로컬 디스크나 네트워크를 통해 메시지를 전송하는 것을 말한다.(e.g. syslog, SNMP, 윈도우 이벤트 로그 - 프로토콜, 전송 메커니즘, 저장, 검색 기능 제공)

그리고 풀 기반은 애플리케이션이 소스에서 로그 메시지를 가져오는 것을 말한다. (클라이언트 - 서버 모델에 의존) 이 방식으로 동작하는 대 다수의 시스템은 로그 데이터를 전용 포맷 형태로 저장한다고 한다.


로그 저장 포맷의 종류는 아래와 같이 크게 3 가지의 종류로 나뉜다.

  • 텍스트 기반 로그 파일
    • 플랫 텍스트 파일 (일반적인 유형: syslog 포맷)
    • 인덱스 플랫 텍스트 파일 (OSSEC라는 로그 보관 유틸리티가 사용하는 전략)
    • 가장 강력한 유틸리티: 아파치 루씬 코어 Apache Lucene Core
      • 루씬은 전체 텍스트를 로깅하고 로그 검색과 분석 유틸리티를 통합하는 인덱스를 생성할 수 있는 자바 기반의 프레임워크를 말한다.
      • ex. 엘라스틱서치가 루씬 기반이다. 루씬이 제공하는 기능의 대부분 지원하며, 엘라스틱서치를 사용할 시에는 루씬을 사용할때의 불편함을 간소화할 수 있는 장점이 있다. [티몬의 개발이야기 - 인용])
  • 바이너리 파일
    • 일반적인 바이너리 로그 파일 예제: 마이크로소프트 IIS 로그와 윈도우 이벤트 로그
  • 압축 파일
    • tar, zip 포맷은 오랫동안 사용되어 왔으며, PKZip 포맷 압축 파일은 윈도우 공통 포맷이다.
      • zgrep과 zcat 도구를 이용하면 grep과 cat으로 압축하지 않은 파일에서 읽는 것처럼 압축 파일에서 데이터를 읽고 검색할 수 있다.

다음으로, 로그를 얻을 수 있는 방법은 무엇이 있을까? 아니면 로그를 얻을 수 있는 자원은 무엇일까? 우리는 아래와 같은 자원에서 우리는 다양한 로그를 얻을 수 있다.

  • 유닉스와 윈도우 시스템
  • 라우터
  • 스위치
  • 방화벽
  • 무선 AP
  • 가상 사설망
  • 안티바이러스 시스템
  • 프린터

그럼 이렇게 다양한 로그를 수집 후, 보관할때 따라야하는 정책들은 무엇이 있을까? 책에서는 다양한 정책들을 보여주었지만, 초반에는 PCI DSS 만을 다루었다. PCI DSS는 Payment Card Industry Data Security Standard 이며, 여기서 다루는 내용은 컴플라이언스 요구사항 평가, 조직의 위험 상태 검토, 다양한 로그 소스의 생성 로그 크기 확인, 가능한 저장장치 선택 검토를 다룬다.


[3] 전송 메커니즘 / 솔루션

대표적으로 로그 전송에서 사용되는 메커니즘 5 가지는 아래와 같다.

  • syslog UCP/TCP
  • 암호화된 syslog
  • HTTP 상에서 SDAP
  • SNMP
  • FTPS나 SCP와 같은 일반 파일 전송

그리고 로그와 관련된 솔루션은 어떤 것들이 있을까, 이런 솔루션들을 통칭하는 단어는 무엇일까라는 생각이 들었는데, 이 또한 책에 아래와 같이 정리되어 있었다.

  • SIEM, Security Information and Event Management
  • IDS, Intrusion Detection System
  • IPS, Intrusion Prevention System
  • NIDS, Network Intrusion Detection System
  • HIDS, Host Intrusion Detection System
반응형

+ Recent posts