로그 관리로 보안·네트워크 문제 사전 예방
상태바
로그 관리로 보안·네트워크 문제 사전 예방
  • 데이터넷
  • 승인 2008.06.20 00:00
  • 댓글 0
이 기사를 공유합니다

통합로그 및 규정 준수를 위한 가이드
로그 관리로 보안·네트워크 문제 사전 예방
컴플라이언스 이슈로 로그 관리 부각 … 100% 로그 활용, 사용자 역량 중요

기업 규제의 강화로 원본로그에 대한 보관과 관리가 의무화되면서 로그 관리의 중요성이 부상하고 있다. 하지만, 의무화가 아니더라도 로그 관리는 반드시 필요한 일 중 하나다. 각종 시스템과 애플리케이션을 운용하고 있는 오늘날의 현실에서 대부분 엄청난 양의 로그로 인해 엄두를 내지 못하고 있지만, 매일 로그 분석을 수행하는 것만으로도 상당수 문제를 예방할 수 있다. 로그는 IT 인프라의 일기장으로 내부 인프라의 모든 것을 보여주기 때문이다.<편집자>

연재순서
1회 : 로그의 관리 및 분석(이번호)
2회 : 분석 도구를 이용한 로그 관리 방법


이준희 // SK인포섹 기술팀 차장
joonhlee@skinfosec.co.kr

국내에서는 정보통신기반 보호법, 주요 정보통신기반 시설 보호 지침, 금융기관 전자금융업무 감독규정시행 규칙 등에서, 외국에서는 FISMA(Federal Information and Security Management Act), HIPAA(The Health Insurance Portability and Accountability Act), PCI-DSS(Payment Card Industry Data Security Standard) 등에서 원본로그에 대한 보관과 관리를 규정하고 있다. 이에 따라 로그 관련 사항이 중요한 이슈로 부각되면서 로그를 어떻게 관리하고 사용할 것인가에 대한 관심이 늘어나고 있다.
이들 법령의 내용을 살펴보면 기업체는 물리적인 보안 시스템이나 네트워크, 보안 장비, 각종 서버나 애플리케이션에 이르기까지 내부 인프라 전체에서 발생하는 모든 로그를 일정기간 이상 모으고, 저장하고, 분석할 것을 권고하고 있다.


로그 데이터는 어떻게 사용하느냐에 따라 가치가 달라진다. 즉, 사용에 따라 쓸모 있는 데이터가 되기도 하지만, 반대로 전혀 쓸모없는 데이터가 되기도 하는 것이다. 그래서 관리자들은 로그를 쓸모 있는 데이터로 만들기 위해 매일 쏟아져 나오는 방화벽, 라우터, 서버, 각종 애플리케이션의 로그에서 시스템에 영향을 줄 수 있는 중요한 로그를 분류해 내기 위해 힘쓰고 있다.
하지만 하루에 수십 기가 많게는 수백GB씩 쌓이는 로그를 일일이 검사하고 중요성을 분류한다는 것은 결코 간단한 일이 아니다. 이 글에서는 로그를 관리하는 기본적인 원칙을 살펴보자 한다. 또한 로그의 효용성을 극대화할 수 있는 규칙에 대해 알아보겠다.

적절히 사용하지 않으면 무용지물
엄청나게 쏟아져 나오는 로그를 이용하여 네트워크를 보다 안정적으로, 서버를 보다 안정적으로 관리할 수 있는 방법은 무엇일까?
첫 번째로 필요한 것이 이기종 장비들의 로그 데이터를 한곳에 집중화시키는 것이다. 이를 위해서는 로그를 모으기 이전에 각 시스템에서 ‘어떠한 로그를 받고 어떠한 로그를 버릴 것인가’에 대한 분석이 먼저 선행돼야 한다.
로그를 서버에 남긴다는 것은 시스템의 메모리, CPU, 하드디스크 등 자원을 사용하는 것이다. 로그 관리의 어려움은 바로 여기서 발생한다. 로그 옵션을 확인해 적절한 로그를 남기도록 설정하지 않으면 소중한 컴퓨팅 자원을 낭비하는 결과가 될 수 있다. 따라서 각 서버의 로그에 대한 적절한 설정이 필요하다.


