보안정보

전문화된 보안 관련 자료, 보안 트렌드를 엿볼 수 있는
차세대 통합보안관리 기업 이글루코퍼레이션 보안정보입니다.

SIEM을 활용한 서버관제 및 장애관제 방안

2019.03.04

6,798





SPiDER TM V5.0은 이글루시큐리티 보안관제 경험과 빅테이터 활용역량이 집약된 통합보안관리솔루션으로 최초탐지부터 로그/네트워크 패킷 분석까지 일원화 된 관제환경구성을 통해 관제업무의 기민성과 효율성을 높이는 동시에 인프라 전반에 대한 가시성을 확보할 수 있다.   


1. 개요

SIEM(SPiDER TM V5.0)은 통합보안관리(SIEM) 솔루션의 대표적인 제품으로 관리 대상 서버에 Agent를 설치하여 대상 서버의 다양한 시스템 정보를 수집할 수 있다.
물론 SMS(서버통합모니터링시스템)도 비슷한 기능을 가지고 있지만 SIEM은 Agent에서 수집한 중요 정보를 가공하고 이후 SIEM에서 경보로 적용하고 모니터링 하여 시스템을 관리할 수 있도록 지원한다.
즉, 서버의 중요 File 정보 수집(Messages, secure, last, cron) 이외 중요 System file을 모니터링 하며, 또한 서버의 중요 시스템 자원 정보(CPU, Memory, Process, Disk Using)를 수집 가공하여 SIEM에 적용 할 수 있다.
최근에는 서버의 접근을 관리하기 위한 접근제어 솔루션의 도입으로 서버의 Log In에 대한 관리는 가능하나 기타 타 시스템의 back door 및 취약한 구간을 통한 서버 접근에 대해서는 확인하기 어려울 것이다.
그런데 SIEM을 활용하면 위의 secure, last 로그를 확인하여 서버의 비인가 행위 탐지를 할 수 있으며 아울러 서버의 시스템 자원 정보(CPU, Memory, Process, Disk Using) 및 기타 PING CHECK 기능을 통하여 서버의 장애 관제 모니터링을 할 수 있다는 것이 SIEM의 장점이다.
이에 따라 위의 두 가지 Key Point로 SIEM에서 서버 시스템 및 장애관제를 할 수 있는지 확인해 보도록 하자. 


2. 공격 시나리오

SIEM의 Agent가 수집하는 서버의 주요 시스템 파일에 대하여 정리를 해보고자 한다.(Unix/Windows)

로그종류

Linux

AIX

HPUX

Solaris

messages

wtmp/utmp

wtmpx/utmpx

 

 

 

btmp

 

 

Pacct

lastlog

sulog

 

errlog

 

 

 

Xfertog(FTP 로그)

audit.log

 

 

 

secure

 

 

 

syslog

 

history

authlog

 

 

 


[표 1] Unix 수집 로그


로그종류

Windows

Application

System

Security

Active Directory Service

DNS Service


[표 2] Windows 수집 로그


SIEM은 위와 같은 로그를 수집하고 활용하여 서버의 비인가 행위를 탐지 할 수 있다.
예를 들어보면 서버의 history 로그와 secure 로그 등이 있다. History 로그는 사용자가 어떠한 명령어를 남겼는지에 대한 로그를 확인할 수 있으며, secure 로그는 telnet, ssh 접속에 대한 유저 로그인 인증 기록이 남아 있다. 위에서 수집중인 utmp 로그보다 더 자세하게 로그를 확인 할 수 있어 SIEM Agent 연동 시 중요하게 수집이 될 수 있도록 설정하여야 한다. 아울러 서버의 중요한 Log File에 대해 추가적으로 수집하여 알맞은 SIEM 정책 적용이 가능하다.
위와 같이 로그들을 수집할 수 있는 것은 SIEM Agent에 File을 수집하는 기능이 있기에 가능한데 각 환경에 맞는 추가적인 로그를 수집하여 좀더 원활한 서버의 관제를 할 수 있도록 지원하고 있다.
이에 따라 다음 장에서는 SIEM에서 위의 로그를 통한 서버 비인가 행위 관련 관제 모니터링 방안을 가이드 하고자 한다.


