2018.08.24

사이버 보안 속 인공지능, 할 수 있는 일과 할 수 없는 일

Scot Finnie | CSO
최근 수많은 보안 제품에서 인공지능(Artificial Intelligence, AI)과 머신러닝(Machine Learning, ML)에 대해 회자되고 있지만, 대부분 마케팅과 얽혀있기 때문에 이런 도구가 실제로 무엇을 하는지 알기 힘들다. 이번 기사를 통해 보안 속에서 AI와 머신러닝의 현황을 명백하게 알아보자.


Credit: Getty Images Bank

가장 일반적으로 오해하는 것부터 알아보자. 기업 보안 소프트웨어 내에 실제 AI가 통합되는 것은 거의 없다. 용어가 자주 등장하고 있지만 이는 대부분 마케팅과 관련이 있을 뿐, 기술 측면에서 적용된 것은 거의 없다. 순수 인공지능은 인지 능력을 재현하는 것이다.

인공지능의 많은 분류 가운데 하나인 머신러닝은 일부 보안 소프트웨어로 반영되고 있다. 그러나 ML이라는 용어조차도 다소 마케팅적으로 사용되고 있다. 최근 보안 소프트웨어에서의 인공지능 사용은 진정한 인공지능이라기보다는 1980년~90년대 규칙 기반의 전문가 시스템에 더 가깝다.

베이시안(Bayesian) 스팸함을 사용해 수천 개의 알려진 스팸 이메일과 수천 개의 알려진 양호한 이메일을 통해 교육한 적이 있다면 머신러닝이 어떻게 작동하는 지 잘 알 수 있다. 대부분의 경우, 자체 교육이 불가능하며 교육을 좀더 업데이트하기 위해서는 프로그래밍을 포함한 인간의 개입이 필요하다. 보안 분야에는 많은 변수가 있기 때문에 많은 데이터 요소가 있어 교육을 최신 상태로 유지하면 효과적일 수 있다.

그러나 머신러닝은 자신이 하는 일을 알고 있는 사람이 사용할 환경에서 많은 양의 데이터로 교육받는 경우, 매우 효과적일 수 있다. 복잡한 시스템이 가능하지만, 머신러닝은 광범위한 임무보다는 목표가 정해진 작업에서 더 잘 작동한다.

머신러닝의 가장 큰 강점 가운데 하나는 사용자 및 개체 행동 분석(User and Entity Behavior Analytics, UEBA)의 기초가 되는 이상 탐지(outlier detection)다. IDC 글로벌 보안 제품 연구 책임자 크리스 키셀은 "UEBA는 주어진 기기에서 나오거나 받은 활동이 변칙적인지 여부를 결정하는 것을 의미한다"고 말했다. UEBA는 많은 주요 사이버보안 방어 활동에 적합하다.

철저하고 잘 훈련된 머신러닝 시스템은 대부분의 경우 알려진 좋은 이벤트를 정의한다. 이를 통해 위협 인텔리전스 또는 보안 모니터링 시스템이 예외를 식별하는 데 집중할 수 있다.

머신러닝 시스템이 공급업체에 의해 자체적인 일반 데이터만으로 교육을 받으면 어떻게 될까, 또는 불충분한 이벤트로 훈련받으면 어떻게 될까, 아니면 신원 부족으로 이상치가 너무 많아지면 어떻게 될까.

이는 기업용 위협탐지 소프트웨어의 한계에 봉착할 수 있다. 머신러닝 시스템을 지속적으로 교육시키지 않으면 머신러닝이 제공해야 하는 실질적인 효과를 누리지 못한다. 그리고 시간이 지남에 따라 시스템의 효율성은 떨어진다.

머신러닝은 프로세스를 간소화하고 SOC(Security Operation Center) 담당자에게 조언할 수 있다. 이는 좀 더 강력한 인공지능 기반의 시스템에서 얻을 수 있는 효과에 대해 보증 역할을 한다. 현재 머신러닝이 작동하는 수준은 다음과 같다.

