[기고] 인공지능 보안관제: 허와 실

기사승인 2020.09.01  01:05:22

공유
default_news_ad1

- 김세중 이글루시큐리티 인공지능개발팀 대리

   
▲ 김세중 이글루시큐리티 인공지능개발팀 대리

[아이티데일리] 2016년은 바야흐로 인공지능의 해였다. 천재 바둑기사 이세돌 9단과 인공지능 알파고 간 펼쳐진 세기의 대결은 세간의 이목을 집중시켰고, 그간 인간의 영역이라고 간주돼 온 바둑마저 인공지능에 정복됐다는 사실은 전 세계를 충격에 빠트렸다. 그러나 이는 동시에 인공지능 분야에 대중적 관심을 불러일으킨 결정적 계기가 됐다. 대결의 승패를 떠나 이 대국을 기점으로 수많은 사람들이 멀지 않은 미래에 인공지능이 우리의 삶 속으로 완전히 들어올 것이라고 생각하기 시작했고, 스마트폰을 비롯한 각종 전자기기, 가전제품 등에 인공지능이라는 수식어가 하나 둘 포함됐다. 물론 보안업계도 예외는 아니었다. 인공지능이 주는 여러 이점들은 정보보안 분야에 충분히 매력적이었고, 그 결과 그 해 개최된 RSA 컨퍼런스(RSA Conference)에서 머신러닝이 들어가지 않은 제품은 찾아보기 어려울 정도였다.

   
▲ RSA 컨퍼런스 기술 발표 중 인공지능(출처: 맥아피)

혜성처럼 등장한 인공지능은 보안업계에서 ‘신의 한 수’라고 불리며 큰 기대를 받았다. 혹자는 인공지능이 사이버 보안에 있어 마지막 희망이 될 것이라 평가하기도 했고, 수많은 스타트업들은 각자의 인공지능 기술을 앞세워 보안 시장에 뛰어들었다. 특히 2016년 RSA 이노베이션 샌드박스 컨테스트에서 최종 승리한 팬텀(Phantom)이 2년 뒤 스플렁크에 3,500만 달러로 인수된 사례는 인공지능 보안관제의 가능성을 보여줬고, 국내에서도 지난 2017년 대구시가 지자체 최초로 인공지능 보안관제를 도입하며 그 효시를 알렸다. 오늘날 보안업계 속 인공지능은 여전히 뜨거운 화두다. 그렇지만 과연 알파고 이후 지난 5년, 인공지능은 우리에게 기대만큼의 효과를 보여줬을까? 인공지능은 정말 보안관제의 마지막 희망이었을까?


인공지능과 보안관제 - 한계

이 질문에 대답하기에 앞서, 우리는 인공지능과 보안관제의 관계에 대해 먼저 명확히 짚고 넘어갈 필요가 있다. 최초로 인공지능을 보안관제에 적용할 때는, 인공지능이 모든 보안 문제를 해결해 줄 것이라는 기대감과 함께 사람의 영역을 침범해 결국에는 사람을 대체할 것이라는 우려가 공존했다. 그리고 5년이 흐른 지금, 인공지능에 대한 기대는 점진적으로 바뀌어 가고 있으며 또 앞으로도 그래야만 한다. 다시 말해 인공지능 보안관제가 아직 발전 단계라는 사실을 인지하고, 막연한 기대 대신 구체적인 요구 사항을 통해 그 효율성을 극대화하는 방향으로 나아가야 할 것이다.

대다수의 사람들은 인공지능이라는 단어에서 스스로 생각하고 움직이는 완전한 인공지능을 떠올린다. 이를 바탕으로 인공지능 보안관제는 마치 마법처럼, 스스로 모든 외부의 공격을 막아내고 내부의 위협을 탐지 및 차단해 줄 것으로 기대된다. 분명 인공지능은 엄청난 양의 데이터를 순식간에 처리하고, 우리가 상상하지도 못한 방식으로 공격을 탐지할 수 있다. 또 충분히 발달한 과학 기술은 마법과 구별할 수 없다고도 하지만, 안타깝게도 앞서 이야기했듯 현재의 인공지능은 아직 발전 중인 상태며 보안관제에는 인공지능이 넘기 힘든 굉장한 허들들이 남아있다.

