본문 바로가기
AhnLab 칼럼

[안철수연구소 칼럼] 바이러스 및 악성코드와 백신의 미래

by 보안세상 2020. 4. 20.

2009.01.02

 

보안 제품의 기능 확장·웹 보안과 결합 지속

컴퓨터를 사용하는 사람들은 누구나 한 번쯤은 바이러스에 걸려서 고생을 하거나 애드웨어 때문에 원하지 않는 광고 창을 닫느라 땀을 흘린 경험을 가지고 있다. 또 스파이웨어는 사용자가 알아차리지 못하게 정보를 빼돌린다. 이러한 악성코드는 나름대로 각각 ‘성격’을 가지고 있다. 이 ‘성격’은 탄생 초기에는 어설펐지만 수많은 운영체제와 사용자 환경을 겪으면서 ‘진화’해 가고 있는 것이다.

 

단, 스파이웨어는 사용자가 알아차리지 못하게 정보를 빼돌리고 있었으니 눈에 띄는 직접적인 피해나 번거로움은 없었을지도 모르지만, 쇼핑 사이트나 이동통신 사이트의 사용자 정보 유출 뉴스를 듣고 나면 며칠 후부터 메일과 SMS를 통하여 증가하는 스팸과 광고에 짜증내 본 기억도 떠오를 것이다.


사용자를 불편하게 하고 정보를 빼내려는 이러한 악성코드가 사라진다면 얼마나 좋을까? 하지만 마치 사회에서 도둑이나 강도가 없길 바라지만 사라지지 않듯이, 운영체제를 만드는 마이크로소프트가 ‘신뢰할 수 있는 컴퓨팅’을 내세우며 보안을 강화해 나가더라도 악성코드는 줄어들지 않고 더욱 교묘하고 은밀하게 정보를 빼내가려고 하고 있다. 도둑이나 강도가 없는 세상은 사람들이 모두가 천사가 되는 영화나 소설 속에서나 가능할 것 같다.


영화나 소설과 같은 이야기가 나왔으니 이어서 비유를 해보자면 베트맨에 나오는 악역인 조커의 캐릭터처럼 악성코드도 ‘성격’을 가지고 있다. 그리고 이 ‘성격’은 탄생 초기에는 어설펐지만 수많은 운영체제와 사용자 환경을 겪으면서 ‘진화’해 가고 있다. 사실, 운영체제가 점점 더 거대해지고 많은 기능을 제공하면서 악성코드가 가질 수 있는 ‘성격’은 점점 더 다양해지고 있는 현실이다.


그렇다면 최근에 등장하는(또는 등장한 걸 모를 수도 있는) 악성코드들은 어떤 ‘성격’을 가지고 있을까? 악성코드의 미래를 이야기하기 전에 이들의 성장과정인 필모그라피(filmography)를 먼저 아는 것이 도움이 될 것이다.

 

악성코드, 점점 자신을 숨기다

초기의 악성코드들은 순진한 ‘성격’을 가지고 있었다. 바이러스에 감염되면 벽에 낙서를 하듯이 “아무개 여기 다녀가다”라는 식으로 표시를 하거나 프로그램 내부에 특정한 문자열을 심어서 자신의 사인으로 남기기도 했다. 그냥 어디엔가 자신의 이름이 나온다는 것이 재미있는 그런 호기심 많은 사춘기와 같은 시기였을 테니까.


그렇게 얌전했던 성격은 1990년대 후반에 들어서면서부터 심각하게 삐뚤어지기 시작했는데, 컴퓨터 운영 체제가 도스(DOS)를 사용하던 것에서 윈도우(Windows) 형태로 바뀌면서부터 더 악동 같은 짓을 하게 되었다. 왜냐하면 윈도우 환경은 집에서 혼자 장난감을 가지고 놀다가 동네 놀이터에 나가서 놀게 되는 것처럼 더 넓고, 더 다양하고, 더 많은(사실 이것이 중요하다! 공격할 수 있는 대상이 무지막지하게 늘어났으니!) 환경을 제공해 주었다. 그뿐만 아니라 인터넷의 대중화는 이러한 놀이터를 연결해서 놀이 동산에 입장한 것처럼 사람들을 쉽게 연결할 수 있게 되었고 악성코드를 만들어서 시험해볼 수 있는 좋은 놀이터를 제공하게 되었기 때문이다.


