딥러닝 기반 안티바이러스, 어떻게 태어났나

김기홍 세인트시큐리티 대표, 차세대 백신 '맥스(MAX)' 개발기

컴퓨팅입력 :2017/05/12 13:32    수정: 2017/05/12 14:45

보안 스타트업 세인트시큐리티가 구글 딥러닝 프레임워크 '텐서플로(TensorFlow)'를 활용한 안티바이러스 제품 개발기를 공개했다. 딥러닝 기술 덕분에 백신 시장에 먼저 뛰어든 업체의 제품과 견줄만한 성능을 확보할 수 있었다고 강조했다. 상용화 이후 국내외 백신 시장에서 의미있는 경쟁을 벌여나갈 수 있을지 주목된다.

김기홍 세인트시큐리티 대표는 지난달(4월) 26일 서울 삼성동 코엑스 '제23회 정보통신망 정보보호컨퍼런스(NetSec-KR)' 2일차 주제강연 '잘 학습시킨 머신러닝 하나, 열 안티바이러스 안 부럽다'를 통해 회사의 차세대 백신 맥스(MAX) 개발 배경과 과정, 성능 측정 결과를 발표했다. 맥스는 올해(2017년) 2월 공개 베타 서비스로 제공되기 시작했다.

김기홍 세인트시큐리티 대표.

김 대표에 따르면 최근 5년간 주요 보안컨퍼런스의 기술관련 세션 주제에선 컨버전스, 클라우드, 인텔리전스, 개인정보보호, 악성코드, 랜섬웨어, 분산서비스거부(DDoS), 지능형지속위협(APT) 등이 화두였다. 이런 내용은 일반인들의 관심과 거리가 멀다. 일반인들은 백신에 관심이 많은데, 전문가들은 그 원천기술이나 이론적인 주제를 안 다룬다는 얘기다.

안티바이러스 기술뿐아니라, 시장도 그리 역동적이진 않았다. 김 대표는 "조사해 보니 안티바이러스란 이름을 단 제품만 전세계에 100종이 있고 그 제공업체 업력은 평균 15년 이상이었다"며 "업체가 새로 생기지도, 없어지지도 않고 10년 넘게 동일 브랜드와 제품을 유지하면서 버전만 업그레이드하는 방식으로 시장이 이어져 왔다"고 지적했다.

김기홍 세인트시큐리티 대표의 2017년 NetSec-KR 컨퍼런스 발표 자료 일부.

그는 "미국, 이스라엘에서 사이버보안 스타트업이 많이 도전하는 시장은 방화벽, 침입탐지방어시스템(IDS/IPS)"이라고 덧붙였다. 국내서도 V3(1991년), 바이로봇(1998년), 엔프로텍트(2000년), 알약(2007년)이 출시된 후, 10년동안 세계적인 전문 벤치마크 결과에 오를만한 신제품은 등장하지 않았다.

왜 이럴까. 김 대표가 생각하는 이유는 타 사이버보안업종에 비해 안티바이러스 시장의 진입장벽이 높은 점이다. 이런 얘기다. 후발 업체가 새로운 안티바이러스를 들고 나와 선발 업체와 경쟁해 이기려면, 그보다 성능이 뛰어난 안티바이러스를 만들어야 했다. 쉽게 말해 탐지와 치료를 더 잘 해야 한다. 그런데 이는 바이러스 샘플을 많이 보유한 회사일수록, 즉 먼저 시작할수록 유리한 경쟁이었다.

김기홍 세인트시큐리티 대표의 2017년 NetSec-KR 컨퍼런스 발표 자료 일부.

김 대표는 샘플 규모로 성능을 높이는 전통적인 안티바이러스 시장에서 스타트업과 기성업체의 경쟁은 다윗과 골리앗의 싸움이 될 수밖에 없다고 지적했다. 다만 현대 인공지능(AI)의 기반 요소기술로 각광받고 있는 머신러닝, 특히 '딥러닝' 기술을 활용할 수 있게 되면서, 세계 각지 스타트업에게도 새로운 안티바이러스 개발이 '해 볼 만한' 도전이 됐다고 한다.