먼저 보안관제의 데이터는 굉장히 주관적이다. 어떠한 특정 보안 이벤트에 대해 누군가는 이것을 공격이라 판단할 수 있고, 또 다른 누군가는 위협적이지 않은 이벤트라 판단할 수 있다. 이에 대한 판단은 취약점 테스트나 사용하지 않는 IP에 대한 공격 등 인공지능에게 주어지지 않는 외부의 요소에 의해 결정될 때가 많은데, 이를 인공지능이 먼저 학습하기에는 무리가 있다. 국내에서도 점진적으로 가용하는 데이터의 양과 질이 넓어지고 있고 이를 기반으로 빅데이터 보안관제를 시행하고도 있으나, 아직 말 그대로 ‘모든’ 데이터를 사용하고 분석하기에는 한계가 분명하다.

또한 인공지능은 수동적이다. 현재의 인공지능은 주어지는 데이터에 대한 학습만으로 스스로를 발전시킬 수 있다. 어떠한 이벤트를 공격이라고 판단하기 위해서는 적어도 비슷한 데이터를 사전에 학습해야 하는데, 이를 역으로 말하면 공격이 ‘발생’하고 나서야 인공지능이 ‘학습’할 수 있다는 것이다. 쉽게 말해 제로데이 공격 등 기존에 전혀 보지 못했던 공격에 대해서는 속수무책이 될 수밖에 없다. 이러한 한계점 때문에 지도학습(Supervised Learning)과 비지도 학습(Unsupervised Learning)을 복합적으로 적용해 고전적인 룰 기반으로 탐지할 수 없는 공격을 탐지해야 하지만, 이를 위해서는 고도로 훈련된 보안관제 요원의 노하우가 필요하다.

   
▲ 지도 및 비지도 학습의 목표(출처: 이글루시큐리티)

게다가 인공지능은, 특히 딥러닝 계열은 아직 블랙박스인 상태다. 인공지능이 하는 예측에 대해 명확한 근거나 이유를 제시하기 어렵다. 99% 이상의 예측 성공률을 보이는 인공지능이 실제 공격과 비공격을 제대로 구분하고 있는지, 이를 보장할 수 있는 근거가 없다는 이야기다. 인공지능이 학습하는 데이터에는 우리가 미처 생각하지도 못한 패턴이 존재할 수 있으며, 심지어 이는 보안과 전혀 연관이 없을 가능성도 있다. 다시 말해 명확한 근거와 책임 추적이 필요한 보안관제의 요구를 아직 만족시키지 못한다.

인공지능의 블랙박스는 오래전부터 대두되던 문제로, 최근에는 ‘설명 가능한 인공지능(XAI, eXplainable AI)’을 통해 인공지능의 예측에 대해 인공지능 나름의 근거를 제시함으로써 사용자에게 더욱 신뢰도 있는 결과를 제시하는 방법이 떠오르고 있다. 이는 보안업계에도 적용이 되면서 인공지능의 신뢰도를 향상시키고 있으나, 실제 XAI 기술이 적용된 솔루션은 극소수며, 이 중에서도 유의미한 결과를 내는 기술력의 제품은 손에 꼽을 정도다.

   
▲ 예측에 대한 근거를 제시하는 XAI 기법 예시(출처: 이글루시큐리티)

마지막으로 현재의 인공지능은 지나치게 충실하다. 너무나도 완벽히 발전한 알고리즘들과 프레임워크들은 인간이 제시하는 데이터를 극도로 비슷하게 학습 및 예측할 수 있다. 문제는 데이터를 만들고 제시하는 우리가 아직 완벽하지 않다는 것에 있다. 인공지능에게 완벽한 데이터를 제공할 수 없으므로, 인공지능도 완벽해질 수 없다. 이를 극복하기 위해서는 결국 다시 사람의 노력이 요구된다. 인공지능으로 업무를 쉽게 하려 했지만, 기대와는 달리 또 다른 업무에 맞닥트리게 되는 것이다.