SIEM을 통한 비인가 접근 탐지

SIEM 사용자의 이해를 돕기 위해 Linux 시스템을 위주로 TEST와 예시를 제공한다. 아래 예시를 참고하여 각 사이트에 맞도록 OS와 환경 설정을 진행해 아래와 같은 탐지 방법을 적용할 수 있다.

1) Server System Log in 탐지 모니터링 서버로그 정보



[그림 1] Secure Log 확인



[그림 2] Secure Log 상세 확인


2) 서버 정보를 모니터링 하기 위한 SIEM 적용 방법

SIEM의 메뉴 적용 순서로 관리 -> 오브젝트 관리 메뉴에서 아래와 같은 오브젝트를 생성한다.



[그림 3] 성공 메시지 오브젝트 등록




[그림 4] 실패 메시지 오브젝트 등록


SIEM의 메뉴 적용 순서로 관리 -> 단일경보관리 메뉴에서 아래와 같이 경보를 적용한다



[그림 5] 단일경보 등록 예시




[그림 6] 서버 로그인 접속 TEST




[그림 7] SIEM 경보 발생 화면


위와 같이 비인가 탐지를 즉각적으로 확인 및 대응이 가능하다. 서버 접근제어가 있는 사이트는 접근제어와 SIEM의 연동을 통해 추가적인 보안 모니터링도 가능하다.


3) Linux History Log 탐지를 통한 모니터링 적용 방법

Linux의 .bash_history를 이용하여 중요파일 접근에 대한 탐지 적용 방법을 소개한다.

※ 위 .bash_history 로그를 사전에 수집 요청을 하여 엔지니어가 작업을 도와야 가능하다.

SIEM의 메뉴 적용 순서로 관리 -> 오브젝트 관리 메뉴에서 아래와 같은 오브젝트를 생성한다.



[그림 8] 오브젝트 적용 방법


SIEM의 메뉴 적용 순서로 관리 -> 단일경보관리 메뉴에서 아래와 같이 경보를 적용한다.



[그림 9] 단일경보 적용 예시


실제 서버에서 아래와 같이 vi명령을 이용하여 해당 파일들을 확인하였다.



[그림 10] 서버 실제 TEST 진행




[그림 11] 로그검색 화면


SIEM에서 아래와 같이 경보가 발생함을 확인하였다.



[그림 12] 경보발생 화면


3. SIEM을 통한 장애 관제 방안

SIEM이 제공하는 기본 기능 중에는 서버들의 기본적인 CPU, Memory, DISK 사용량, 수집중인 Process, Ping Check, 사용중인 Port 정보 등을 수집하는 기능이 있고 이를 활용하여 서버 장애 관제가 가능하다.
사용자가 임의로 설정한 CPU, Memory, DISK 사용량의 임계치 등을 모니터링하여 이상이 발견되면 알람을 발생 시킬 수 있다. 또한 서버가 정상적으로 통신을 하는지 Ping Check 기능을 통하여 이상유무를 판단할 수 있고, 서버의 주요 Port나 Process가 Down이 된다면 이를 탐지 할 수 있어 효과적인 모니터링이 가능하다.

또한 SIEM에서는 연동되어 있는 보안장비의 이벤트 수집 여부를 판단하여 대상 장비의 문제 발생 시 이벤트 미수집
알람으로 담당자가 직관적으로 확인할 수 있도록 지원한다. 

SIEM을 통한 장애 관제 모니터링 방법

1) DISK 임계치를 설정을 통한 장애 관제

예) /dev/sda3 파티션의 디스크 임계치를 80으로 설정, 그 이상 사용률이 적용될 시 알람을 설정하는 방법으로 기술.

SIEM에서 DISK 사용에 관한 세부 로그 정보는 R002에 v4가 DISK 사용률이다.



[그림 13] 로그 검색을 통한 DISK 사용률 검색 화면


SIEM의 메뉴 적용 순서로 관리 -> 오브젝트 관리 메뉴에서 아래와 같은 오브젝트를 생성한다.



