최근 불고 있는 개인용 보안 솔루션 무료화 열풍의 중심에 서서 이를 주도하는 기업 중 하나가 바로 코모도입니다.
코모도사의 주요 사업은 SSL 웹 보안으로, 기업이 주요 고객이지만, 다양한 시스템과 환경에서의 멀웨어 사례를 수집하기 위해서 무료로 백신과 방화벽 등을 제공하고 있습니다.
즉, 전 세계 모든 개인/기업에게 자사의 방화벽, 안티 바이러스 등을 무료로 제공해 주고 이들이 사용하면서 보내오는 감염사례와 샘플을 수집하여 궁극적으로는 주력 사업인 웹 보안 분야의 강력한 솔루션을 구축하고 있습니다.
하지만 코모도사가 배포하는 프리웨어들은 결코 자사의 목적을 위한 구색 맞추기 수준에 그치지 않습니다. 일부 유료 방화벽, 백신을
능가할 만큼 강력한 것은 물론이고, 최근에 주목 받기 시작하는 신기술을 탑재하고 있습니다. 게다가 각종 보안 테스트에서도 최고
등급을 부여 받을 만큼 성능도 우수합니다.
이미 코모도의 방화벽에 대한 리뷰는 이 블로그에서 수 차례 해 왔으며, 오늘은 코모도가 만든 다소 색다른 안티 바이러스(백신) Comodo BOClean Anti-Malware에 대해 소개해 볼까 합니다.
BOClean이 무엇인가?
BOClean
을 설치하면 트레이에 아이콘만이 덩그러니 나타납니다. 이것을 더블클릭 해 보면 조그만 창이 하나 뜰뿐, 기존의 소프트웨어, 또는
백신에서 접할 수 있는 독립된 화면이나 인터페이스 등의 소프트웨어적인 구색을 찾아보기 힘듭니다. 처음 사용하는 유저라면 도대체
이 녀석의 정체가 무엇인지 의아해지기 쉽습니다. 따라서, BOClean에 대한 본격적인 리뷰에 앞서 이 프로그램에 대해 소개해
보는 것이 필요할 것 같습니다.
코모도 안티 멀웨어(Comodo Anti-Malware)라고도 불리고 있는
BOClean은 Zero-day 공격에 대비하기 위하여 만들어진 일종의 안티 바이러스(백신) 보조 프로그램입니다. 따라서
사용자는 기존에 설치해 둔 각종 백신을 그대로 이용하면서 BOClean을 동시에 구동시킬 수 있습니다.
Zero-day 공격?
여러분은 배구를 좋아하나요? 필자는 개인적으로 농구보다 배구를 더 좋아합니다. 배구의 꽃은 강력한 스파이크와 백어택에 있지만,
간혹 보이는 시간차 공격의 묘미 또한 관전하는 주요 포인트입니다. 블로킹 방어를 무색하게 하는 시간차 공격은 힘 들이지 않고도
상대를 무력화시킬 수 있습니다. 제로데이 공격은 바로 이 시간차 공격에 비유할 수 있습니다.
소프트웨어에 보안상의 문제가 보고되면 개발자 또는 벤더는 그에 대한 대책(패치, 업데이트)를 제공합니다. 하지만, 이 경우 필연적으로 시간차가 존재하게 됩니다. 패치나 업데이트를 제작할 경우 데이터를 수집하고 프로그램을 짜는 작업은, 아무리 빨리 한다고 해도 몇 시간은 기본으로 소요되기 때문입니다. 문제는, 최근 악의적인 해커나 크래커들이 늘어나면서 이제는 자신들끼리 이러한 정보를 공유하는 지경에까지 이르렀다는 데에 있습니다. 그들간의 방대한 네트워크와 정보공유를 통하여, 패치나 업데이트가 제공되기까지의 그 짧은 시간 안에 멀웨어를 만들고 배포하여, 마침내는 많은 사용자들의 시스템에 침투하거나 무력화 시킵니다.
각종 백신 제작사 및 보안 벤더들은 이러한 제로데이 공격을 예방하기 위하여 많은 연구를 하고 있습니다. 그 결실 중 대표적인 것이 휴리스틱, HIPS와 같은 사전방역 알고리즘입니다.
눈치가 빠른 독자라면 이쯤에서 BOClean의 역할과 그 사용 가치에 대해 감을 잡았을 것입니다. 그렇습니다. BOClean은
제로데이 방어, 즉 사전방역 전문 프로그램입니다. 자, 코모도와 사전방역 이 두 단어가 등장했습니다. 열혈 코모도 유저라면
당연히 HIPS가 연상될 것입니다. 전 세계 어떤 방화벽, 백신보다 강력한 HIPS 기술을 보유한 코모도에서 사전방역 툴을
제작했다면 당연히 HIPS와 유사한 알고리즘을 채택했다고 쉽게 예측할 수 있습니다. 맞습니다. 사전방역 전문 툴인
BOClean은 행동기반 방식을 사용합니다. 코모도측에서는 다음과 같이 BOClean을 비유하고 있는데, 이 구문 하나로
BOClean에 대한 모든 개념이 정리됩니다.
Think of your antivirus as a burglar alarm. BOClean is a motion detector = 안티 바이러스가 "도둑"을 탐지해 준다면, BOClean은 "도둑질"을 탐지해 준다. (안티 바이러스는 단순히 도둑이 들었다는 것만 알려주지만, BOClean은 그 도둑이 저지르는 행동을 알려준다는 의미)
BOClean을 사용함으로써 이득이 되는 것은?
일반적인 안티 바이러스(백신)의 작동 원리는 다음과 같습니다.
수집된 멀웨어를 분석한 후, 일정한 패턴에 대해 분석/규정/정형화 하고 그것을 정의파일에 포함시켜서 사용자의 시스템으로 전송한다.
코모도에서는 이를 두고 Port-scanning and traffic analysis software 라 지칭하고 있습니다. (안티 바이러스 벤더에서) 이미 스캔과 분석을 거친 후 사용자에게 적용되는 소프트웨어라는 의미에 초점을 둔 표현입니다. 따라서 그 누구에게도 아직 스캔과 분석이 이뤄지지 않는 멀웨어에 대해서는 거의 무방비 상태에 놓이게 됩니다. 다시 말하면, HIPS, Heuristic 등의 사전방역 기능이 배제된 안티 바이러스일수록 제로데이 공격에 대해 취약할 수밖에 없습니다. 하지만, 아직까지도 많은 안티 바이러스는 사전방역 기술이 없거나, 채택하고 있다고 해도 극히 초보적인 수준에 그칠 뿐입니다. 이러한 제품을 사용하고 있는 유저일수록 BOClean을 사용해 보는 것도 나쁘지 않습니다.
아래는 주요 백신과 BOClean의 조합에 대해 필자가 개인적으로 제시하는 가이드입니다. 절대적인 것은 아니므로 간단하게 참고하기 바랍니다.
사전방역 제공 여부와 사전방역 방식
(서명기반/행동기반에 대한 분류는 절대적인 것이 아니라 상대적으로 더 치중하고 있는 부분을 의미)
BOClean(행동기반 사전방역)과의 궁합 및 종합적인 사전방역 수준
NOD32
휴리스틱(서명기반)
서명기반 방역 + 행동기반 방역에 의한 시너지 효과 기대 & NOD32의 독보적인 휴리스틱 기능
AntiVir
서명기반 방역 + 행동기반 방역에 의한 시너지 효과 기대
Avast
Norton
McAfee
PC Cillin
AVG
서명기반 방역 + 행동기반 방역 (단, AVG의 사전방역 기술은 상대적으로 미미함)
Kaspersky
HIPS(행동기반)
행동기반 방식 중복
BitDefender
Comodo Firewall
참고 : 각 안티 바이러스의 사전방역 수준은 2007년 AV-Comperatives 테스트를 기초로 하였음
아래의 표는 BOClean이 제공하고 있는 주요 기능으로, 제작사인 코모도 사이트의 내용을 그대로 번역 또는 의역한 것입니다.
감염된 멀웨어(악성코드, 바이러스, 웜, 트로이 등)와 오염된 레지스트리 제거
재부팅 없이 모든 멀웨어 흔적 삭제
사용자의 작업을 방해하지 않고 멀웨어 차단
보고서 및 안전한 상태를 입증하는 사본 제작
백그라운드로 숨어서 탐지하고 삭제 (멀웨어가 BOClean의 설치/작동 여부를 모름)
스텔스 모드 지원(멀웨어가 BOClean의 작동 여부를 모름)
네트워크 파일 공유를 통한 자동 업데이트
멀웨어에 의한 간섭이나 종료 예방을 통한 자체 보호
하루 단위의 무료 업데이트
업데이트 파일 공유 및 푸쉬 업데이트 지원
이전 버전으로 복귀를 위한 업데이트 롤백 가능
광범위한 멀웨어 차단 및 시스템 보호
설치
인스톨 이후 사용법은 어렵지 않지만, BOClean의 설치 과정은 다소 복잡합니다. 각각의 단계에 대해 알아보겠습니다. 설치
파일을 클릭하면 아래와 같은 메시지를 가장 먼저 접할 수 있습니다. 이전에 BOClean을 사용한 적이 있는가, 처음 사용인가를
묻는 것입니다. 처음 사용하는 경우 "예"를 눌러서 설치 화면으로 이동합니다.
▲ BOClean 처음 설치 확인
설치 경로와 정의파일 업데이트를 묻는 장면입니다. 설치 경로는 기본값 그대로 하는 것이 좋으며, 가급적이면 "예"를 눌러서 업데이트합니다.
▲ 설치 경로와 정의파일 업데이트
이메일을 기입하여 코모도 제품에 대한 정보를 구독할지 여부를 정합니다. 만사가 귀찮으면 그냥 아무 것도 기입하거나 체크하지 않아도 됩니다.
▲ 코모도 제품에 대한 정보를 구독할지 여부 결정
업데이트할 정의 파일이 있다는 메시지입니다. 반드시 "예"를 눌러서 최신 버전을 유지시키는 것이 좋습니다. 이후의 과정은 큰 어려움이 없으므로 생략하겠습니다.
▲ 정의 파일 업데이트
프로그램 구성 = 메뉴 화면
인스톨이 끝나면 트레이에 위치한 BOClean 아이콘을 접할 수 있습니다. 이것을 클릭하면 아래와 같은 조그만 메뉴 창을 볼 수 있습니다. 서두에 언급한 바대로 여타 프로그램에 볼 수 있는 거창한 메인 화면은 없습니다.
Shut down BOClean
BOClean을 완전히 종료시킵니다.
Configure BOClean
BOClean 옵션을 설정합니다.
Check for update
업데이트 여부를 체크합니다.
Reload/test update
업데이트한 정의파일을 테스트하거나 다시 불러옵니다.
Covered Malware
BOClean가 탐지할 수 있는 멀웨어의 목록을 열람합니다.
Example report
보고서를 작성합니다.
Program Excluder
BOClean와 충돌을 일으키는 프로그램을 따로 관리합니다.
Close this menu
현재 메뉴 창을 닫습니다. (프로그램은 종료되지 않음)
옵션 설정
BOClean을 사용하기 위한 별도의 가이드나 사용법은 없습니다. 이미 언급한 바대로, 백그라운드에 숨어서 작동하기 때문에 멀웨어가 BOClean의 존재 여부를 알아채기 힘들고, 사용자 역시 그 존재감을 느낄 필요도 없습니다.
오로지 옵션 부분만 만져주면 유저가 할 모든 일은 끝납니다.
메뉴 창에서 "Configure BOClean"을 클릭하면 상대적으로 커다란 옵션 설정 화면이 나타나는데, Autoupdate
options(자동 업데이트 옵션) 부분과 Configuration options(환경 설정) 두 부분으로 구분되어 있습니다.
순서대로 살펴보겠습니다.
Autoupdate options (자동 업데이트 옵션)
Automatically start BOClean at bootup
부팅과 동시에 BOClean이 자동으로 실행되게 합니다. BOClean 자체가 사전방역과 실시간 감시에 초점이 맞춰진 프로그램이므로 이것을 끄면 사용할 의의는 없습니다.
Do NOT show automatic update screen
자동 업데이트 창을 나타나지 않게 합니다. 사용자는 BOClean의 존재 여부를 느낄 필요 없이 컴퓨팅을 할 수 있습니다.
Check for update every [24] hours, beginning [4] minutes after bootup
업데이트 주기를 정하고[24시간], 부팅이 끝난 몇 분 후[4분]에 업데이트 여부를 체크할 것인가를 정합니다.
이는 앞서 설명한, 백신을 보조하는 도구로서의 BOClean의 특성을 감안한 것입니다. 백신과 동시에 자동 실행될 경우 부팅 트래픽이 증가할 경우가 있는데, 이 때 시간을 정하여 우선 순위를 미뤄두면 좀 더 쾌적하게 부팅이 가능합니다.
Roll back
정의 파일을 롤백하여 이전 버전으로 되돌립니다. 업데이트 후 문제가 발생할 경우 사용합니다.
Location of BOClean database file
BOClean의 DB 파일 위치를 정합니다. 기본값 그대로 사용하면 됩니다.
Configuration options (환경 설정)
Monitor system continuously
지속적으로 시스템을 모니터링 할 지 여부를 정합니다. 만약 이 구문에 체크하지 않으면 BOClean의 실시간 감시기를 수동으로 켜야 합니다.
Do NOT shut down File Shares
IBM에서 개발하여 윈도우 9x, NT까지 주로 이용되었던 파일 공유 프로토콜 NETBEUI는 TCP/IP보다 상대적으로 보안상 취약하다고 알려져 있습니다. 따라서 BOClean은 NETBEUI 프로토콜을 이용한 파일 공유 시도 시 차단합니다. 그러나 이 구문 앞에 체크하면 차단 기능이 꺼집니다. 최근에는 TCP/IP를 이용하는 것이 일반적이므로 굳이 체크를 해 가며 NETBEUI를 이용하여 파일 공유를 할 필요는 없습니다.
다만, 윈도우 9x를 통하여 파일 공유를 하고 있는 일부 시스템에서는 불가피하게 체크해야 할 수도 있습니다.
Keep copy of trojan as evidence
최근에 검출되거나 안전하게 차단된 멀웨어에 대한 복사본을 저장합니다. 복사된 사본은 evidence.boc으로 저장되며, 차후 멀웨어 수집이나 연구를 위해 사용할 수도 있습니다.
Automatic reset of security zone
일부 멀웨어들은 "제어판 → 인터넷 옵션"에 있는 "신뢰 할 수 있는 사이트"에 자신들의 사이트를 추가하여 IE의 보안을 취약하게 만들거나 각종 악성 코드를 전송시킵니다. 이 구문 앞에 체크하면 멀웨어가 발견될 때마다 BOClean가 "신뢰 할 수 있는 사이트" 목록을 초기화 시킵니다. 기본적으로는 체크가 되어 있지 않지만, 가급적 체크하는 것이 좋습니다.
Unattended cleanup and removal
멀웨어가 발견되면 사용자에게 처리 여부를 묻지 않고 BOClean 스스로가 치료/삭제시킵니다. 따라서 사용자는 자신의 시스템이 멀웨어에 감염되었는지 여부조차 모를 수 있습니다. (물론, 보고서 작성 옵션이 켜져 있으면, 만들어진 보고서를 통해 알 수는 있습니다.)
기본값은 체크가 해제되었는데, 코모도측에서는 그 이유를 많은 사용자가 멀웨어 감염 여부를 알고싶어 하기 때문이라고 밝히고 있습니다.
Automatic cleanup of HOSTS file
일부 멀웨어는 윈도우 HOSTS 파일(C:\WINDOWS\system32\drivers\etc\hosts)을 이용하여 자신의 사이트로 사용자를 강제 유입시킵니다. 가령, 아래 그림처럼 메모장으로 호스트 파일을 열어서 DNS 쿼리를 수정하면, 주소 표시줄에 www.hanafos.com을 쳐도 엉뚱하게 네이버(202.131.30.82=www.naver.com)로 이동합니다. 네이버 IP 대신 악성 사이트 IP를 기입할
수만 있다면 하나포스 도메인을 기입했음에도 악성 사이트로 이동하게 하는 것이 가능함은 쉽게 추론할 수 있습니다.
이를 예방하기 위해 BOClean은 호스트 파일의 기본값이 공란을 계속 유지시킵니다.
Prevent ANY changes to configuration
멀웨어 또는 다른 사용자들이 BOClean의 설정을 변경하지 못하도록 하는 기능입니다. 하지만 체크 여부는 매우 신중해야 합니다. 만약 이 구문 앞에 체크한 후 옵션 창을 닫으면, 다시는 옵션을 변경할 수 없기 때문입니다. 특별한 환경이 아니라면 가급적 사용을 자제하기 바랍니다.
Automatic cleanup of TEMP folder
프로그램을 설치하거나 실행할 경우 임시파일을 만들어야 하는 경우가 있습니다. 이 때, 통상적으로 윈도우의 TEMP
폴더(C:\WINDOWS\Temp)를 이용하는데, 간혹 이곳에 만들어진 파일들이 문제를 일으킬 수 있습니다. 따라서 기본값 그대로 체크해서 수시로 폴더를 비워주는 것이 좋습니다.
물론, 임시 파일 자체가 수시로 생성되고 지워지는 것이므로 주기적으로 삭제해도 문제는 없습니다.
Permanently hide traybar and alerts
트레이에 있는 BOClean 아이콘을 영구적으로 삭제시킵니다.
Automatic cleanup of ActiveX downloads
"Downloaded Program Files" 폴더에 저장된 ActiveX 관련 파일과 캐시를 삭제합니다. 삭제하면 다시 설치해야 하는 경우가 있으므로 체크 여부는 신중하게 결정합니다.
Do NOT show startup scan screen
부팅이 끝나고 각종 프로그램이 정상적으로 로드된 후 BOClean은 시스템의 메모리를 스캔합니다. 이 때 스캔 창이 나타나는 것을 없애서 시스템의 리소스를 확보할 수 있습니다.
코모도측에서는 가급적이면 기본값 그대로 체크를 할 것을 추천하고 있습니다. 스캔 창이 나타나서 현재의 작업 상황을 알려주는 것은 좋지만, 그 외 큰 실효는 없고, 쓸데 없는 리소스만 낭비하기 때문입니다.
Automatic cleanup of winsock connectivity
Winsock 자체는 물론 LSP(Layered Service Provider : 계층화된 서비스 공급자)에 침투하는 멀웨어를 예방해 줍니다.
Winsock이란 사용자가 인터넷에 연결할 수 있도록 해 주는 일종의 관문입니다.
LSP란 특정 소프트웨어나 프로그램을 인터넷을 할 수 있는 관문인 Winsock에 연결해 주는 것을 의미합니다.
만약 멀웨어가 스스로 문지기를 자청하며 인터넷 통로를 장악한다고 가정하면 아주 끔찍합니다. 인터넷과 내 시스템이 주고받는 각종 데이터와 자료를 그대로 가로채거나 오염시킬 수 있으니까요. BOClean은 Winsock과 LSP를 동시에 모니터링하면서 이상 징후가 감지되면 삭제하여 원래의 기본 설정으로 돌려 놓습니다.
Disable flashing of traybar icon
시스템 트레이에 위치해 있는 BOClean 아이콘은 주기적으로 변화하면서 현재의 상태를 알려줍니다. 단순한 알림 기능일 뿐, 멀웨어를 잡아내는 본연의 기능과는 무관하므로, 꺼 두어도 무방합니다.
Automatic cleanup of IE user stylesheets
최근 웹 사이트를 제작하는 방법으로 널리 쓰이는 것이 XHTML 기법입니다. 과거 HTML이 사이트의 레이아웃과 컨텐트를 동시에 제어했다면, XHTML에서는 컨텐트 출력 부분만 HTML에 위임하고 그것의 레이아웃은 CSS 스타일 시트(CSS Style
Sheet) 파일로 분리하고 있습니다.
문제는, 레이아웃을 정하는 이 CSS 파일을 해킹하는 멀웨어가 등장한다는 데에 있습니다. 일례로 CSS 파일 안에 특정 프레임을 삽입하여 악성코드 다운로드를 유도하는 것을 들 수 있습니다.
BOClean은 사용자가 변경 가능한 CSS 스타일 시트 파일을 모니터링하여 삭제시켜 줍니다.
Create report when trojan found
멀웨어 발견 시 작성되는 보고서의 저장 경로를 지정합니다. 기본값 그대로 사용하면 됩니다.
Show custom warning located at
멀웨어 검출 시 나타나는 경고 문구를 임의로 정할 수 있습니다.
The BOClean Excluder
옵션창 하단에 있는 "Excluder" 버튼을 눌러서 BOClean Excluder 창을 실행시킬 수 있습니다. BOClean과 충돌을 일으키거나 문제를 유발시키는 프로그램을 이곳에 등록하여 따로 관리하게 됩니다.
여기에 등록된 프로그램들의 경우 그것이 변형되거나, 멀웨어에 의해 침투된 것으로 여겨질 경우를 제외하고는 심층스캔(deep scan)을 하지 않습니다. 만약 심층스캔이 필요한 상황이 발생하면 BOClean은 일단 메모리를 모두 비우고 조심스럽게 작업합니다.
프로그램을 등록하는 법은 간단합니다. 탐색기를 띄워서 BOClean Excluder 창 안으로 드래그 하면 됩니다. 특히, 바탕화면 등에 위치한 바로가기 아이콘을 드래그 하는 것으로도 등록되므로 사용하기가 더욱 용이합니다.
▲ The BOClean Excluder
리소스 점유
마지막으로 리소스 점유 상태를 살펴보겠습니다. 안티 바이러스와 마찬가지로 부팅과 동시에 메모리에 로드되어 시스템에 상주하는 프로그램이므로, 다른 그 어떤 것보다 리소스 점유에 민감해 질 수 밖에 없습니다.
BOC425.EXE, BOCORE.exe 등 두 개의 프로세스로 작동하면서 약 7~9개의 쓰레드를 구성하고 있습니다. 시스템의 상태에 따라 다르겠지만 메모리 점유는 대부분 20MB를 넘지 않습니다.
실제 체감하면서 느낀 무게감은 일반적인 안티 바이러스보다는 가벼운 수준입니다. 최근 평균적인 수준인 듀얼코어 시스템 유저라면 백신과 병행하여도 크게 불편하지는 않을 것 같습니다. 다만, 백신을 보조하며 함께 구동되는 프로그램이라는 특성상 좀 더 가벼웠으면 어땠을까 하는 아쉬움은 있습니다.
▲ BOClean 리소스 점유
▶ 제작사 및 다운로드 : Comodo Group
▶ 라이센스 : 프리웨어
▶ 최신버전 : v4.25
▶ 지원 운영체제 : Windows All
▶ 멀웨어 테스트 : No Virus, No Adware, No Spyware
이 블로그의 모든 글 및 리뷰에 대한 저작권은 여름하늘에게 있습니다.
출처를 밝힌 여부와 상관 없이 글, 또는 리뷰의 내용을 다른 사이트에 올리는 것을 금합니다. 좋은 글이라 여겨지면 링크나 트랙백을 이용해 주세요.
참고 : 저작권 위반에 대한 법적 대응
Copyrights 2008 무단 전재/스크랩 금지.