본문 바로가기

개발 이야기

안철수연구소 권진욱 님이 말하는 '악성코드 대응 기술의 새로운 패러다임'

마이크로소프트웨어 7월호에 재미있는 글이 있어 옮깁니다.
아이마소 홈페이지에 접속하시면 더 다양한 개발 및 보안 관련 정보들을 얻을 수 있습니다.
감사합니다.


최근 선보여지고 있는 다양한 악성코드들은 2003년 이후 악성코드의 제작 동기가 호기심 또는 자기과시에서 금전적인 목적으로 변하면서 새로운 전환점을 맞이하게 되었다 해도 과언이 아니다. 기존 불특정 다수에게 배포하던 악성코드가 점차 특정 대상을 노리는 타깃 공격으로 변화하게 되면서 제작 동기가 협박이나 인터넷 뱅킹처럼 직접적으로 돈과 연결되거나, 내부 정보를 유출하여 2차적인 위협을 하기 위한 도구로 변형되고 있는 추세다. 이번 컬럼에서는 악성코드의 최신 동향들을 알아보고 이에 대응하기 위한 새로운 기술들에 대해 알아보자.

권진욱 jukwon@ahnlab.com|물리적 보안 분야와 정보 보안 분야를 모두 경험하는 등 보안 업계에서만 10년 이상의 경력을 가지고 있다. 프로젝트 매니저, 마케터, 제품기획자 등 다양한 경력을 소유하고 있으며, 현재는 안철수연구소에서 신규 제품 기획 업무를 담당하고 있다.


사이버 블랙마켓의 활성화

개인정보를 사고 파는 지하경제 시장의 활성화에 따라, 금전적 이익을 목적으로 한 악성코드 배포 및 해킹 범죄가 증가하고 있다. 특히 이러한 악성코드 배포 방법은 범죄조직의 입장에서는 비용이 적게 드는 반면에, 즉각적인 효과를 볼 수 있다는 점에서 비용 대비 효과가 큰 방법으로 인식된다.

예를 들어 주민등록번호, 은행계좌 번호, 신용카드 정보 등 개인정보는 사이버 블랙마켓에서 팔면 바로 돈이 되기 때문에 개인 정보를 빼내가기 위한 악성코드의 배포가 급증하고 있는 것이다. 실제로 지난해 미국 경찰은 40만대의 컴퓨터를 감염시킨 소베라는 별명을 사용하는 청년을 검거했다. 그는 감염된 컴퓨터를 조종하는 봇넷(BotNet) 기술을 이용해 연 58만 달러를 벌어들인 것으로 알려졌다.

또 하나 주목해야 할 것은 컴퓨터 전문가가 아니더라도 사이버 블랙마켓을 통해 쉽게 해킹 툴이나 악성코드 제작 툴 등을 저렴한 가격에 구매하여 개인정보를 탈취해가기 위한 해킹을 할 수 있게 되었다는 것이다. 이에 따라 신종 악성코드 개수 및 해킹 시도가 폭발적으로 증가하고 있다.

한 예로 최근 중국의 해킹 사이트에서는 단돈 10달러에 피싱 사이트를 구축할 수 있었고, 이를 통해 해킹 툴도 5만4천원에서 25만2천원 사이에 쉽게 구매할 수 있다고 광고했다. 이러한 사이트는 일반인들도 손쉽게 접근할 수 있으며, 해킹 툴을 판매하는 사이버 블랙마켓이 광범위하게 활성화하고 있다.

이러한 사이버 블랙마켓 활성화는 세계적인 경기 불황및 인터넷의 보급률 증가와 맞물려 앞으로도 심각한 위협으로 작용할 것으로 보인다.

Trojan, Spyware, Dropper의 증가
이러한 경향에 따라 기존에 악성코드의 대부분을 차지하던 바이러스의 비율이 줄어들고, 내부정보 유출에 악용되는 트로이목마, 스파이웨어, 드롭퍼 등의 악성코드가 급증하고 있다. 특히 과거에는 악성코드 제작 목적이 자기 과시형이라 악성코드에 감염되면 바로 확인할 수 있었다. 하지만 최근의 악성코드 제작은 돈이 목적이기 때문에 악성코드도 복잡해지고 은폐기능이 고도화되어 전문가조차도 시스템의 감염상태를 파악하기 어렵다. 뿐만 아니라 그 배포방법 또한 메일, 인터넷, 취약점 공격, USB등으로 다양해 어떻게 시스템에 감염되었는지 조차 확인할 수 없을 정도로 고도화되고 있다.

