멀웨어 분석, 엔드포인트 탐지, 사건 대응에 특화된 해결책
[보안뉴스 문가용 기자] 사이버 보안 산업의 약점이라고 한다면 IT 기술에 지나치게 집중한다는 것이다. 솔루션 개발 자체에는 커다란 힘을 쏟는데, 그 솔루션이 실제 상황에서 어떤 쓸모를 발휘할 것인지는 깊이 생각하지 않는 게 보통이다. 그리고 이게 현재 인공지능과 머신 러닝이라는 기술에도 똑같이 적용되고 있다. 2003년도에 방화벽 이야기가 처음 나왔을 때와 비슷하다.

[이미지 = iclickart]
2003년에는 위협 탐지 기술의 핵심이 ‘패턴 매칭(pattern matching)’이었다. 하드웨어 내에서 패턴 매칭을 실시할 수 있게 되면서 하드웨어 기반 솔루션(방화벽 등)과 소프트웨어 기반 솔루션(침입 탐지 시스템 등)의 경계선이 허물어진 해이기도 했다.
경계가 허물어지는 때는 굉장히 시끄럽다. 당시도 그랬다. 경계가 허물어지는 와중에 침투 탐지 시스템이 패턴 매칭뿐만 아니라 비정상 현상 탐지(anomaly detection)와 맥락연결(correlation)까지 할 수 있다는 사실을 모두가 잊어버렸다. 그러면서 방화벽을 기본으로 한 패턴 매칭이 모든 회사의 ‘디폴트’ 방어 체계가 됐다. 그리고 곧 방화벽 하나로 모든 방어가 가능하다는 식으로 인식이 굳어졌다. 여러 겹의 방어 시스템의 일부가 아니라 말이다.
이런 역사를 되짚는 건 매우 중요하다. 왜냐하면 인공지능과 머신 러닝이라는 새 기술이 등장하면서 역사가 반복되고 있기 때문이다. 모두 머신 러닝이 여러 보안 방책 중 하나라는 사실을 잊어가고 있다.
인공지능의 정의는 “기계가 똑똑해지고, 지능이 필요한 일을 수행하도록 만드는 기술”이다. 이 똑똑한 일을 수행하는 데 사람의 도움이 없어야 한다는 것도 인공지능의 전제 조건이다. 머신 러닝은 “기계가 인간이 준 데이터를 가지고 학습할 수 있도록 해주는 기술”이다. 이렇게만 보면 인공지능이나 머신 러닝이 보안에서 할 일은 대단히 광범위하지 않다.
머신 러닝은 보안의 여러 가지 문제 중 그 해결법이 잘 정립된 일부를 굉장히 효율적으로 해결할 수 있는 기술이다. 어떤 보안 전문가나 업체가 인공지능이나 머신 러닝이라는 표현을 하면, 대부분은 휴리스틱(heuristics)을 말하는 거다. 휴리스틱은 인공지능보다 훨씬 간단한 기술이지만 그 나름대로 다양한 보안 문제들을 해결해준다. 즉, 문제를 신속하게 해결할 수 있다는 것의 강조법이라는 것이다.
머신 러닝 역시 휴리스틱과 마찬가지로 특정 종류의 문제를 해결하는 데 뛰어난 면모를 보이는 일개 툴로, 수상한 활동을 탐지하는 것이 바로 그것이다. 주로 범위가 정해져 있고, 이미 과거에 데이터가 축적된 것들을 탐지하는 데에 가장 뛰어난 면모를 보인다.
여기까지 읽은 독자들 중 일부는 “흔한 인공지능 비판가”라고 필자를 생각할지도 모른다. 하지만 필자는 오래 전부터 멀웨어 탐지에 머신 러닝을 적용하는 시도를 숱하게 목격하고 실제로 진행해본 바 있다. 그리고 머신 러닝이 보여주는 효율과 결과에 크게 놀란 적도 많다. 머신 러닝으로 한 실험에서 적잖은 성공을 거뒀다고 말할 수 있지만, 그 과정 속에서 머신 러닝이 가진 한계 또한 배울 수 있었다.
머신 러닝이 보안 문제를 해결하려면 다음과 같은 조건이 성립되어야만 했다.
1) 구조의 제약 : 학습하는 데이터의 유형이 일정해야 한다. 또한 분석 시에도 그러한 데이터 형식 내에서만 제 기능을 발휘할 수 있다.
2) 행동의 제약 : 머신 러닝이 성공적으로 적용된 경우, 모델링 대상이 되는 데이터는 정해진 몇 가지 행동들의 결과로서 만들어진 것들이다. 즉 데이터나 그 결과가 예측 가능하고 이해의 범주 안에 있을 수밖에 없다.
멀웨어 분석과 엔드포인트 탐지, 대응은 이 조건을 충족시켜주는 보안의 오랜 과제들로, 머신 러닝이 엄청난 활약을 할 수밖에 없다. 사실 현재 머신 러닝을 가장 많이 강조하는 시장 역시 멀웨어 분석, 엔드포인트 탐지, 사건 대응 시장이다.
그러니 머신 러닝을 멀웨어 분석, 엔드포인트 탐지 등에서와 마찬가지 개념으로 네트워크에 적용한다는 건 위험한 일이 될 수 있다. 네트워크 데이터는 구조적인 제약을 가지고 있지도 않고, 행동에 제약이 걸리는 것도 아니기 때문이다. 그렇다면 인공지능이나 머신 러닝은 이미 한계에 부딪힌 것일까? 네트워크 데이터 분석을 위해서는 이 신기술을 사용할 수 없는 걸까?
답이 애매할 수 있는데, 그렇기도 하고 아니기도 하다. 네트워크 내 모든 사용자나 장비의 ‘정상 기준’을 설정하고, 그것에 벗어나는 걸 적발하는 데에 인공지능이나 머신 러닝을 적용하려고 한다면 돈만 버릴 공산이 크다. 아무리 장비가 똑똑해져도 이렇게 학습시키면 결국 인공지능 역시 오탐을 내고, 경고를 발할 수밖에 없게 되고, 이는 사람의 투입으로만 해결이 가능하게 된다.
예를 들어 이상한 것이 발견될 때마다 경고를 날리는 트래픽 분석 기능이 있다고 치자. 이 기능에서 어느 날 한 개의 IP 주소로부터 지나치게 많은 트래픽이 발생하고 있다는 경고가 나왔다. 과거에는 이런 일이 전혀 없었으므로 머신 러닝이 보기에는 더욱 수상하다. 그래서 경보를 울렸다. 하지만 분석가가 조사해보니 새로운 백업이 진행되고 있었던 것이었다. 분석가가 모자라서 각광 받는 게 머신 러닝과 인공지능이었는데, 그 부분을 해결해주지 못한다는 것이다.
그렇다면 어떻게 해야 인공지능과 머신 러닝을 제대로 활용할 수 있는 걸까? 어떻게 해야 위의 예시에서 백업 과정을 인공지능이 자동으로 파악해 경보를 내지 않을 수 있게 될까? 정상적인 행위를 학습하게 하고, 그에 벗어나면 비정상이라고 정해주는 대신 머신 러닝이 환경 전체를 학습하도록 하고, 특히 기업 행위 자체를 비슷한 타 기업의 행위와 비교해서 학습하도록 한다면, 백업 정도야 쉽게 구분할 수 있을 것이다.
다시 한 번 강조하지만 현재 보안 업계에서 말하는 머신 러닝은 전부 같은 것도 아니고, 진정한 의미의 머신 러닝이 아닌 것도 많다. 무엇보다 머신 러닝이 만능 해결사는 더더욱 아니다. 그저 어떤 특수한 장점을 가지고 있는 기술이고, 그 강점을 살릴 만한 조건에서의 성공 사례가 일부 존재할 뿐이다.
3줄 요약
1. 2003년 당시 하드웨어 방화벽 하나면 모든 보안 문제가 해결될 줄 알았다.
2. 2018년 현재 인공지능 하나면 모든 보안 문제가 해결될 것 같은 분위기가 만들어지고 있다.
3. 인공지능은 보안의 일부 문제를 해결하는 한 가지 기술일 뿐이다. 활용 조건도 까다롭다.
글 : 개리 골롬(Gary Golomb), Awake Security
[국제부 문가용 기자(globoan@boannews.com)]
Copyrighted 2015. UBM-Tech. 117153:0515BC
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>








.gif)