이러한 한계점들을 이해하다 보면, 원론적인 질문에 도달하게 된다. 우리는 왜 인공지능을 써야 할까?


인공지능이 정말로 필요한가? - (허)와 실

당연한 말이지만, 인공지능 시대가 도래했다고 해서 반드시 인공지능을 써야 하는 것만은 아니다. 발달된 기술이 모든 것에 대한 해답은 아니며, 이는 마치 양자 컴퓨터가 도입되면 모든 고전 컴퓨터는 사용되지 않을 것이라고 생각하는 것과 동일한 오류다. 2020년 현재에도 가장 많이 발생하는 사이버 공격은 피싱, 랜섬웨어, 분산 서비스 거부(DDoS) 등의 고전적인 공격들이며, 우려와는 달리 인공지능적인 공격이 발생하는 것보다 공격을 더 크게 또 더 많이 발생시키는데 이를 악용하는 경우가 많다.

사실 수많은 보안 이벤트들에는 아직까지도 전통적인 룰 기반의 SIEM이 더욱 효율적인 대응책이 된다. 시그니처를 탐지해 보안 이벤트라고 보고하는 것은, 인공지능이 최적으로 활동할 수 있는 분야가 아니다. 그럼에도 불구하고 단지 ‘인공지능 기술을 사용해야 하니까 보안관제에도 적용한다’는 것은 스스로 보안에 구멍을 내는 일과 다를 바 없다. 괜히 구관이 명관이 아니기 때문이다.

그렇다면 인공지능은 정말로 필요한 존재인가? 그에 대한 대답은 당연히 ‘그렇다’이다. 앞서 상술한 한계점들은 인공지능의 단점이 아니라, 인공지능의 포지션을 오해함으로써 비롯되는 경우가 많다. 보안관제에서 인공지능의 역할은 기존의 SIEM을 대체하는 것이 아니다. SIEM은 인공지능으로 인해 사장될 것이 아니라 보다 효율적으로 작동돼야 한다. 전통적인 방식의 탐지는 SIEM에게 맡기고, 인간이 따라갈 수 없는 공격 기법의 발견 등을 인공지능에게 맡기면 된다. 새로운 시그니처는 하루에도 수만 개씩 발생하고 이것을 학습해 최소한의 공백으로 대응할 수 있게 하는 것이 인공지능의 진정한 역할이다.

그리고 이러한 인공지능의 학습에는 결국 다시 보안 전문가의 손을 거쳐 올바른 방법으로 특징점을 추출(Feature extraction)해 데이터를 정형화하고, 각각 정형화된 데이터에 대해 학습 데이터를 생성하거나 예측 데이터를 검증하는 과정 등이 뒤따르게 된다. 한 마디로 지난 5년간 우리가 깨달은 것은, 보안에서 사람의 역할은 절대 대체될 수 없다는 것이다. 오히려 인공지능 보안관제에서 사람의 역할은 더욱 중요해졌다.

2019년 산스서베이(Sans Survey)가 발표한 설문 조사(SANS Automation and Integration Survey)결과에 따르면, 초창기 인공지능의 도입과 함께 발생했던 우려와는 정반대로 더 높은 수준의 인공지능을 도입한 회사들이 오히려 더 많은 수의 보안 전문가를 채용하고 있다. 인공지능을 도입하면 할수록 더 많은 양의 가공된 데이터가 필요해지며 이는 아직 인공지능이 직접 해결할 수 없는 문제이기 때문이다.


인공지능을 사용하는 올바른 방법 - 허와 (실)

인공지능은 아직 어린아이 같은 존재다. 어린아이에게 어른도 못하는 것을 시키는 부모는 없듯이 아직 태동 중인 인공지능 기술에게 영화에서나 나올법한 마법 같은 효과를 기대해서는 안 된다. 보안관제가 인공지능에게 기대해야 하는 것은, 결과론적으로 봤을 때 속도와 가용 범위다. 하루에 수천만 건씩 발생하는 보안 이벤트는 이미 인간이 감당할 수 있는 한계를 지났으며, 이에 숙달된 관제 요원급의 실력으로 1초에 수십만 건씩 분석할 수 있는 ‘인공지능’ 관제 요원이 필요하다. 역할을 나눠 인공지능이 광범위한 데이터를 분석하고 정말로 치명적이고 쉽사리 알 수 없는 공격들을 사람이 판단한다면, 효율성과 정확도 그리고 대응 시간까지 모두 높일 수 있을 것이다.