그럼 악성코드는 왜 놀이터를 헤집고 다니게 되었을까? 아이러니컬하게도 악성코드를 만들기 쉬워진 것은 GUI(Graphic User Interface)를 제공하는 운영 체제와 Visual C 등으로 편리해진 프로그래밍 덕분이다. 왜냐하면 악성코드도 사용자가 의도하지 않은, 하지만 그 프로그램을 만든 누군가가 원하는 무엇인가를 수행하는 하나의 소프트웨어이기 때문이다.


악성코드들이 순진함에서 점점 삐뚤어진 성격을 가지게 되면서 좀 더 강렬하고 자극적이고 치명적인 모습으로 진화해가기 시작했다. 왜냐하면 보안 회사들의 방어 능력도 점점 좋아지고 빨라졌고 운영 체제를 만들던 마이크로소프트도 자사 운영 체제의 취약점을 보완하기 위해서 많은 노력과 투자를 하기 시작했기 때문이다.

쉽게 이야기하면 초기에 지은 집들은 방범이 허술해서 도둑이 쉽게 들어올 수 있었지만, 경비원을 두고 주인이 직접 문을 점검하고 다니니 악성코드들은 문을 열고 들어오기 위해서 더 힘들게 고생을 해야 했다. 마치 영화 ‘미션 임파서블’에서 컴퓨터에 접근하기 위해서 줄을 타고 내려와서 대롱대롱 힘들게 매달려 있어야 했던 것처럼 말이다.

 

악성코드, 당신의 안방을 노리다

위에서 간단하게 살펴본 것처럼 악성코드들은 점점 지능적으로 변해갔다. 들키지 않고 오래 남아 있어야 하고 사용자 몰래 무엇인가를 해야 하기 때문이다. 더 강화된 방범 시스템을 피하기 위해서 더욱 높은 수준의 변장과 다양한 침투 도구들이 필요하게 되었다. 사용자들도 한 두 번쯤은 악성코드에 당하게 되면서 인식이 높아졌기 때문에 악성코드를 쉽게 만들어서 마구 뿌릴 수 있던 그런 시절은 지나가버렸다.


무척 힘들게 집에 침입한 도둑이 그냥 벽에 낙서만 하고 돌아설까? 그냥 가기엔 도둑 입장에서 무언가 허전하고 아쉽고 바보 같은 느낌이 든다. 그렇다. 힘들게 집에 들어갔으니 돈이 될만한 무엇인가를 좀 들고 나가야겠다. 사실 악성코드를 만들 수 있는 정도의 수준이면 사용자의 컴퓨터에서 무엇인가를 집어 나가는 것은 어려운 일도 아니다.(만들어진 것을 이용하는 사용자와 그것을 만들어주는 개발자의 차이란 참으로 크지 않던가?)


그래서 처음에는 그 집에 있는 돈이 될만한 정보들을 들고 나가기 시작했다. 대표적으로 사용자의 개인 정보를 노리기 시작했고 사용자에게 광고를 보여주고 돈을 벌어보기도 했다. 그 다음에는 사용자의 금융 정보, 그리고 나중에는 사용자의 데이터 파일까지 내보내기 시작했다.(이쯤 되면 악성코드의 성격이 참 많이 빗나가고 있다.)

 

악성코드, 크게 한 방을 노리다

보안 소프트웨어의 방어 노력과 사용자의 높아진 경각심으로 인하여 악성코드들은 새로운 방법을 모색하기 시작했는데 그것은 바로 눈에 띄지 않게 더 숨어버리는 것이었다. 처음부터 들어가서 노골적으로 무엇인가를 가져가려고 하니 잘 들키게 되어서, 이젠 몰래 들어간 후에, 훗날을 기약하는 원격 조정 폭탄(?)을 조심스럽게 심어놓는 것이다.


악성코드가 사용자의 PC를 조금씩 조금씩 장악해 나가면서 자신만의 꿈을 키워 나갔는데 그것은 바로 사용자 PC에 심어놓은 원격 조정 폭탄들을 동원하여서 한 탕 크게 하는 것이다. 말하자면 은행강도 정도로 크게 한탕하고 도망가는 것이라고 할까? 힘들게 한 탕을 하려니 개인 사용자 수준의 정보로는 부족하고 기업이나 기관의 큰 데이터베이스를 노리거나, 공격에 대한 예고를 통해 돈을 요구하는 형태로 발전하게 되었다. 지금도 특정 사이트를 공격하는 D-day가 되면, 많은 개인 사용자 PC들이 사용자도 모르게 좀비가 되어서 공격에 동원되는지 알 수 없을 정도이다.