악성코드의 폭증
이와 같이 특정 타깃을 대상으로 악성코드 공격이 이뤄지다 보니 지속적으로 동일한 악성코드로 공격할 경우, 안티바이러스 솔루션에서 차단될 확률이 높기 때문에 변종을 만들어 공격할 필요성이 생겨났다. 이로인해 악성코드를 대량생산하고 자동적으로 변종을 만들 수 있는 툴들이 악성코드 제작자들 사이에 만들어지고, 또한 거래되고 있다. 이로 인해 악성코드의 숫자가 이전에는 상상할 수 없었을 정도로 폭발적으로 증가하는 현재의 상황에 이르게 되었다.

안티바이러스 제품을 테스트하는 Av-test.org에 따르면 신종 악성코드의 수는 2005년 33만3,000개, 2006년 97만2,000개, 2007년 5,490만개로 증가한 것으로 조사되었다. 또한 안철수연구소 ASEC(AhnLab Security Emergency response Center)의 2008 Annual Report에 의하면 2008년에도 한해동안 전세계적으로 800만개 이상의 악성코드가 만들어진 것으로 조사된 바 있다. 이러한 전문기관의 분석 자료를 통해 알 수 있듯이 악성코드의 숫자는 이전에는 상상할 수 없는 수준으로 매년 기하급수적으로 증가하는 추세다.
 
안티바이러스 업체의 대응 방법 및 한계점
악성코드의 폭발적 증가는 모든 안티바이러스 솔루션 개발 업체에 기존에 경험해 보지 못한 새로운 이슈로 다가왔다. 악성코드의 숫자가 이전에는 상상할 수 없이 많아짐에 따라 결과적으로 기존에 크게 이슈가 되지 않았던 안티바이러스 소프트웨어의 두 가지 문제점이 부각되고 있다.

진단율 이슈
매시간 수백에서 수천 개의 신종 악성코드를 처리함에도 불구하고, 점점 더 많은 변종 악성코드가 만들어짐에 따라 기존에 악성코드를 수집하고, 분석하고, 엔진에 포함시키는 일련의 작업들만으로는 모든 악성코드를 처리할 수 없게 되었다.

Av-test.org에 따르면 45개의 안티바이러스 제품을 분석해본 결과 신종 악성코드의 수는 2005년 33만3,000개, 2006년 97만2,000개, 2007년 549만개로 기하급수적으로 증가하였다. 이에 비해 안티바이러스 제품의 시그니처 수 증가는 2005년 11만1,566개, 2006년 13만4,484개, 2007년 148,869개로 신종 악성코드 수에 턱없이 못 미친다.

많은 안티바이러스 솔루션 개발사들이 이러한 악성코드에 대항해 진단율을 높이기 위해 시그니처 기반의 블랙리스트(Blacklist) 방식 외에도 Heuristic Detection, Proactive Prevention, Sandbox 등의 다양한 기법을 사용한다. 이러한 방식은 안티바이러스 솔루션이 설치되는 PC 환경의 다양성, PC 사양의 제한, 업데이트 관리, 그리고 오진 등의 이슈로 인해 범용적으로 사용하기에는 한계가 있다.

또한 진단 개수가 증가하면 엔진 사이즈가 커지고 메모리 점유율이 증가해 검사 속도가 느려진다. 아울러 오진의 가능성도 높아진다.

업데이트 속도 이슈
악성코드의 숫자가 많아질수록 빠른 업데이트가 상당히 중요해진다. 백신 업데이트는 과거와 달리 이제는 단 한 시간 업데이트가 지연되어도 수 천 개 이상의 신종 악성코드에 감염될 위험에 노출된다. 이에 따라 악성코드의 숫자의 폭발적 증가에 대응하기 위해 안티바이러스 솔루션 개발 업체의 경우 업데이트 주기를 단축하는 방법을 우선적으로 사용한다. 현재 대부분의 업체에서 이전에 일주엔 한번 업데이트를 제공하던 방식에서 하루에 한번 이상의 시그니처 업데이트를 제공한다. 그러나 이러한 업데이트 주기 변경만으로는 현재의 이슈를 해결하기 어렵다.