실제 사이트 A에 따르면 매일 발생하는 보안 이벤트는 약 3천만 건으로, 이는 한 명의 관제 요원이 1분 당 1건씩 처리한다 가정했을 때 무려 만 명에 가까운 인원이 요구되는 수치다. 그러나 인공지능을 활용하면 약 2시간 안에 모두 처리할 수 있고 이 중 극도로 치명적인 공격 데이터만 인공지능이 판별해 관제 요원에게 전달하는 방식으로, 범용성과 효율성 모두를 끌어올릴 수 있다.

   
▲ 인공지능 기반의 보안관제체계 발전(출처: 이글루시큐리티)

물론 인공지능 예측에도 사람과 같은 오탐이 존재하지만, 인공지능이 학습한 데이터에 대한 오탐률은 이미 ‘만에 하나’를 넘어 소수점 5~6번째 자리에 와 있다. 이는 보안 이벤트 백만 건당 약 2~3건의 오탐으로, 수치적으로 굉장히 높은 정탐률을 가지고 있다고 볼 수 있다. 추가적으로 여러 인공지능 알고리즘을 복합적으로 사용한 후 교차 검증을 통해 신뢰도를 높이는 것은 이미 기본적으로 진행되는 사항 중 하나다.

통계적으로 일 수천만 건의 보안 이벤트가 발생할 경우, 같은 확률의 정탐률로도 수십에서 수백 개의 오탐이 발생하는 것이 현실이다. 이는 큰 수의 법칙상 당연한 것으로 이를 인공지능에 대한 비난이나 비판으로 삼아서는 안 된다. 오히려 이를 기반으로 절대다수의 이벤트를 인공지능에게 맡기고 기존의 관제 요원들은 극소수의 치명적인 이벤트에 집중할 수 있는 투트랙 전략을 가져가는 것이 성공적인 인공지능 보안관제의 첫걸음이 될 것이다.


현재의 인공지능 보안관제

초기의 인공지능 보안관제는 기존 SIEM의 룰과 유사한 방식으로 특징점을 추출하고 이를 기반으로 학습 및 예측을 진행하는 방식이었다. 이는 대다수의 인공지능 알고리즘이 정형화된 데이터를 필요로 했기 때문이다. 이렇게 정형화된 테이블형(tabular) 데이터는 랜덤 포레스트(Random Forest)나 XG부스트(XGBoost)등의 지도 학습과 K-평균(K-means) 또는 아이솔레이션 포레스트(Isolation Forest) 등의 비지도 학습 알고리즘을 거쳐 결과를 내놓는 것이 일반적이었다.

그러나 나날이 발전을 거듭하는 보안 데이터에 대한 특징점 추출은 일반화가 어렵다는 단점을 가지고 있었다. 이에 최근에는 추가적인 추출을 인공지능에게 맡기고 여기서 나온 특징점 또는 예상치를 기존 알고리즘과 함께 활용하는 앙상블(Ensemble) 또는 스태킹(Stacking) 기법이 주류로 자리 잡고 있다. 바야흐로 사람과 인공지능이 함께 활약하는 모델이 최전선에서 사용되고 있는 것이다.

   
▲ 스태킹 기법의 기본 구조 형태(출처: TR-IDS7)

더 나아가 딥러닝 모델을 통해 사람이 파악할 수 없는 패턴까지 추적, 특징점화하고 사람은 통계적인 특징점만 추출하는 선택과 집중에 기반한 역할 분담이 알고리즘 레벨에도 적용돼야 할 것이다. 이를 통해 종래에 환경별 다르게 가져가야 했던 특징점들을 자동으로 추출해 낼 수 있다면, 앞으로 초기에 소요되는 인적 및 물적 자원을 크게 줄이고 이들의 보다 효율적인 운용 또한 가능해질 전망이다.


앞으로의 보안관제