여기까지 오게 되면 순진하게 시작되었던 악성코드의 성격은 수많은 좀비를 앞세운 무장강도 수준으로 삐뚤어진 성격이 되어버린 것이라고 할 수 있겠다. 지금은 악성코드들이 사용자의 PC를 원격으로 조정하기 위하여 영화 ‘마이너리티 리포트’에 나오는 작은 스파이 로봇들을 뿌리는 것처럼 작지만 알아차리기 힘든 에이전트들을 몰래 몰래 뿌리고 있는 중이다. 언제, 어느 사이트를 공격할지는 알지 못하는 채로.

 

악성코드의 유비쿼터스 시대; 언제 어디서나, 보이지 않게

그렇다면 앞으로 시간이 좀 더 흐르고 나면 이러한 악성코드들을 싹 없애버릴 수 있을까? 안타깝게도 대답은 ‘아니다’이다. 오히려 악성코드들이 활약할 수 있는 분야는 더 다양해지고 있다. 사람들이 PC뿐만이 아니라 노트북을 사용하고(사실 노트북은 PC랑 운영 체제 기반과 환경이 거의 같다), 핸드폰, MP3P, PDA, PMP, PDP, 내비게이션 등 무수히 많은 디지털 기기를 사용하고 있다.


사용자들은 앞으로 더 많은 개인화한 디지털 기기들을 이용하게 될 텐데, 이들은 모두 운영 체제를 가지고 있고 또 그 취약점을 가지고 있다. 하드웨어 제품을 만드는 회사와 종류는 다를지 몰라도 운영 체제는 마이크로소프트가 거의 독과점을 하고 있는 상황에서 악성코드들에게는 더 다양한 놀이터를 제공하는 것일지도 모른다.


사실, 개인화한 기기뿐만 아니라 홈 네트워크가 더 많이 보급되고 가정의 가전 제품들도 급속히 네트워크화한다면 냉장고가 악성코드에 감염되어서 문을 열어 주지 않거나, 반찬을 녹여 버리거나, 냉각기를 세워서 냉장고 앞을 흥건하게 적셔놓을지도 모르는 일이다. 디지털 도어 락이 입력을 거부하거나 디지털 텔레비전이 마음대로 온라인 주문을 하지 않을 거라고 제조업체가 보장할 수 있을까?

 

 

악성코드와 보안 제품의 가상화

GUI 환경을 통해 사용자들에게 편리한 환경을 제공했듯이(물론 악성코드에게도 편리한 환경), 최근에는 가상화 환경을 통해 시스템을 절약하고 한정된 자원으로 더 많은 일들을 할 수 있도록 해주는 노력들이 이어지고 있다. 가상화를 통해 구현되는 환경은 사용자 입장에서는 큰 차이를 느끼지 못할 수도 있지만, 시스템의 활용성을 더 높이고 돈을 더 많이 들이지 않아도 된다는 점에서 매우 매력적인 환경이 될 것이다.


그런데 사용자에게 편리한 환경은 악성코드에게도 편리한 환경이 될 수 있다는 점에서 편리함과 보안성은 동전의 양면과 같은 성격을 가지고 있다. 악성코드가 가상화 환경에서 존재한다면 쉽게 폐기할 수 있을 것이라고 생각할 수도 있지만 가상화 환경에 숨어들어가서 더 찾기 힘들고 치료하기 어려워질 수도 있다. 가상화가 점점 실용적으로 이용될수록 우리가 이제까지 경험하지 못한 새로운 악성코드의 패턴이 등장할 것이라 예상할 수 있다.


그렇다면 사이버 세상의 미래는 헐리우드식 영화들이 보여주는 것처럼 암울하고 비관적이기만 한 것일까? 아니면 아시아권의 영화들이 보여주는 것처럼 인간적이고 자연적인 모습을 기대할 수 있는 것일까?