기업 보안을 위한 머신러닝 사용 사례 Top 9
1. 진행중인 사이버공격을 탐지하고 차단
적어도 공격이 일어나기 전까지 문을 닫지 못한다. 적어도 지금까지는 그렇다. 하지만 머신러닝은 인간이 찾아 행동하기 전에 지표를 발견하고 가능한 행동을 제안할 것이다. 라드웨어 보안연구원 파스칼 기니스는 "우리는 알려지지 않은 DDoS 공격의 정도를 탐지하기 위해 머신러닝을 사용한다. 머신러닝은 공격 트래픽을 특성화하고 공격을 차단하기 위한 시그니처를 자동으로 생성한다"고 말했다.

2. 위협 인텔리전스(Threat intelligence) 
머신러닝은 수많은 데이터를 훒어보고 발견한 행동을 분류하는데 탁월하다. 이는 평범하지 않은 것을 보게 되면 인간 분석가에게 경고할 수 있다. 머신러닝은 사람이 할 수 있는 것보다 훨씬 빠르게 데이터 풀을 스크리닝하는 힘을 가질 수 있다.
과부하(Overload)는 공격자들이 일반적으로 사용하는 전술이다. 이는 말하기는 쉽지만 탐지하는 것은 어려울 수 있다. 위협 탐지 시스템은 실시간에 가까울수록 훨씬 더 효과적이다.

3. 기존 취약점을 확인, 우선 순위 결정, 수정
기존 취약점을 확인하고 우선 순위를 지정하고 수정하는 작업은 모든 기업에서 정기적으로 수행해야 한다. 하지만, 이는 일상적으로 기업 보안에서 가장 큰 문제가 되어왔다. 강력한 머신러닝 기반 시스템을 통해 패치되지 않은 취약점들을 마침내 해결할 수 있게 됐다.

4. 보안 모니터링(Security monitoring)
보안 모니터링은 네트워크 트래픽, 내외부 행동, 데이터 액세스 및 기타 다양한 기능과 활동에 대한 정보를 파악하는 프로세스다. 적절하게 프로그래밍된 머신러닝은 막대한 데이터 풀에서 비정상을 찾을 수 있다. 따라서 머신러닝은 광범위한 제품의 로그 파일 및 오류 메시지를 다루는 데 중점을 둔다면 적절한 기술일 수 있다.

5. 랜섬웨어, 피싱 공격을 포함한 악성코드 탐지
랜섬웨어들은 엄청나게 빠르게 성장한다. 머신러닝은 어제의 랜섬웨어를 탐지하는 시그니처 형태로 돌아가지 않는 유일한 도구일 수 있다. 비정상적인 행동을 확인하는 기능은 랜섬웨어를 추적하는데 효과적이다.

6. 취약점에 대한 코드 검사
데브섹옵스(DevSecOps)의 메시지 가운데 하나는 보안 코드다. 개발자는 보안 문제를 코드화하는 방법을 알아야 하지만, 머신러닝은 악용될 수 있는 일반적인 허점과 취약점에 대한 코드를 분석해 해당 프로세스를 자동화하는데 도움을 줄 수 있다. 실제로 초보 개발자를 가르치는데 사용할 수 있는 도구일 수 있다.

7. 데이터 분류(Data categorization)
데이터 개인정보보호 및 데이터 보호 규정을 준수하려면 보호하려는 데이터의 특성을 알아야 한다. 머신러닝은 새로 유입된 데이터를 검사해 민감도 레벨을 분류해 시스템을 보호할 수 있다.

8. 허니팟(Honeypots)
진정한 AI라고 부를 수 있는 딥러닝은 현재 마이그레이션 자동화에 쓰일 수 있다. 기니스는 "기업용 네트워크 내 허니팟을 배포함으로써 자사는 악의적인 것처럼 보이는 데이터를 수집할 수 있었다. 허니팟에 탐지된 모든 이벤트 또는 트래픽 인스턴스는 100% 악성코드다. 허니팟과 데이터가 충분하면 심층 신경망(deep neural networks)을 강력한 정확성으로 공격을 탐지하는 모델을 만드는데 사용할 수 있다"고 말했다.