아직 인공지능 보안관제에는 그 한계가 명확히 존재한다. 학습에 소요되는 인적 자원, 예측되지 않는 오탐, 인공지능에 대한 신뢰 등이 대표적인 예이다. 그러나 인공지능으로 인해 얻을 수 있는 효과들은 이러한 한계점을 초월하며, 인공지능이 보안관제에 있어 혁명이라는 것에 이견을 보이는 전문가가 극소수인 것도 사실이다. 더욱이 앞서 상술했던 한계점들은 기업에겐 또 다른 도약의 기회가 될 수 있다. 무형의 자산을 유형화할 절호의 기회인 것이다.

학습 데이터 생성에 소요되는 인적 자원은 기업의 입장에서 일시적인 손해로 보일 수 있다. 적게는 몇 달에서 많게는 몇 년을 수십 명의 관제 요원이 학습 데이터 생성에 투입돼, 일견 인적 자원의 낭비로 여겨질 수 있기 때문이다. 그렇지만 한번 보안관제에 대한 지식과 노하우를 유형의 자산으로 만들어 놓으면, 그에 대한 활용도는 실로 무궁무진하다. 인공지능뿐만이 아닌, CTI(Cyber Threat Intelligence), SOAR(Security Orchestration, Automation and Response) 등 다양한 차세대 보안 솔루션에 모두 활용할 수 있기 때문이다.

예측되지 않는 오탐은, 역설적으로 인공지능이 발전할 수 있는 기회라고도 할 수 있다. 잘못 탐지된 데이터는 다르게 말하면 기존 데이터에서 학습한 것의 상정 외 데이터라 볼 수 있고, 이를 실시간으로 재학습시키는 피드백 기법 등을 통해 인공지능은 한층 더 발전할 수 있기 때문이다. 최초 1회의 학습으로 완성되는 인공지능보다 지속적으로 발전 가능한 인공지능이야말로, 대다수가 바라는 인공지능의 참된 모습이라 할 수 있겠다.

마지막으로 인공지능에 대한 신뢰는 앞서 언급했던 XAI를 비롯한 다양한 기술들을 통해 해결될 수 있다. 이에 종래에는 인공지능이 자신의 예측(inference)을 모두 설명할 수 있게 돼 사람에서 인공지능의 일방적인 피드백이 아닌 상호 협력 관계를 구축할 수 있게 될 것이다.

앞으로의 인공지능 보안관제는 현재의 학습과 예측을 넘어 최종적인 자동 대응까지 그 범위를 넓혀갈 것이다. 그리고 이른바 SOAR라고 불리는 플랫폼은 현재 발생하고 있는 보안관제의 여러 문제들을 해결해 줄 것이라 기대받고 있으며, SOAR를 통한 보안관제 자동화에 인공지능이 큰 역할을 하게 될 것으로 예상된다. 단순히 새로운 룰 기반으로 공격 이벤트 처리를 자동화하는 것은 기존의 SIEM과 크게 다를 바 없기 때문이다. 이벤트 처리가 보안관제에 있어 최종적인 관문인 만큼, 인공지능에게도 그만큼의 기대와 우려가 쏟아질 것이다.

   
▲ 차세대 보안관제 핵심 키워드(출처: 이글루시큐리티)

바야흐로 2021년은 차세대 인공지능 보안관제의 원년이 될 것으로 전망된다. 다양한 방식의 인공지능 제품들이 쏟아졌고, 그중에서 옥석을 가리는 작업이 마무리될 것이며, 살아남은 이들은 다시 다음 단계의 도약을 준비해야 한다. 우리는 인공지능을 둘러싼 허황된 기대에서 벗어나 현실을 직시할 필요가 있다. 인공지능이 보안관제, 더 나아가 보안의 도약을 위한 발판이 될지는 전적으로 이를 사용하는 우리의 손에 달려 있다.

김세중 @

<저작권자 © 아이티데일리 무단전재 및 재배포금지>
default_news_ad4
default_side_ad1

인기기사

default_side_ad2

포토

1 2 3
set_P1
default_side_ad3

섹션별 인기기사 및 최근기사

default_setNet2
default_bottom
#top