이에 대한 한 가지 답으로 안티바이러스 및 통합보안 제품의 가상화 기술을 제시할 수 있다. 가상화는 이미 1960년대에 시작된, 생각보다 오래 묵은 기술이다. 오래된 만큼 기술적으로 성숙되어 있고 가상화 개념이 적용된 분야 또한 광범위하다. 보안 업계에서도 이미 오래 전부터 화두였다. 가상화 기술을 도입한 서버, 네트워크 등 여러 가지 솔루션의 등장으로 그 취약점 또한 점점 늘고 있다. 가상화 기술을 확보하지 않고서는 이를 위한 보안 제품도 만들 수 없으며 악성코드는 이 점을 노릴 것이다. 이에 대비하기 위해 안철수연구소를 비롯한 보안 업체는 어느 때보다 기술 확보에 노력하고 있다.


안티바이러스 분야에서 현재 가장 많이 적용된 가상화 기술은 에뮬레이티드 머신(Emulated Machine) 또는 샌드박스 머신(Sandbox Machine)을 이용한 악성코드 분석 기법이다. 이것들은 각각 나름의 가상화 방법을 가지고 구현되어 있다. 또한 이를 통한 자동 분석 시스템 또한 각광을 받고 있다. 엄청나게 폭주하고 있는 악성코드 샘플을 효과적으로 처리하고 늘어만 가는 악성코드를 효과적으로 처리하기 위해 가상화 기술에서 방법을 찾고 있다.


현재 안철수연구소는 악성코드 샘플 처리 자동화 시스템에 Light-weight Virtualized Environment 기술을 적용하고 있다. 이 기술은 엔진의 진단율을 높이는 데도 적용하고 있다. 또한 제너릭 디텍션(Generic Detection), 휴리스틱 디텍션(Heuristic Detection), 프로액티브 프리벤션(Proactive Prevention) 등의 기법을 테스트하고 있다. 이런 기술로 악성코드에 더 효과적으로 대응할 수 있으며 더 많은 악성코드를 차단할 수 있다.

 

통합보안 제품, 더 가볍고 더 빨라지다

한편, 백신 및 통합보안 제품의 변화 추세를 보자면 급변하는 인터넷 환경과 고객의 요구에 대응하며 포인트 솔루션에서 토털 솔루션으로, 다시 웹 2.0 기술을 접목한 서비스 형태로 지속적인 진화를 하고 있다. 단순 안티바이러스 툴을 넘어 사용자의 PC 사용을 더욱 안전하고 편하게 하는 방향으로 변화를 거듭하고 있는 것이다. 특히 최근 통합보안 제품의 변화를 주도하는 방향은 크게 ‘경량화와 가속화’, ‘케어 영역의 확대’로 나누어볼 수 있다.


인터넷의 급속한 성장과, PC와 PC가 네트워킹된 상황에서 악성코드의 유포 채널이 미디어를 통한 수동적인 방법에서 사이트를 통한 능동적인 방향으로 바뀌어 가고 있다. 그에 따라 악성코드가 기하급수적으로 늘어나고 있다. 이에 대한 대응으로 통합보안 제품이 진단하는 악성코드 DB도 1년에 2배 정도씩 늘어나고 있다. 


최근 PC를 사용하는 주된 목적은 인터넷 쇼핑이나 뱅킹, 동영상, 게임 등 금융과 엔터테인먼트로 집중되고 있다. 이에 따라 운영체제나 타 프로그램 때문에 PC 작동이 끊기거나 지연되는 일이 없기를 바라는 요구가 증가하고 있다.
 

이와 같이 PC 사용의 목적 및 패턴이 변화함에 따라 통합보안 제품에 대한 요구가 기능 중심에서 PC 사용에 미치는 영향을 최소화하는 경량화로 이동하고 있다. 악성코드가 증가함에 따라 통합보안 제품 엔진의 크기가 커지므로 경량화에 대한 요구가 지속적으로 확대될 것으로 보인다. 보안 업체는 엔진 파일 크기의 증가를 최소화하고 행위 기반, 가상화 등의 기술을 접목하는 한편, 파일/프로세스 검사 시 파일 I/O(Input/Output), CPU 사용량을 최소화하기 위한 다양한 방법을 찾고 있다.