9. 미래의 위협을 예측하고 적응하기
예측 보안 분석은 이미 일부 회사에서 이행하고 있다. 예측 분석은 비즈니스 인텔리전스에 대한 몇가지 약속을 보여준다. 미래의 취약점과 침해를 예측하기 위해 유사한 머신러닝 기술을 활용할 수 있는가?

AI 기반의 보안 제품, 진실을 알자
이번 기사에서 언급한 일부 전문가들은 보안 현장에 인공지능 기반의 제품이 있다는 자체를 부인했다. 이는 다소 솔직하지 않을 수 있다. 인공지능은 인공지능이 아닌 머신러닝을 포함한 다른 폭넓은 기술을 포괄하는 용어로도 사용할 수 있기 때문이다. 하지만 인공지능은 좀더 엄격한 의미로 인지 능력이 있는 컴퓨터 시스템만을 의미할 수도 있다.

도몰(Domall)의 CISO인 니알 브라운은 오늘날의 AI 기반 보안 제품을 믿지 않는다. 브라운은 "AI는 엄청난 잠재력을 지니고 있으며, 앞으로 보안에 중추적인 역할을 담당할 것이다. 그러나 AI가 기업 보안에 연속적으로 배치되는 사례는 거의 없다"고 말했다. 브라운은 머신러닝이 보안에 쓰일 수 있다는 점을 인지하고 있다. 브라운은 일부 보안 제품을 둘러싼 AI 과대 광고에 신경쓰지 않는다. 그는 다른 여러 출처를 통해 판단한다.

그레이캐슬 시큐리티(GreyCastle Security) CEO 레그 할니쉬는 "오늘날 많은 공급업체가 자사의 제품에 인텔리전스를 적용하는 대신, 고정된 규칙을 강화하는데 엄청난 위력을 발휘하는 AI를 사용한다고 주장한다"고 말하며 그간 유행어처럼 쓰이는 AI의 용도에 대해 요약했다.

이제 CSO와 CISO는 보안업체에게 머신러닝을 통해 어떤 종류의 위협을 피할 수 있는지 제대로 질문을 던져야 한다.

기본 질문은 "어떻게 배울 수 있는가"다. 델파이(Delphi) 창립자이자 클라우드 스토리지 업체인 와사비(Wasabi) 자문 톰 쿠로풀로스는 "AI 또는 ML을 배우기 위해서는 특정 매커니즘 구현을 이해해야 한다"며, "그 이후 공급업체에게 필요한 데이터 양은 어느 정도이며, 재교육은 얼마나 자주해야 하는지, 알고리즘과 인간의 협력 매커니즘은 어떤지, 머신러닝 또는 인공지능이 사용할 수 있는 데이터의 종류는 한정되어 있는지 에 대해 질문을 할 수 있어야 한다"고 말했다.

인테그랄 파트너스(Integral Partners) 이사이자 IEEE 회원인 케인 맥그레드레이는 "AI 기반의 보안 솔루션을 우선 자사의 환경을 복제해 놓은 실험실에서 평가하라. 그 다음 평판이 좋은 외부 레드팀과 계약해 반복적으로 해당 환경을 침투할 수 있는지 확인하라"고 조언했다.

기존 또는 현재의 기업 보안 플랫폼에 탑재된 AI 수준이 아무리 낮다고 하더라도 보안을 위한 AI의 미래에 투자할 수 밖에 없다. 이에는 간단한 이유가 있다.

브라운은 "사이버범죄자는 이미 머신러닝을 사용하고 있기 때문이다. AI가 사이버범죄를 포함한 모든 산업 분야에 적용되기까지는 시간 문제다. 보안이 새로운 보호 장치를 구축할 때마다 사이버범죄자들은 해당 방어책을 뚫는 방법을 개발해왔다. AI는 이런 행위를 더욱 가속화시키고 있다. 지능형 범죄 시스템이 365일 24시간을 은행, 병원, 에너지 회사에 침입하기 위해 시도하고 있는 상황을 생각해보자. 이런 사이버범죄자를 막기 위해서는 해당 조직은 초당 수백 번의 공격 행위에 대응해야 한다. 이것이 AI가 제시하는 미래이자 도전이다"고 말했다. editor@itworld.co.kr  