[그림 14] DISK 오브젝트 등록


SIEM의 메뉴 적용 순서로 관리 -> 단일경보관리 메뉴에서 아래와 같이 경보를 적용한다.




[그림 15] DISK 단일경보 등록


SIEM에서 아래와 같이 경보가 발생함을 확인하였다.




[그림 16] 상관분석의 DISK 경보 발생


위와 같이 중요한 DISK의 Full을 방지하기 위한 사전 경보를 적용함으로써 효과적인 DISK 관리가 가능하다.


2) Ping Check 기능 설정을 통한 서버 장애 관제


예) 192.168.100.100번이 중요 서버이며 서버의 Network 이상으로 통신이 단절되었을 때를 가정하에 기능 TEST 진행.

SIEM의 메뉴 적용 순서로 관리 -> 단일경보관리 메뉴에서 번들 룰을 아래와 같이 경보를 적용한다.​



[그림 17] 번들 룰의 ping 체크 기능 활성화


실제 서버에서 192.168.100.100 서버로 Ping을 시도하였으나 Ping이 가지 않았다.



[그림 18] 서버에서 Ping 시도화면


SIEM에서 아래와 같이 경보가 발생함을 확인하였다.



[그림 19] 상관분석 Ping 경보 발생


위와 같이 중요한 장비와 Network 상태가 좋지 않은 구간의 장비가 있다면 Ping 기능을 활용하여 장애 관제를 쉽게 할 수 있다.

3) Process 기능 탐지를 통한 중요 프로세스 탐지


예) spcollect라는 중요 Process가 Down이 되었거나, 반대로 기동이 되었을 때의 탐지 방법.

SIEM의 메뉴 적용 순서로 관리 -> 오브젝트 관리 메뉴에서 아래와 같은 오브젝트를 생성한다.



[그림 20] 프로세스 오브젝트 등록


SIEM의 메뉴 적용 순서로 관리 -> 단일경보관리 메뉴에서 아래와 같이 경보를 적용한다.



[그림 21] 프로세스 단일경보 등록


아래는 실제 서버의 프로세스를 기동 / 정지를 시도하였다.



[그림 22] 서버의 실제 프로세스 기동 정지 및 기동


SIEM에서 아래와 같이 경보가 발생함을 확인하였다.



[그림 23] 상관분석의 프로세스 정지 및 기동에 대한 경보


위와 같이 중요한 프로세스가 있다면 정지관련 로그나 기동 관련로그를 중점으로 적용하여 프로세스의 관제를 통하여 서버의 이상유무를 탐지할 수 있다.


4) 장비의 로그 미수집을  통한 장애 Point 관리

SIEM의 메뉴 적용 순서로 관리 -> 단일경보관리 -> 번들룰



[그림 24] 번들룰 등록으로 미수집 이벤트 처리 방법


SIEM에서 아래와 같이 경보가 발생함을 확인하였다.



[그림 25] 미수집 이벤트 발생 경보


위와 같이 중요 장비의 로그가 수집되지 않으면 장비의 문제를 파악하기 위해 위와 같은 경보를 적용해 운용할 수 있으며 이를 통해 효과적으로 장비의 이상 유무를 판단할 수 있다.


4. 맺음말

앞서 개요에서 설명하였듯이 SIEM Agent를 통하여 수집된 데이터를 활용하여 서버의 관제 및 장애 관제를 하는 방법을 알아보았다.

효과적인 서버관제와 서버의 장애관제를 하기 위해서는 각 서버의 취약점 및 중요 프로세스 리스트 목록이 선행적으로 확보되어야 하며, 각 서버의 특성에 맞게 임계치 등을 조정해야 한다.

또한, 위에서 설명했던 내용 이외에 포트 무결성(Open.Close), 오라클과 같은 기타 운용 프로세스에 대한 
로그를 수집하여 서버 및 장애 관제의 정확도를 높일 수 있다.

각 사이트에서는 위와 같은 기능의 활성화를 위해 엔지니어들과 상의하여 자신의 중요 자산에 대한 관제에 적용하길 바란다.