현재 악성코드 대응 방식은 다음과 같은 문제점이 있다. 첫째, 사용자가 자동 업데이트를 설정해 놓지 않아 최신 업데이트를 적용하지 않았다면 위험에 그대로 노출된다. 둘째, 악성코드 악성코드 출현 시 샘플 수집에서 엔진 제작까지 여러 단계를 거쳐야 하므로 이 시간 동안 위협에 무방비로 노출된다. 셋째, 엔진 업데이트 주기를 단축하는 방법을 사용하나 업데이트 시간차에 따른 위험은 여전히 존재한다.

<그림 4>와 같이 새로운 위협에 대한 실시간 대응이 피해 최소화에 가장 중요한 역할을 하게 되는 현시점에서는 기존의 안티바이러스 엔진 업데이트 방식은 개선되어야 할 과제로 인식되고 있다.

이 밖에도 대응 시그니처 수의 증가는 엔진 사이즈의 증가를 동반한다. 과거 18개월 간 대부분의 안티바이러스 솔루션들의 엔진 사이즈가 두 배로 증가했으며, 심한 경우 3배까지도 증가했다. 또한 엔진 사이즈가 커지고, 업데이트 빈도가 늘어남에 따라 업데이트 사이즈도 기하급수적으로 증가하고 있다.

클라우드 컴퓨팅 개념의 새로운 접근 방법 

앞서 본 컬럼에서 언급한바와 같이 이제는 기존 방식만으로는 악성코드의 위협에 100% 안전을 보장하기 어렵다. 이에 대응하고자 많은 보안 업체들은 새로운 개념의 악성코드 대응 기술을 발표해 왔는데, 그 중 안철수연구소는 AhnLab Smart Defense 라는 새로운 개념의 악성코드 대응 기술을 개발했다.

AhnLab Smart Defense 는 기존에 악성코드에 대한 모든 데이터를 PC로 다운로드한 후 PC에서 처리하던 방식과 달리 클라우드컴퓨팅(Cloud Computing) 개념을 이용한 새로운 기술이다. 즉, 대규모 파일 DB를 중앙서버에서 관리하며, PC에 설치되어 있는 AhnLab Smart Defense 엔진에서 파일의 악성여부에 대해 문의하면 이에 대해 응답을 해주는 방식이다. AhnLab Smart Defense의 작동 방법은 <그림 5>와 같다.

- PC에 설치된 AhnLab Smart Defense 엔진을 통해 생성된 DB에서 기존에 검사한 파일인지 확인한다.
- 새로운 파일로 확인되면, AhnLab Smart Defense Center로 파일 DNA를 전송한다.
- AhnLab Smart Defense Center는 전송된 파일 DNA 정보를 대용량 DNA DB에서 해당 DNA의 유형이 있는지 확인하고, 같은 유형의 DNA가 존재하면 기 분석된 DNA정보, 즉 악성코드인지 정상 파일인지 확인한 후 알려준다. 만약 전송 받은 파일 DNA가 DB에서 확인되지 않으면, 새로운 유형으로 간주해 분석에 필요한 파일의 특정 부분을 전송받는다. 전송받은 파일은 즉시 자동 분석 시스템으로 보내져 새로운 DNA의 악성 여부를 분석하게 된다.

<그림 6>에서 보이듯이 AhnLab Smart Defense Center에서는 파일의 기본 정보, 프로그램 디지털 서명 정보 분석, 평판 시스템을 통한 분석, 파일에 대한 Activity 동향 분석, 행위 기반 Activity 분석, 파일간 Relation 분석 등 다양한 기술을 이용해 파일의 정상 또는 악성 여부를 판단하고, 이를 AhnLab Smart Defense 엔진에 알려준다. 이와동시에 파일 DNA DB를 업데이트하여 다른 AhnLab Smart Defense 엔진에서 활용할 수 있도록 한다. AhnLab Smart Defense는 앞서 지적한 문제를 해결할 수 있다.

진단율 이슈 해결
최근에는 단순히 블랙리스트의 시그니처 방식만으로는 쏟아져 나오는 악성코드에 대한 대응이 모두 이뤄지기란 불가능하다. 따라서 시그니처 방식을 보완하는 다양한 방법을 사용해야 하나, 기존의 PC에 모든 엔진과 기능을 내리고 실행하는 것은 PC환경의 다양성, PC의 사양, 오진 등 또 다른 문제를 야기시킨다. 따라서 안티바이러스 개발 업체에서 모든 보유 기술을 적용하기에는 제약이 있었던 것이 사실이다.