2018.08.24

사이버 보안 속 인공지능, 할 수 있는 일과 할 수 없는 일

Scot Finnie | CSO
최근 수많은 보안 제품에서 인공지능(Artificial Intelligence, AI)과 머신러닝(Machine Learning, ML)에 대해 회자되고 있지만, 대부분 마케팅과 얽혀있기 때문에 이런 도구가 실제로 무엇을 하는지 알기 힘들다. 이번 기사를 통해 보안 속에서 AI와 머신러닝의 현황을 명백하게 알아보자.


Credit: Getty Images Bank

가장 일반적으로 오해하는 것부터 알아보자. 기업 보안 소프트웨어 내에 실제 AI가 통합되는 것은 거의 없다. 용어가 자주 등장하고 있지만 이는 대부분 마케팅과 관련이 있을 뿐, 기술 측면에서 적용된 것은 거의 없다. 순수 인공지능은 인지 능력을 재현하는 것이다.

인공지능의 많은 분류 가운데 하나인 머신러닝은 일부 보안 소프트웨어로 반영되고 있다. 그러나 ML이라는 용어조차도 다소 마케팅적으로 사용되고 있다. 최근 보안 소프트웨어에서의 인공지능 사용은 진정한 인공지능이라기보다는 1980년~90년대 규칙 기반의 전문가 시스템에 더 가깝다.

베이시안(Bayesian) 스팸함을 사용해 수천 개의 알려진 스팸 이메일과 수천 개의 알려진 양호한 이메일을 통해 교육한 적이 있다면 머신러닝이 어떻게 작동하는 지 잘 알 수 있다. 대부분의 경우, 자체 교육이 불가능하며 교육을 좀더 업데이트하기 위해서는 프로그래밍을 포함한 인간의 개입이 필요하다. 보안 분야에는 많은 변수가 있기 때문에 많은 데이터 요소가 있어 교육을 최신 상태로 유지하면 효과적일 수 있다.

그러나 머신러닝은 자신이 하는 일을 알고 있는 사람이 사용할 환경에서 많은 양의 데이터로 교육받는 경우, 매우 효과적일 수 있다. 복잡한 시스템이 가능하지만, 머신러닝은 광범위한 임무보다는 목표가 정해진 작업에서 더 잘 작동한다.

머신러닝의 가장 큰 강점 가운데 하나는 사용자 및 개체 행동 분석(User and Entity Behavior Analytics, UEBA)의 기초가 되는 이상 탐지(outlier detection)다. IDC 글로벌 보안 제품 연구 책임자 크리스 키셀은 "UEBA는 주어진 기기에서 나오거나 받은 활동이 변칙적인지 여부를 결정하는 것을 의미한다"고 말했다. UEBA는 많은 주요 사이버보안 방어 활동에 적합하다.

철저하고 잘 훈련된 머신러닝 시스템은 대부분의 경우 알려진 좋은 이벤트를 정의한다. 이를 통해 위협 인텔리전스 또는 보안 모니터링 시스템이 예외를 식별하는 데 집중할 수 있다.

머신러닝 시스템이 공급업체에 의해 자체적인 일반 데이터만으로 교육을 받으면 어떻게 될까, 또는 불충분한 이벤트로 훈련받으면 어떻게 될까, 아니면 신원 부족으로 이상치가 너무 많아지면 어떻게 될까.

이는 기업용 위협탐지 소프트웨어의 한계에 봉착할 수 있다. 머신러닝 시스템을 지속적으로 교육시키지 않으면 머신러닝이 제공해야 하는 실질적인 효과를 누리지 못한다. 그리고 시간이 지남에 따라 시스템의 효율성은 떨어진다.

머신러닝은 프로세스를 간소화하고 SOC(Security Operation Center) 담당자에게 조언할 수 있다. 이는 좀 더 강력한 인공지능 기반의 시스템에서 얻을 수 있는 효과에 대해 보증 역할을 한다. 현재 머신러닝이 작동하는 수준은 다음과 같다.