이렇게 각 시스템의 로그가 적절히 설정되면 로그를 한 곳으로 집중화시키는 것이 중요하다. 로그를 한 곳에 집중화하면 로그 관리가 편리해지고, 관리자가 로그를 찾는 시간을 절감할 수 있으며, 문제 발생시 쉽게 문제점을 찾아갈 수 있는 장점을 가지게 된다.
로그의 중앙집중화는 로그 백업이 되기 때문에 침해 사고 등이 발생했을 때 원본 로그로써의 가치를 가지게 된다. 만약 내부의 관리자중 누군가가 시스템에 접근해 데이터를 빼내고 로그를 변조하는 경우에도 중앙관리를 하게 되면 이런 문제를 해결할 수 있다. 중앙에서 관리되는 로그도 위변조를 할 수 있으므로 반드시 암호화를 하고 관리자라 할지라도 원본 데이터를 함부로 훼손하지 못하게 해야 한다.

평상시 로그 분석으로 문제 사전 예방
단순히 로그를 수집하고 한곳에 모으는 것은 로그 분석의 첫 번째 단계일 뿐이다. 문제점을 찾아 관리하고 보안 위협으로부터 시스템을 보호하기 위해서는 모으는 것에서 나아가 로그를 분석하고 보고하는 작업이 필요하다. 로그를 단지 문제가 발생하면 그 문제점을 찾을 위한 수단으로만 파악하면 안 된다. 이는 로그의 또 다른 기능인 예방이라는 차원을 등한시하는 것이며, 로그분석의 긍정적인 효과를 감소시키게 된다.
로그가 쌓여지는 곳은 항상 한정된 공간이다. 따라서 적절하게 로그를 압축화해서 보관하는 것이 필요하다. 로그 보관 기간은 각 기업체에서 정한 규정에 따르지만 적절하게 보관되지 않는 로그는 모아지지 않는 로그보다 못하게 될 수 있다.
일단 로그가 모아지면 그 로그를 효율적으로 사용하는 것이 중요하며, 그래서 두 번째로 필요한 것이 로그 분석에 관한 정책이다.
시스템 관리자나 네트워크, 보안 관리자들을 보면 수집된 로그를 제때 분석, 관리하지 않는다. 로그를 제때에 모니터링하고 분석하지 않으면 네트워크 스캔 등 공격전에 발생하는 이상 로그, 시스템이나 애플리케이션이 문제가 발생하고 있음을 알리는 메시지를 포착하지 못하고 그냥 지나치게 된다. 단순히 로그를 모으는 것이 아니라 주기적으로 로그를 분석하고, 보고서를 만들어 최근 현재 발생하고 있는 이슈를 파악해 가기 위한 방안으로 로그 분석에 관한 정책을 수립하는 것이 필수적으로 요구된다.
보안 사고나 시스템에 문제가 발생했을 때 관리자는 로그를 확인한다. 이때 관리자가 로그에 대한 정확한 이해가 없다면 로그를 확인하는데 오래 걸릴 뿐 아니라 중요한 로그도 그냥 지나칠 수 있다. 그래서 로그 분석에 대한 정책을 마련할 때는 반드시 로그를 모니터링하고 분석할 수 있는 기술적인 훈련을 포함시켜야 한다.
그렇다면 로그를 보다 효율적으로 관리하기 위해서는 어떤 정책을 포함해야 할까? 다음은 보다 효율적으로 로그 관리를 수행하기 위한 정책들이다.

● 주기적으로 로그 데이터를 분석하는 정책
보안상의 문제나 장비의 문제가 발생했을 때 로그는 아주 유용하다. 그렇지만, 만약 평상시에 주기적으로 로그를 관리한다면 문제 발생 이전에 보안상의 문제나 장비의 문제 발생을 최소화할 수 있다. 이기종 장비에서 발생하는 엄청난 양의 로그를 주기적으로 면밀하게 분석하는 프로세스를 정립하면 시스템에 발생하는 문제 해결에 도움이 되고 최근에 발생하고 있는 공격의 경향을 감지, 대처할 수 있게 된다.

● 사소한 로그도 철저하게 분석하는 정책
로그를 분석할 때 자주 저지르는 실수가 공격로그와 같이 문제가 있는 것을 뚜렷이 알 수 있는 로그만을 찾으려고 노력하는 것이다. 대부분의 로그 데이터는 특징적이지 않고 일상적인 것으로 보인다. 로그를 분석할 때는 일상적으로 보이지만 평상시와 다른 로그를 꼼꼼히 확인할 필요가 있다. 악의적인 로그만 찾으려 한다면 공격이 발생하기 전 로그나 장비 문제 발생하기 전 로그 등은 놓치게 되어서 로그의 중요한 기능중의 하나인 장애 예방을 하지 못하게 된다.