예전의 악성코드 대응 프로그램은 악성코드에 대한 모든 데이터를 PC로 다운로드하여 감염 여부를 확인한다. 반면 AhnLab Smart Defense는 수천만 건 이상의 유형별 파일 DNA 데이터베이스를 중앙 서버에서 관리하며, 사용자가 파일의 악성여부에 대해 문의하면 AhnLab Smart Defense Center에서 실시간으로 확인할 수 있다.

아울러 해당 데이터베이스에 없던 파일이라도 파일의 DNA를 실시간으로 수집하고, 많은 리소스를 필요로 하는 분석 작업을 서버에서 수행함으로써 기존에 제품에 적용하지 못했던 수많은 Technology를 적용하여 파일의 정상 또는 악성 여부를 실시간으로 판단해 줄 수 있으며, 이에 따라 월등히 향상된 진단율을 제공할 수 있다. 실제로 안철수연구소의 테스트 결과 단순히 Black list 기반의 제품만 사용했을 때보다 AhnLab Smart Defense를 같이 사용했을 경우 20% 정도의 진단율 향상 효과를 볼 수 있다.

PC 리소스 점유율 감소 및 검사속도 향상
지금까지의 안티바이러스 제품은 엔진을 PC에 다운로드해 검사하는 방식을 취한다. 따라서 수백만 개 이상의 악성코드 정보를 엔진에 포함해야 하므로 진단율이 높아질수록 엔진 사이즈가 커질 수 밖에 없다. 엔진 사이즈가 커지게 되면 메모리 등 리소스 점유율, 업데이트 사이즈 증가로 인해 PC가 느려지는 사용상의 불편을 겪게 된다. 또한 파일 하나하나마다 매번 수백만 개의 정보를 비교해봐야 하므로 진단율이 높아질수록 악성코드 검사속도가 느려질 수밖에 없다.

반면 AhnLab Smart Defense는 모든 정보를 AhnLab Smart Defense Center에서 관리하고, PC에는 실제 설치되어 있는 파일에 대한 정보만 관리하면 된다. 즉, PC는 저 용량의 데이터만으로도 악성코드에 대응 할 수 있게 되는 것이다. 또한 새로운 파일이 생성되어도 AhnLab Smart Defense Center에 실시간으로 확인 후 해당 파일에 대한 파일 DNA만 관리하면 되므로 새로이 유입될 가능성이 있는 악성코드 대응을 위한 별도의 데이터 관리가 필요 없게 된다. AhnLab Smart Defense는 이러한 기술 구현을 통해 좀 더 높은 진단율을 제공하면서도 메모리나 CPU 사용량을 극적으로 높일 수 있다.

업데이트 관리 이슈 해결
기존 안티바이러스 솔루션은 악성코드의 발견에서 처리까지 신종 파일 수집 → 파일 분석 → 증상 분석 → 정보 분석→ 코드 분석 → 엔진 제작 → 배포로 이어지는 복잡한 단계를 거쳐야 한다. 따라서 구조적으로 신종 파일 수집에서 배포까지 어느 정도의 시간이 소요될 수밖에 없다. 즉, 일반적으로 아무리 신속히 처리하더라도 신종 파일 수집 후 사용자 PC에 실제 업데이트되기까지는 약 4~5시간이 소요된다. 그러나 과거와 달리 4~5시간은 수백 ~ 수 천 개 이상의 신종 악성코드에 감염될 위험에 노출될 가능성이 있다. 따라서 좀더 신속한 업데이트가 필요하다.

또한 관리 툴 등을 사용하여 모든 PC의 엔진을 최신 엔진으로 관리한다고 하더라도 구 버전의 엔진을 사용하는 PC는 존재하기 때문에 안티바이러스 솔루션을 사용하더라도 구 버전의 엔진에서 처리하지 못하는 수천, 수만 개의 신종 악성코드에는 무방비 상태로 노출되게 된다.

AhnLab Smart Defense는 PC에서 파일의 생성 또는 액세스가 있을 경우 서버에 악성코드 여부를 문의하는 시스템으로 서버에 새로운 정보가 업데이트되면 실시간으로 PC에 그 정보를 전달할 수 있다. 따라서 신종 악성코드 분석 후 수분 이내에 분석 결과를 모든 PC가 활용할 수 있게 됨으로써 기존 업데이트 주기에 의한 위험을 효과적으로 줄일 수 있다.

새로운 개념인 AhnLab Smart Defense 가 기존 시그니처 방식과 결합돼 시너지 효과를 냄으로써 좀더 안전한 컴퓨팅 환경을 만들어줄 것이다.