기업 보안을 위한 머신러닝 사용 사례 Top 9
1. 진행중인 사이버공격을 탐지하고 차단
적어도 공격이 일어나기 전까지 문을 닫지 못한다. 적어도 지금까지는 그렇다. 하지만 머신러닝은 인간이 찾아 행동하기 전에 지표를 발견하고 가능한 행동을 제안할 것이다. 라드웨어 보안연구원 파스칼 기니스는 "우리는 알려지지 않은 DDoS 공격의 정도를 탐지하기 위해 머신러닝을 사용한다. 머신러닝은 공격 트래픽을 특성화하고 공격을 차단하기 위한 시그니처를 자동으로 생성한다"고 말했다.

2. 위협 인텔리전스(Threat intelligence) 
머신러닝은 수많은 데이터를 훒어보고 발견한 행동을 분류하는데 탁월하다. 이는 평범하지 않은 것을 보게 되면 인간 분석가에게 경고할 수 있다. 머신러닝은 사람이 할 수 있는 것보다 훨씬 빠르게 데이터 풀을 스크리닝하는 힘을 가질 수 있다.
과부하(Overload)는 공격자들이 일반적으로 사용하는 전술이다. 이는 말하기는 쉽지만 탐지하는 것은 어려울 수 있다. 위협 탐지 시스템은 실시간에 가까울수록 훨씬 더 효과적이다.

3. 기존 취약점을 확인, 우선 순위 결정, 수정
기존 취약점을 확인하고 우선 순위를 지정하고 수정하는 작업은 모든 기업에서 정기적으로 수행해야 한다. 하지만, 이는 일상적으로 기업 보안에서 가장 큰 문제가 되어왔다. 강력한 머신러닝 기반 시스템을 통해 패치되지 않은 취약점들을 마침내 해결할 수 있게 됐다.

4. 보안 모니터링(Security monitoring)
보안 모니터링은 네트워크 트래픽, 내외부 행동, 데이터 액세스 및 기타 다양한 기능과 활동에 대한 정보를 파악하는 프로세스다. 적절하게 프로그래밍된 머신러닝은 막대한 데이터 풀에서 비정상을 찾을 수 있다. 따라서 머신러닝은 광범위한 제품의 로그 파일 및 오류 메시지를 다루는 데 중점을 둔다면 적절한 기술일 수 있다.

5. 랜섬웨어, 피싱 공격을 포함한 악성코드 탐지
랜섬웨어들은 엄청나게 빠르게 성장한다. 머신러닝은 어제의 랜섬웨어를 탐지하는 시그니처 형태로 돌아가지 않는 유일한 도구일 수 있다. 비정상적인 행동을 확인하는 기능은 랜섬웨어를 추적하는데 효과적이다.

6. 취약점에 대한 코드 검사
데브섹옵스(DevSecOps)의 메시지 가운데 하나는 보안 코드다. 개발자는 보안 문제를 코드화하는 방법을 알아야 하지만, 머신러닝은 악용될 수 있는 일반적인 허점과 취약점에 대한 코드를 분석해 해당 프로세스를 자동화하는데 도움을 줄 수 있다. 실제로 초보 개발자를 가르치는데 사용할 수 있는 도구일 수 있다.

7. 데이터 분류(Data categorization)
데이터 개인정보보호 및 데이터 보호 규정을 준수하려면 보호하려는 데이터의 특성을 알아야 한다. 머신러닝은 새로 유입된 데이터를 검사해 민감도 레벨을 분류해 시스템을 보호할 수 있다.

8. 허니팟(Honeypots)
진정한 AI라고 부를 수 있는 딥러닝은 현재 마이그레이션 자동화에 쓰일 수 있다. 기니스는 "기업용 네트워크 내 허니팟을 배포함으로써 자사는 악의적인 것처럼 보이는 데이터를 수집할 수 있었다. 허니팟에 탐지된 모든 이벤트 또는 트래픽 인스턴스는 100% 악성코드다. 허니팟과 데이터가 충분하면 심층 신경망(deep neural networks)을 강력한 정확성으로 공격을 탐지하는 모델을 만드는데 사용할 수 있다"고 말했다.