지난해 안철수연구소가 출시한 ‘V3 365 클리닉 2.0’의 경우가 최근 통합보안 제품 업계의 경량화 트렌드를 가장 먼저 반영, 시장에 선보인 예로 들 수 있다. 공통 요소의 모듈화, 최적화를 통해 CPU, 메모리 등 주요 리소스의 사용을 최소화했다. 이로써 용량은 1/10로 줄어들고, 실행과 검사 속도가 이전 버전과 비교해 2-3배 빨라졌다. 특히 메모리 점유율을 개선하여 실시간 감시 중에도 속도 저하를 전혀 느낄 수 없는 수준으로 개선하였다.


시만텍의 노턴 2009의 경우도 시스템 리소스에 대한 부하를 줄이는 데 초점을 맞춰 통합보안 제품 가동에 따른 PC 속도 저하 문제를 줄이는 데 중점을 두었다고 강조하고 있다. 실질적으로 300MB가 넘는 용량이 100MB로 크게 줄어들었으며 검사 속도 또한 확연히 줄어들었다고 시만텍 측은 설명하고 있다.


이러한 통합보안 제품의 ‘Lighter and Faster’의 추구는 실시간 감시만 켜두면 버벅거리는 PC 때문에, 그리고 두세 시간의 시스템 검사 시간 때문에 답답해하던 사용자들에게 ‘보안이냐 편리함이냐’란 딜레마를 훌훌 털어버리게 할 수 있는 반가운 성과라고 할 수 있다.

 

단순 백신을 넘어 토털 PC 케어로

사람들은 컴퓨터를 사용하면서 늘 궁금하고 답답하다. ‘늘 내 PC는 느린 것 같아’, ‘왜 나만 하면 인터넷이 이렇게 느려지지?’ PC에서 발생하는 문제의 원인은 매우 다양하다. 그 해결 방법 또한 원인만큼 복잡하고 다양하다. 하지만 그 원인을 알고 해결할 수 있는 파워유저보다 일반 초보 유저가 절대적으로 많아지고 있다. 단순히 백신 고유의 기능인 악성코드 치료만으로는 ‘편리하고 안전한 PC의 사용’에 어려움을 겪는 사용자가 대부분이라는 것이다.


이에 보안 업체의 고민이 있고 여기서 통합보안, 토털 케어로의 미래를 엿볼 수 있다. 물론 현재도 레지스트리, 디스크 등 리소스에 대한 최적화, 드라이버 업데이트 등으로 기능 확장을 해 나가고 있으나 아직은 운영체제에서 제공해 주는 기능의 확장에 머물러 있다.


향후 보안 업계는 이와 같은 기능 확장과 웹 보안과의 결합이 지속적으로 이루어질 것으로 보인다. 백신이 초기 의료 체계를 모델링해서 나왔듯이 지속적인 모니터링과 관리를 받을 수 있는 서비스 형태로 진화할 것으로 전망된다. 또한 PC에 문제가 있을 때 사용자가 조치하는 수동적인 방법에서 자체적으로 판단하고 능동적으로 대응하는 형태의 ‘능동형 서비스’로 발전해 나갈 것으로 보인다.

 

도전과 응전은 계속된다

자동차를 타는 사람들이 처음에는 사고에 대응하지 못했지만 점차 안전벨트를 메고, 에어백을 달고, 후진 센서를 달고 하는 식으로 안전에 대한 노력을 해 온 것처럼, 우리가 생각할 수 있는 미래는 지금보다 더 편리한 환경을 제공할 것이다.


마찬가지로 악성코드가 사라지지 않을 것이 자명하지만, 또 분명한 것은 악성코드들을 막기 위한 인간의 노력은 더 많은 발전을 이룰 것이고, 보안을 전문적으로 연구하는 좋은 기업들의 노력이 빛을 발할 것이라는 점이다.


악성코드가 들어오는 방법, 악성코드가 숨어 있는 것을 찾는 방법, 악성코드가 최종적으로 노리는 목표를 찾아내고 위험을 제거하기 위한 기술 등 실질적인 방어를 위한 연구를 쉬지 않고 고민하고 찾아내고 있는 전문가들이 있기 때문이다. 그리고 인류의 역사는 끊임없는 공격과 방어에 대한 연구에서 발전하여 왔고 그러한 노력을 통하여 더 살기 좋은 세상을 만들어 왔기 때문이다.