보안솔루션, 정확성보다 처리성능 치중해 부정확한 보안로그 양산
보안로그 원시데이터에 주목해야 빅데이터 시대 앞서갈 수 있어
최근 IT 업계에 있어 화제의 키워드는 ‘빅데이터’와 ‘보안’이라고 할 수 있습니다. 이와 관련 본지에서는 최근 ‘빅데이터 분석으로 살펴본 IDS와 보안관제의 완성’이라는 책자 발간을 통해 사고 분석이 아닌 데이터 분석의 관점에서 빅데이터와 접목된 올바른 보안 솔루션 활용방안을 제안한 바 있는 강명훈 씨의 연재기획을 3회에 걸쳐 소개합니다. 많은 관심과 의견 부탁드립니다. [편집자주(editor@boannews.com)]
연재목차----------------------
1. 빅데이터와 보안
2. 빅데이터와 보안업계의 인력난
3. 빅데이터와 보안로그
-----------------------------
[보안뉴스=강명훈 IT 보안전문가] 보안업계는 오래전부터 보안로그라는 빅데이터에 파묻혀 있었다. 그 이유는 크게 2가지이다.
1. 대부분 보안 솔루션의 기술 기반인 ‘패턴 매치’ 룰은 태생적인 한계를 가지고 있다. -> 공격/정상 패턴 모두 같은 범위의 기호(문자/숫자)로 표현되는 한계로 인해 ‘오탐(공격 표절)’의 가능성이 항상 존재한다.
2. 일반로그를 필터링하는 보안 솔루션의 룰이 정교하지 못하다.
보안업계 종사자라면 지난 2003년 미국에서 불거진 ‘IDS 무용론’을 기억할 것이다. IDS 무용론의 핵심 원인은 ‘오탐’이었으며, 오탐의 핵심 원인은 ‘패턴 매치’ 기법의 한계였다. 그런데 그 한계는 여전히 존재함에도 IDS 이후 출현한 IPS, 웹방화벽 등 대부분 보안솔루션은 여전히 ‘패턴 매치’ 기법을 기반으로 동작하고 있다(IDS만 구식으로 치부됐다).
결국 ‘패턴 매치’ 기법을 버리지 않는 한, 보안로그라는 빅데이터에서 탈출하는 방법은 보안 솔루션의 룰을 정교하게 만드는 것뿐임을 알 수 있다. 왜 보안 솔루션의 룰은 정교하지 못할까? 정교한 룰의 조건은 크게 2가지이다.
1. 공격 원리 및 특성 반영
2. 룰이 적용될 네트워크 환경의 특성 반영
-> 트래픽 등 일반로그의 발생 양상은 환경마다 달라진다. 즉, 룰 적용 대상이 달라진다. 그리고 적용 대상에 따라 적용결과 역시 달라진다. 그렇기 때문에 적용 대상에 따라 커스터마이징된 룰 적용이 필요하다.
모든 보안 벤더들은 룰 제작시 공격 원리 및 특성을 충실하게 반영하고 있다. 그러나 안타깝게도 보안 솔루션이 설치되는 네트워크 환경의 특성은 반영하지 못하고 있다. 업계의 영세성, 인력 부족의 악순환, 정확한 정보보다 화려한 정보에 대한 선호, 사람보다 제품으로 보안을 해결하려는 문화 등 복합적인 요인이 얼키고 설키며 룰 분석 및 개발 분야의 발전이 더뎌진 결과이다.
네트워크 환경의 특성을 룰에 반영하려면 어떻게 해야 할까? 룰이 입력이라면 로그는 출력이며, 출력 결과를 분석하면 입력의 문제점을 찾을 수 있다.
보안 솔루션에서 발생하는 로그는 일반적으로 ‘공격명/IP/Port’ 등의 정보를 수록한 기본정보(심증)와 해당 기본정보를 발생시킨 원인 패킷(물증), 상세정보(원시데이터)로 나뉜다. 즉, 물증인 원시데이터를 분석하면 룰의 문제점을 찾을 수 있다.
사례를 보자. 특정 SQL Injection 공격을 탐지하는 아래와 같은 룰이 있다.
alert tcp any any -> any 80(uricontent:"%20and%20";)
아래 표는 해당 룰에 의해 발생한 로그의 상세정보, 즉 원시데이터 사례이다. 참고로 원시데이터는 일정한 규칙으로 나열되지 않은 패턴의 집합, 즉 비정형 데이터이다. 해당 원시데이터의 공격 여부를 확인하기 위해서는 %20and%20이란 탐지패턴을 찾고, 해당 패턴이 전체 로그에서 어떤 의미로 사용되었는지를 파악해야 한다(이런 식으로 보안로그가 발생할 때마다 원시데이터를 하나하나 분석하려면 많은 인력과 시간이 필요하다).
그런데 해당 비정형 원시데이터를 아래와 같이 탐지패턴을 기준으로 나열한 정형 데이터로 바꿔보자. ‘공백’을 의미하는 ‘%20’ 등의 특수문자(URL 인코딩 문자)도 읽기 쉽게 바꿨다. 원시데이터의 패턴 발생 분포가 한 눈에 파악되면서 탐지패턴을 찾는 별도의 노력 없이도, 탐지패턴의 의미 파악이 가능함을 알 수 있다.
이런 식으로 룰별 원시데이터를 분석하면 어떻게 될까? 더 많은 로그를 더 빨리 분석할 수 있음은 물론, 정량적인 룰 정확도 측정이 가능해진다. 그리고 결정적으로 확인된 공격과 오탐(공격 표절) 패턴의 발생분포를 룰 정교화 작업의 근거로 사용할 수 있다. 사례 결과를 근거로 패턴 필터링을 한 번만 하던 기존 룰을 아래와 같이 두 번 필터링하도록 바꿀 수도 있다. 공격 원리 및 특성이 반영된 룰에 특정 네트워크 환경의 특성 반영이 가능해지는 것이다.
alert tcp any any -> any 80(uricontent:“%20and%20”; pcre:”/%20and%20('|"|%27|%22)?\d(%|%25)?('|"|%27|%22)?(=|%3d)('|"|%27|%22)?\d('|"|%27|%22)?/”;)
분석된 원시데이터가 많으면 많을수록 룰 정교화 수준은 높아진다. 그리고 이런 과정을 통해 정교해진 룰은 ‘오탐(공격 표절)’을 줄일 것이고, 자연스럽게 검사해야할 보안로그의 양도 줄일 것이다. 전수검사의 가능성이 높아지고, 해킹 시도를 놓치지 않고 적시에 발견할 가능성이 높아지는 것이다.
보안로그 원시데이터는 공격 여부 검증은 물론 보안솔루션의 정확도를 좌우하는 핵심 데이터임에도 그동안 제대로 주목을 받지 못해왔다. 그 이유는 2가지이다.
1. ‘룰 기반 보안 솔루션’의 개발방향이 ‘룰의 정확성’보다 ‘처리 성능’에 집중되어 왔다. ‘IT 인프라 강국’의 딜레마일까? 업계는 그동안 ‘정확히’ 보다 ‘많이 그리고 빨리’ 처리하는 것에 집중해온 것이다.
2. ‘룰 개발 및 분석 전문가’를 양성하고 그들의 노하우를 축적 및 개량해서 업계의 역량으로 발전시키는데 소홀했다.
그 결과 대량의 부정확한 보안로그가 양산되면서 보안업계는 보안로그라는 빅데이터에 파묻히고 말았다. 업계를 후끈 달군 빅데이터는 사실 가까이 있었던 것이다.
기존에 없던 데이터가 빅데이터 시대라서 하늘에서 뚝 떨어졌을까? 데이터는 항상 우리 주위에 있어 왔고, 데이터웨어하우스(Data Ware House)니 데이터마이닝(Data Mining)이니 하는 기술도 항상 있어왔다. 빅데이터는 그저 좀더 새로운 관점에서 데이터를 처리하는 기술에 대한 마케팅의 일환일 뿐이다.
보안로그는 원시데이터를 포함한 수많은 데이터를 가지고 있다. 그리고 그 데이터들은 지금 이 순간에도 우리가 주목해주길 바라고 있다. 빅데이터에 열광하기 전에 가까이 있는 데이터에 주목하는 순간, 그 데이터는 진정한 빅데이터가 될 것이다.
[글_ 강 명 훈 IT 보안전문가(truese@hanmail.net)]
필자는-------------------------------------------
강 명 훈 IT 보안전문가(truese@hanmail.net)
필자는 4년간의 시스템 엔지니어 경험을 바탕으로 최근 7년 동안 네트워크 보안솔루션 및 보안관제 분야에 종사해 왔으며, 공공·민간기업 보안관제 체계 구축 프로젝트에 다수 참여했다. 최근에는 사고 분석이 아닌 데이터 분석의 관점에서 빅데이터와 접목된 올바른 보안 솔루션 활용방안을 제시한 ‘빅데이터 분석으로 살펴본 IDS와 보안관제의 완성’이라는 책자를 발간한 바 있다.
-------------------------------------------------
카페 소개 : 정보보안기사 카페(다음 정보보안기사 대표 카페)
카페 주소 :http://cafe.daum.net/Security-no1클릭
교재 소개 : 알기쉬운 정보보안기사.산업기사(이론편,문제편[1,200제])