● 로그를 일반화하는 정책.
각종 장비나 애플리케이션 로그들은 어떤 특정한 형식에 맞춰져 개발된 것이 아니라 각기 다른 형태의 로그를 남기도록 설정돼 있다. 발생되는 로그를 살펴보기 위해서는 로그를 일반화해서 비교하도록 정책적으로 유도해야 한다. 수집한 로그를 특정한 형태로 요약하면 분석하기 훨씬 쉬워지고 각 로그의 우선순위를 부여해 분석하고 대응하면 시간을 절약할 수 있게 된다.

이기종 로그 상관분석
최근 로그의 경향을 보면 단순히 로그를 모으고 문제가 발생한 장비만을 살펴보는 것이 아니라 이기종 간의 로그를 하나의 분석서버에 모으고 로그의 상관분석을 통해 하나의 문제를 다각적으로 분석하고 있다. 세 번째로 필요한 것이 이기종 로그 간의 상관 분석이다.
로그는 IT 인프라 내의 모든 정보를 포함하고 있다. 보안로그를 보여주는 IDS나 IPS 같은 장비는 보안과 관련된 직접적인 침해 로그를 보여준다. 오탐의 소지는 있지만, 이들은 실제 침해시도나 발생에 대한 이벤트를 보여준다.
반면 네트워크 로그는 직접적이지는 않지만 보안과 관련된 정보를 제공한다. 패킷이 어디에서 유입되어 어디로 목적지로 가는지, 어느 포트로 전송되는지, 얼마나 많은 패킷들이 유입되고 있는지를 알려주기 때문에 주로 비정상적인 네트워크 상황을 모니터링 하고 공격이 어떻게 일어나고 있는지를 분석하는데 도움을 준다.


유닉스 계열이나 윈도우 등 각종 시스템 로그는 서버의 상태나 성능 문제 등을 관리할 수 있도록 도와준다. 또 내부 침해사고 발생시 IDS등의 로그를 활용할 수 없는 환경 하에서 원인 분석에 중요한 자료로 사용된다.
각 시스템의 로그는 기업의 인프라 환경 퍼즐 중 하나의 조각과 같다. 모든 로그데이타를 상관 분석하게 되면 퍼즐을 모두 맞추는 것과 같아서 현재의 문제점, 그리고 앞으로의 문제점 등을 모두 추론할 수 있게 된다.
보안사고 발생 시 해당 시스템의 로그만을 확인할 경우 어떠한 문제로 공격이 발생하고 성공했는지 여부만을 확인할 수 있지만 여러 시스템을 동시에 상관분석 하면 네트워크의 이상 패킷이 어떻게 흘러갔는지, 이상을 미칠 수 있는 다른 서버의 상태를 모두 확인할 수 있다. 그런데, 이러한 상관 분석을 하는 것은 쉬운 것이 아니다. 상관 분석은 내부 환경에서 발생하는 위협이 진짜인지 아닌지를 구별하고 어느 것이 우선인지에 대한 구분을 정확하게 해야 한다.
로그 관리를 하고 있는 대부분의 경우, 이러한 분석에 대한 프로파일(Profile)은 턱없이 부족한 상황이다. 따라서 많은 사용자들이 로그 분석 도구에 의존하고 있다. 하지만, 관리자가 로그에 대한 이해가 없고 선택된 데이터의 중요도를 부여할 수 없다면 로그 분석 도구가 있다고 해도 이를 효율적으로 사용하기는 쉽지 않다. 로그 분석 도구는 편리한 가이드를 제공하지만, 이를 사용자가 자신의 입맛에 맞게 꾸미려면 그만큼의 시간이 필요하다.
로그 분석은 쉬운 듯 보이지만 모든 것이 그렇듯 제대로 잘 하려면 많은 시간과 노력이 필요하다. 최근에 SIM/SEM등 여러 장비들이 나오면서 많은 도움을 주고 있지만 자신의 속한 인프라에 대한 이해가 없다면 여러 장비들도 그저 로그를 쌓고 보여주는 기능에 국한되게 마련이다. 분석도구들은 시간을 줄여주고, 관리를 편리하게 해주고, 판단을 도와주는 툴일 뿐이며, 모든 판단은 관리자의 몫이다. 다음호에는 로그 분석 도구를 이용해 로그를 관리하는 방법에 대해 알아보도록 하겠다.

댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.