세인트시큐리티는 국내서 보기 드문 안티바이러스 스타트업 가운데 하나다. 머신러닝 기반 악성코드 탐지 엔진으로 '맥스'라는 이름의 안티바이러스를 개발 중이다. 이를 위해 구글이 오픈소스로 공개한 딥러닝 프레임워크 텐서플로를 사용했다. 직원 20명 규모의 세인트시큐리티에서 텐서플로 습득 기간을 포함해 8개월 정도 걸린 차세대 안티바이러스 엔진 개발 과정과 결과는 다음과 같다.

김기홍 세인트시큐리티 대표의 2017년 NetSec-KR 컨퍼런스 발표 자료 일부.

맥스는 PE, APK, HWP 악성코드 파일만을 학습했다. 바이러스, 웜, 백도어, 스파이웨어, 랜섬웨어, 개인정보탈취 등 분류별 악성코드 모델링이 적용됐다. 세인트시큐리티는 50만개씩 추출한 각 분류 대표 악성코드와 그 메타데이터를 학습하고, 협력관계인 악성코드정보공유사이트 '바이러스토털'의 탐지결과를 기반으로 재학습 과정을 거쳤다. 이로써 학습데이터 기준 평균 탐지율 99.4% 이상의 엔진을 만들었다.

김 대표는 맥스가 무작위 악성코드 100개를 분석한 결과 99%를 탐지했다고 설명했다. 같은 방식의 테스트에서 국내 백신 탐지율은 80~87%, 해외 백신 탐지율은 86~94% 수준이었다고 대조했다. 맥스는 영국 보안업체 SE랩스의 지난해(2016년) 12월 8일자 악성코드탐지 테스트 결과, 알려진 샘플과 알려지지 않은 샘플을 각각 100% 탐지하고, 탐지 오류율 0%를 기록한 것으로 인정받기도 했다고 강조했다.

세인트시큐리티 맥스 소개자료 일부. 맥스와 국내외 백신 업체 제품의 악성코드 탐지율 비교 자료.

머신러닝을 쓰는 안티바이러스 제품의 특징은 최소화한 패턴 사용, 최소화한 시스템 영역 모니터링, 최소화한 업데이트 빈도 등으로 요약된다. 이런 장점과 함께 비교적 높은 탐지율을 얻고, 자동화 추세인 악성코드 공격에 대응할 보안 인력의 효율적 배분을 보장하기 위해서라도, 안티바이러스에 머신러닝 기술을 활용할 필요가 있다는 게 김 대표의 주장이다.

관련기사

그에 따르면 국외 시장에선 맥스처럼 머신러닝을 쓰는 안티바이러스 제품이 이미 출시돼 있다. 그 탐지율은 악성코드 패턴 기반 전통적인 안티바이러스 대비 96~98% 수준이다. 다만 '과탐'에 따른 탐지 오류 문제가 크다. 정상 소프트웨어를 악성코드로 추정해 동작을 못하게 만드는 일이 빈번하단 얘기다. 주로 액티브X 기반 인터넷뱅킹 모듈이 과탐된다. 그래서 국외 머신러닝 백신이 국내에 들어오지 못하고 있다.

김 대표는 "맥스 엔진에 PDF와 오피스 문서 형태 악성코드 샘플도 학습시키는 중이나 아직 공개하지 않았다"며 "학습에 효율적인 하드웨어 성능을 고려해야 하기 때문에, 향후 주요 과제는 정확한 탐지를 위해 샘플의 어떤 특징을 얼마나 적절하게 추출하고 이를 실제 탐지 기능에 어떻게 반영할 것인지가 될 것"이라고 말했다.