9. 미래의 위협을 예측하고 적응하기
예측 보안 분석은 이미 일부 회사에서 이행하고 있다. 예측 분석은 비즈니스 인텔리전스에 대한 몇가지 약속을 보여준다. 미래의 취약점과 침해를 예측하기 위해 유사한 머신러닝 기술을 활용할 수 있는가?

AI 기반의 보안 제품, 진실을 알자
이번 기사에서 언급한 일부 전문가들은 보안 현장에 인공지능 기반의 제품이 있다는 자체를 부인했다. 이는 다소 솔직하지 않을 수 있다. 인공지능은 인공지능이 아닌 머신러닝을 포함한 다른 폭넓은 기술을 포괄하는 용어로도 사용할 수 있기 때문이다. 하지만 인공지능은 좀더 엄격한 의미로 인지 능력이 있는 컴퓨터 시스템만을 의미할 수도 있다.

도몰(Domall)의 CISO인 니알 브라운은 오늘날의 AI 기반 보안 제품을 믿지 않는다. 브라운은 "AI는 엄청난 잠재력을 지니고 있으며, 앞으로 보안에 중추적인 역할을 담당할 것이다. 그러나 AI가 기업 보안에 연속적으로 배치되는 사례는 거의 없다"고 말했다. 브라운은 머신러닝이 보안에 쓰일 수 있다는 점을 인지하고 있다. 브라운은 일부 보안 제품을 둘러싼 AI 과대 광고에 신경쓰지 않는다. 그는 다른 여러 출처를 통해 판단한다.

그레이캐슬 시큐리티(GreyCastle Security) CEO 레그 할니쉬는 "오늘날 많은 공급업체가 자사의 제품에 인텔리전스를 적용하는 대신, 고정된 규칙을 강화하는데 엄청난 위력을 발휘하는 AI를 사용한다고 주장한다"고 말하며 그간 유행어처럼 쓰이는 AI의 용도에 대해 요약했다.

이제 CSO와 CISO는 보안업체에게 머신러닝을 통해 어떤 종류의 위협을 피할 수 있는지 제대로 질문을 던져야 한다.

기본 질문은 "어떻게 배울 수 있는가"다. 델파이(Delphi) 창립자이자 클라우드 스토리지 업체인 와사비(Wasabi) 자문 톰 쿠로풀로스는 "AI 또는 ML을 배우기 위해서는 특정 매커니즘 구현을 이해해야 한다"며, "그 이후 공급업체에게 필요한 데이터 양은 어느 정도이며, 재교육은 얼마나 자주해야 하는지, 알고리즘과 인간의 협력 매커니즘은 어떤지, 머신러닝 또는 인공지능이 사용할 수 있는 데이터의 종류는 한정되어 있는지 에 대해 질문을 할 수 있어야 한다"고 말했다.

인테그랄 파트너스(Integral Partners) 이사이자 IEEE 회원인 케인 맥그레드레이는 "AI 기반의 보안 솔루션을 우선 자사의 환경을 복제해 놓은 실험실에서 평가하라. 그 다음 평판이 좋은 외부 레드팀과 계약해 반복적으로 해당 환경을 침투할 수 있는지 확인하라"고 조언했다.

기존 또는 현재의 기업 보안 플랫폼에 탑재된 AI 수준이 아무리 낮다고 하더라도 보안을 위한 AI의 미래에 투자할 수 밖에 없다. 이에는 간단한 이유가 있다.

브라운은 "사이버범죄자는 이미 머신러닝을 사용하고 있기 때문이다. AI가 사이버범죄를 포함한 모든 산업 분야에 적용되기까지는 시간 문제다. 보안이 새로운 보호 장치를 구축할 때마다 사이버범죄자들은 해당 방어책을 뚫는 방법을 개발해왔다. AI는 이런 행위를 더욱 가속화시키고 있다. 지능형 범죄 시스템이 365일 24시간을 은행, 병원, 에너지 회사에 침입하기 위해 시도하고 있는 상황을 생각해보자. 이런 사이버범죄자를 막기 위해서는 해당 조직은 초당 수백 번의 공격 행위에 대응해야 한다. 이것이 AI가 제시하는 미래이자 도전이다"고 말했다. editor@itworld.co.kr  


X