오늘의 리뷰 주제는 맥아피의 시스템 감시를 담당하는 Computer&Files 기능에 대한 분석입니다.

참고로 저는 보안 전문가가 아니며 해당 프로그램에 대한 기술적인 지식이 없기에 이 글에 오류가
있을 수 있음을 밝힙니다. 오류가 있는 부분은 언제든지 지적해 주시기 바랍니다.







2. Computer & Files

Computer & Files 기능은 맥아피의 주요 보안 기능 중 첫번째 기능이자 핵심인 시스템감시 기능입니다.
주요 기능은 크게 파일 실시감 감시 / 수동검사 / 시스템가드 /스크립트 분석 등 4가지 탐지 기능과 제외설정 및 시스템 가드 규칙 정보를 보여주는 Trusted List로 구분됩니다.


위의 그림처럼 메인화면에서 각 기능을 클릭하면 오른쪽에 각 기능에 대한 설명이 간략하게 나옵니다.
또한 아래쪽에 Configure를 클릭하면 각 기능의 설정으로 바로 진입하게 됩니다.
앞으로의 설명은 Configure를 클릭하여 활성화된 설정화면을 바탕으로 설명하도록 하겠습니다.

Computer & Files 의 설정화면은 아래와 같습니다.


각 설정을 클릭하면 설정에 대한 간략한 소개와 고급 설정 진입 단추를 볼 수 있습니다.


1. 파일 실시간 감시


맥아피의 실시간 파일 감시는 크게 두가지로 나뉘는데 안티바이러스를 담당하는 Virus Protection과
안티스파이웨어를 담당하는 Spyware Protection이 있습니다. 위의 그림은 파일 실시간 감시에서
안티바이러스와 안티스파이웨어 기능을 활성화 시킬 것인지를 결정합니다. 
기본적으로 안티스파이웨어 기능은 실시간 감시의 on/off만을 결정할 뿐 고급설정이 존재하지 않습니다. 또한  보통 안티스파이웨어의 실시간 감시에서는 특정 부분의 레지스트리 변조 또한 감시 대상에 포함됩니다만 맥아피에서는 시스템가드가 그 역활을 수행하기 때문에 안티스파이웨어의 실시간 감시는 DB에 의한 감시만을 실시합니다.

이제부터 고급 설정을 통하여 실시간 감시 기능에 관해 분석해 보도록 하겠습니다.

참고 : 이미 설명한데로 안티스파이웨어 부분은 고급설정 없이 기능의 on/off만 존재합니다. 이는 엔진 자체는 하나이지만 사용하는 DB는 구분되어 있음을 볼 수 있습니다. 굳이 안티스파이웨어 부분을 따로 분류한 것은 악의적인 스파이웨어와 함께 사용자에 따라 악성 요소가 없다고 판단할 수 있는 애드웨어나 일부 리스크웨어 등이 포함되어 있어 사용자가 해당 기능만을 따로 비활성화 할 수 있도록 배려하기 때문으로 보입니다. 최근의 단일 엔진을 사용하는 제품들도 대부분 사용자가 DB를 따로 분류해서 적용할 수 있게 하고 있습니다. 자세한 정보는 없어 맥아피의 안티스파이웨어 기능에 휴리스틱 기법이 적용되는지는 정확하게 알 수가 없습니다만 시그니처를 이용한 기본 감시 기능만 있는 것으로 생각됩니다.

Advanced를 클릭하면 아래와 같은 고급 설정창으로 진입합니다.

① 실시간 감시에서 휴리스틱 사용 여부
② 실시간 감시시에 트랙킹 쿠키를 진단 및 삭제
③ 네트워크 연결을 통해 연결된 물리적인 드라이브를 실시간 감시로 감시 
   (이것을 체크하면 네트워크 연결을 통해 연결된 하드드라이브에서의 쓰기/읽기 속도가 다소 감소할 수 있습니다.)
④ 실시간 감시 기능에 의한 buffer overflow(버퍼 넘침) 공격 차단 활성화

참고 : Buffer Overflow란?
모든 프로그램이나 프로세스가 시스템에 로딩되거나, 사용할 데이타 정보를 저장할 때 임시로 사용하는 공간이나 RAM과 HDD 같은 물리적인 속도가 차이나는 두 저장 매체 사이를 메꿔주는 임시 공간을 Buffer라 칭합니다. Buffer는 시스템 특성과 효율성 때문에 일반적으로 그 크기가 작습니다. 버퍼 넘침은 특정 프로그램이나 프로세스가 버퍼 크기보다 많은 양의 데이타를 버퍼에 저장시키면서 발생하는 문제인데 악성코드 제작자 등의 크래커가 이를 악용하여 시스템에 의도적으로 버퍼넘침을 유발시켜 관리자 권한을 획득하거나 시스템 기능을 마비시킬 수 있습니다. 악성코드를 실행시키는 방식이 아니고 특정 정보가 담긴 메세지를 보내는 것으로도 버퍼넘침을 유발시킬 수 있기 때문에 일반적으로 일반 사용자는 버퍼 넘침을 유발시킬 수 있는 취약점에 관한 보안 패치를 하거나, 보안 제품을 통해서만 방어가 가능합니다.


⑤ 모든 파일 확장자에 대하여 실시간 감시를 진행합니다.
⑥ 실행파일(EXE, COM 등)과 특정 문서 파일(TXT, DOC, HTML 등)의 확장자에만 실시간 감시를 진행

매우 간단한 실시간 감시 기능 설정임을 알 수 있습니다. 실시간 감시 자체는 커널모드에서 구동되고 파일에 접근하는 것만으로도 시그니처를 분석할 수 있습니다만 개인적으로는 실시간 감시에서 제공하는
기능과 설정이 너무 빈약하지 않나 생각합니다. 제가 생각하는 문제점 3가지를 짚어보겠습니다.

˚ 실시간 감시에서 진단된 악성코드는 자동 삭제 
 -  이것은 상당히 큰 문제입니다. 대부분의 보안 제품이 자동삭제 기능을 제공합니다만 맥아피에서는
    따로 설정없이 무조건 자동삭제가 이루어집니다. 물론 나중에 살펴볼 검역소에 자동 저장이 됩니다
    만 휴리스틱 기능이 포함된 제품인 만큼 오진의 문제가 발생할 수 있음에도 일괄적인 자동 삭제만이
    제공된다는 점은 큰 문제입니다.
˚ 압축파일 진단 기능 미제공
 - 일단 압축파일을 풀어 물리적인 드라이브에 저장될 때 파일 실시간 감시가 우선적으로 검사하게되어
   일반적으로 실행전에 차단이 가능합니다만, 실시간 감시가 완벽하게 시스템을 보호 할 수는 없기에
   사용자에 따라 역시 큰 문제일 수 있습니다. 또한 이 기능이 대다수의 보안 제품에서 제공되는 기능임
   을 생각하면 아쉬움이 크게 남는 부분입니다.
˚ 휴리스틱 강도 조절
 - 기본적으로 맥아피의 휴리스틱은 오진율이 줄이기위해 민감도가 낮게 설계되어 있다고 합니다.
   그러나 오진이 증가하더라도 그 민감도를 높여 사용하고 싶은 고급 사용자를 위해 휴리스틱의 민감도
   조절에 관한 설정을 필요하다고 봅니다.

파일 실시간 감시 기능에서 악성코드가 진단되었을 때의 알람창을 보겠습니다.

파란색의 악성코드 진단명을 클릭하면 맥아피 사이트의 악성코드 리스트에서 해당 진단명에 대한 정보를 볼 수 있습니다.
역시 자동 삭제 기능만을 제공하기에 알람창에서 사용자 처리 문구는 보이지 않습니다.


2. 수동 스캔

이미 Security Center에서 이미 자세히 분석한 부분임으로 해당 기능에 대한 분석은 Security center 포스팅을 참고하시기 바랍니다. 맥아피의 수동 스캔관련한 고급 설정은 아래와 같습니다.


표시된 부분은 수동 스캔의 속도가 감소하더라도 시스템 리소스를 적게 사용하도록 하는 기능입니다. 그러나 필자의 컴퓨터 사양에서는 체감적으로 느낄 수 있는 리소스 감소가 보이지는 않았습니다.

아래 검사할 파일 확장자 종류를 고르는 것은 파일 실시간 감시와 동일함으로 넘어갑니다.


수동 스캔시 진단할 장소를 지정하는 것인데 역시 Security Center에서 다룬 것과 동일합니다.

고급 설정란에서 설정은 Basic mode에서의 Scan과 오른쪽 마우스 쉘 검사에 적용됩니다.


아래 그림처럼 맥아피는 수동 스캔의 스케쥴러 기능을 제공합니다.

                                 스케쥴러의 사용은 위의 그림을 참고하시기 바랍니다.


3. System Guard


맥아피 고유의 실시간 시스템 감시 기능인 시스템 가드입니다. 악성코드나 기타 유해 가능 프로그램이
윈도우 시스템과 웹브라우져 설정 변경하는 것을 탐지/차단할 수 있게 합니다.

최근의 보안 제품에는 시그니처 기반의 악성코드 진단 외에 다른 여러가지 기능들이 추가되고 있는데
그중 한가지가 강력한 시스템 모니터링 기능과 권한 제어 기능을 제공하는 HIPS 기능입니다.
맥아피의 시스템 가드도 이러한 HIPS기능과 유사합니다만 주로 스파이웨어나 애드웨어 등의 자주 변경을 시도하는 부분에 주목하여 시스템 모니터링 범위가 상당히 제한적입니다.
따라서 타사의 HIPS 포함 제품들처럼 포괄적인 시스템 제어는 불가능합니다. 
(감시 항목을 살펴보면 다른 안티스파이웨어 제품들이 주로 감시하는 항목과 거의 유사합니다.)

그러나 HIPS 기능은 사용자가 알아야할 지식과 처리해야할 명령이 많다는 단점이 있음을 고려해보면
최소한의 범위로 사용자의 처리를 줄이면서 중요한 시스템 기능을 보호한다는 점에서 매우 쓸만한 기능이라 생각됩니다.


Advanced를 클릭하여 고급 설정란으로 진입합니다.

시스템 가드는 Program/Windows/Browser 등 3가지로 시스템 감시 항목을 분류합니다.
또한 Show alerts(사용자 처리 및 로그 남기기)/Only log changes(로그만 남김)/Disable this Systemguard(해당 항목 감시 비활성화) 등의 3가지 처리 방법을 제공합니다. 
이제부터 모든 기능을 설명할 때는 처리방법을 Show alert 항목으로 하여 설명하도록 하겠습니다.

시스템 가드의 감시 항목에 관하여 설명해 보도록 하겠습니다.

일부 감시 항목에 관한 정보를 맥아피의 도움말이나 웹사이트에서 정확하게 제공하지 않아 필자가 예상한 항목을 추가하였음을 밝힙니다.

① Program SystemGuard :  악성코드나 일반 어플리케이션이 설치/구동할 때 시스템에 자신의 실행에
                                     관한 설정을 추가하여 시스템 설정 변경을 시도하는 것을 탐지/차단합니다.
  
  ⓐ ActiveX  Installations 
     
      액티브 x 형태의 프로그램 설치시 해당프로그램의 레지스트리 값을 변경시도를 탐지합니다.
      이 기능은 액티브x 자체를 차단하는 것이 아니기에 액티브X 가 설치되어 등록되는 것을 차단하는
      것은 불가능합니다. 해당 기능이 감시하는 레지스트리 항목은 다음과 같습니다.
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Code Store Database\Distribution Units
 
     
해당 기능의 실제 탐지 및 차단을 예를 들어 설명해 보겠습니다.

      국내 한 포털의 자료실 다운로더입니다.

       위의 액티브x 프로그램을 설치하면 아래와 같은 알람창이 활성화 됩니다. 그러나 위에 설명한대로
       이미 해당 프로그램의 CLSID(식별 ID)인 {15AECD82-DA7D-4EC5-B57F-ED578D84C3F9} 는 이미
       등록되어 있고 설치 파일 또한 설치가 됩니다. 따라서 해당 기능의 차단 허용 여부와 상관없이
       정상적으로 실행이 됩니다.

                위의 그림처럼 레지스트리 변경에 허락 여부에 관계없이 제대로 구동이 됩니다.

       일단 해당 액티브x 의 레지스트리 변경을 허락합니다. 알람창에는 시스템가드의 어떤 감시항목에
       서 어떤 프로그램을 감지하였는지에 대한 정보가 나와있습니다. 
   
       허용을 했으면 아래 그림처럼 레지스트리 변경이 나타날 때마다 해당 레지스트리 변경이 허용되었
       음을 알리는 알람창이 뜹니다. 그러나 허용했다는 정보만 보여줄 뿐 실제 레지스트리 정보는 로그
       보기를 통해서 봐야합니다. 



        문제없이 해당 액티브 X가 잘 등록되어있음을 알 수 있습니다. 

        이번에는 다른 액티브X 프로그램을 설치시 레지스트리 변경을 차단시켜 보겠습니다.

      해당 프로그램이 레지스트리 변경을 시도할 때마다 아래와 같은 알람창이 활성화 되어 차단되었음
      을 보여줍니다. 역시 자세한 항목은 로그보기를 통해서 확인해야 합니다.


      실제 레지스트리 항목을 보면 아래처럼 CLSID는 등록이 되었으되(정상 실행이 가능하다는 의미)
      추가되는 정보 항목에 관해서는 등록이 안되어 있음을 알 수 있습니다.


      제가 잘못 이해하고 있을 수 있습니다만 해당 기능은 CLSID 등록 자체를 차단해야 하는 기능이
      아닌가합니다. CLSID 가 등록되면 정상적으로 실행이 되기 때문입니다. 
      또한 모든 시스템가드 기능도 마찬가지지만 여러 변경 항목에 관해 일괄적으로 허용/차단만이 가능
      하다는 점도 문제입니다. 시스템가드의 한 감시 기능에서 단일 프로그램에서 시도하는 특정 변경
      항목은 허용하고 차단하는 것이 불가능하기 때문에 관리측면에서는 매우 불편합니다. 
      물론 시스템 가드 기능이 시스템 관리 기능이라기 보다는 악성코드의 시스템 침입을 예방하기 위한
      기능임을 감안하면 이해할 수는 있습니다만 개인적으로는 많이 아쉬운 부분입니다.

      참고로 액티브x형태의 프로그램이 해당 레지스트리 항목말고 다른 부분에 변경을 시도하면 다른
      감시 기능(감시하고 있는 항목에 관련된 경우)에서 탐지가 됩니다.


앞으로 설명할  기능들은 감시하는 항목의 추가/변경이 탐지될 때 위와 같은 알람창이 활성화 됩니다. 시스템 가드 항목과 감지된 어플리케이션이 다를 뿐 처리방법/보여주는 정보 등은 모두 같습니다.
따라서 알람창 항목에 관한 설명은 하지 않도록 하겠습니다
.


   ⓑ Startup item : 시스템의 시작 프로그램에 등록되는 프로그램을 감시합니다.
     
      해당 기능의 레지스트리 감시 항목 중 몇개를 골라보면 아래와 같습니다.
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\MSConfig\startupfolder
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx


      
  
   ⓒ Windows Shell Execute Hook : 윈도우즈 쉘에 삽입되는 프로그램을 감시합니다.
      Shell 은 간단히 설명하면 사용자나 프로그램이 시스템에 내리는 명령을 시스템이 알아들을 수 있는
      언어로(기계어)로 변경하여 프로그램과 명령이 구동될 수 있도록 해주는 시스템 외부 구조라 볼 수
      있습니다.  그리고 Shell Execute Hook은 Explorer 등의 윈도우 쉘을 통해 구동되는 프로그램 또는
      명령이라 생각하면 됩니다. 악성코드들이 Shell Execute Hook 항목에 등록되면 쉘을 통한 명령어
      등을 가로챌 수 있습니다. 
     
      이 기능의 레지스트리 감시 항목은 다음과 같습니다.
      HKEY_LOCAL_MACHINE \Software \Microsoft \Windows \CurrentVersion \Explorer
      \ShellExecuteHooks
 
  
   ⓓ Shell Service Object Delay Load 
      Shell Service Object Delay load 항목은 윈도 시작시 구동 될 수 있도록 Explorer.exe가 자동으로
      구동시켜주는 프로그램 항목이 등록되는 곳입니다. 보통 윈도우 시작 프로그램에 등록된 프로세스
      보다 먼저 구동됩니다.

      이 기능의 레지스트리 감시 항목은 다음과 같습니다.
      HKEY_LOCAL_MACHINE \Software \Microsoft \Windows \CurrentVersion
      \ShellServiceObjectDelayLoad


    
② Windows SystemGuard : 프로그램 가드가 프로그램 자체에 대한(프로그램의 시스템 등록 등) 설정
                                     변경을 감지한다면 윈도우 가드는 윈도우 시스템 자체를 변경하는 것을
                                     탐지합니다.
   
   ⓐ Context Menu Handler : 마우스 오른쪽 버튼 클릭시 나타나는 쉘 메뉴의 변경을 탐지합니다.

       이 기능의 레지스트리 감시 항목 중 몇가지를 살펴보면 다음과 같습니다.  
       HKEY_CLASSES_ROOT\*\shellex\contextmenuhandlers
       HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers
       HKEY_CLASSES_ROOT\Folder\shellex\contextmenuhandlers


   
ⓑ Applnit DLLs : Applnit DLLS 항목에 등록된 DLL은 각 프로그램이 구동될 때마다 로딩이 됩니다.
       (단, User32.dll 파일을 이용하여 구동되는 프로그램에 한합니다.)
       쉽게 말해 대부분의 프로그램이 구동될 때 해당 DLL들의 DLL injection이 이루어 집니다.

       이 기능의 레지스트리 감시 항목은 다음과 같습니다. 
       HKEY_LOCAL_MACHINE \Software \Microsoft \Windows NT \CurrentVersion \Windows :
       (문자열값) Applint DLLs
 

  
ⓒ Windows Host Files : 호스트 파일은 일반적인 사이트 주소(도메인 주소 예 : www.daum.net)와
       실제 웹사이트의 IP를 연결시켜주는 정보를 포함하고 있습니다. 이 기능은 호스트 파일의 변경을
       감지합니다.

(참고 : 일반적으로 사용자의 기본 Host File 에는 domain과 IP 관련 정보가 없습니다. 따라서 ISP 업체의 DNS 서버에 접속해서 웹사이트의 도메인과 IP에 대한 정보를 얻습니다. 그러나 사용자가 네트워크 연결을 시도할 때 호스트 파일을 먼저 검색 후 DNS 서버와 통신을 하기 때문에 호스트 파일의 내부 정보를 변경하면 사용자가 원하지 않는 사이트로의 접속을 유도할 수 있습니다.)


     호스트 파일의 위치는 다음과 같습니다. (XP기준)
     C:\Windows\System32\dreivers\etc\host 
    

    
   ⓓ Winlogon Shell : 해당 항목에는 기본적으로 Explorer.exe와 같은 쉘 프로그램이 지정되어 있으나
       이를 변경하여 다른 쉘 프로그램을 구동시킬 수 있습니다.

       이 기능의 레지스트리 감시 항목은 다음과 같습니다.
       HKEY_LOCAL_MACHINE \Software\Microsoft\Windows NT\CurrentVersion\Winlogon :
       (문자열값)Shell

   ⓔ Winlogon User Init : 해당 항목은 윈도우 부팅 후 시작되어 explorer.exe 등의 쉘 프로그램을 로딩시
       키는 등 윈도우 시작 환경을 정비하는 UserInit.exe의 변경 시도를 지합니다.

        이 기능의 레지스트리 감시 항목은 다음과 같습니다.
        HKEY_LOCAL_MACHINE \Software\Microsoft\Windows NT\CurrentVersion\Winlogon :
        (문자열값) Userinit 


  
ⓕ Windows Protocols : 사용자가 네트워크와 정보를 주고 받을 때 사용하는 프로토콜 설정값의 변경
       을 탐지합니다.

       이 기능의 레지스트리 감시 항목은 다음과 같습니다.
       HKEY_LOCAL_MACHINE\SOFTWARE\Classes\PROTOCOLS/(하부항목)


  ⓖ WinSock Layered Service Providers : Winsock LSP의 설정 변경을 감지합니다.
      Winsock 은 Window Sockets의 준말로 네트워크 연결을 시도하는 어플리케이션들의 입출력 요청을
      처리하는 프로그래밍 인터페이스를 의미합니다. 대부분의 TCP/UDP 통신이 Winsock을 통해 구현
      됩니다. Winsock LSP(layered Service Provider)는 네트워크와 네트워크 연결을 시도하는 어플리케
      이션(웹브라우저 등) 사이에서 통신을 주고받을 수 있게 해주는 프로그램으로 생각하면 됩니다. 
      LSP는 Winsock으로 처리되는 내용을 모두 확인할 수 있기에 네트워크를 통해 입출입하는 특정 정
      유출 시킬 수 있게됩니다.

      이 기능의 레지스트리 감시 항목은 다음과 같습니다. 
      HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Winsock (하부 항목)
      HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Winsock2 (하부 항목)
      
    
  ⓗ Windows Shell Open Commands : Shell Opne commands는 특정 프로그램이나 파일에 지정된 프로
     그램 실행을 담당하는 에 윈도우의 실행명령어라 생각하면 됩니다. 예를 들어 악성코드에 의해
     Shelll open commands가 변조되면 특정 프로그램을 실행할 때마다 악성코드가 계속 실행되게 할 수
     있습니다.

     이 기능의 레지스트리 감시 항목은 다음과 같습니다.
     HKEY_CLASSES_ROOT\exefile\shell\open\command
     HKEY_LOCAL_MACHINE\SOFTWARE\Classes (하부 항목)


  ⓘ Shared Task Scheduler : 윈도우즈의 작업예약 항목의 변경을 감시합니다.
      해당 기능에 악성코드의 실행파일을 지정함으로써 주기적으로 악성코드를 실행시킬 수 있습니다.

      이 기능의 레지스트리 감시 항목은 다음과 같습니다.
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer
      \SharedTaskScheduler
  
  
   ⓙ Windows Messenger Service : 비스타는 모르겠습니다만 예전에는 98, XP 등의 OS에는 윈도우
       메신져 서비스가 기본적으로 활성화 되어있습니다. 메신져 서비스가 활성화 되어 있으면 특정 조
       건에서 외부에서 사용자에게 메세지를 보내는 것이 가능합니다. 이를 악용해서 악성코드를 통해
       설정을 변경시켜서 광고 팝업 등을 띄우는데 사용하곤 했습니다. 현재 최신 버전의 서비스팩이
       설치된 OS를 사용하고 계신다면 기본적으로 비활성화되어 있는 것으로 알고 있습니다.

       이 기능의 레지스트리 감시 항목은 다음과 같습니다.
       HKEY_CURRENT_USER\Software\Microsoft\MessengerService

 
   ⓚ Windows win.ini File : win.ini 파일은 윈도우를 실행할 때 필요한 프로그램들의 정보가 담겨있습니
       다. 이를 악용해서 해당 파일에 특정 악성코드를 실행시키도록 내용을 추가하는 경우가 있습니다.
     
       정상적인 Win.ini 파일은 다음의 위치에 존재합니다. (XP 기준)
       C:\WINDOWS\win.ini



③ Browser SystemGuard : 웹브라우저(IE)와 관련된 설정 변경을 감시합니다. 대부분의 설정이 IE 감시
    에 초점이 맞추어져있어 파이어폭스/크롬/오페라과 관련된 설정이 존재하지 않습니다. IE의 점유율
    이 높은 것은 사실이지만 많이 아쉬운 부분입니다.

  ⓐ Browser Helper Objects : BHO(Browser Helper Object)는 IE 등의 웹브라우저가 지원하지 않는 기능
      을 추가하기 위하여 플러그인 형태로 추가되는 모듈입니다. DLL 모듈이 삽입되어 실행되는데 웹브
      라우저가 구동되면 자동으로 구동됩니다. 
 
      이 기능의 레지스트리 감시 항목은 다음과 같습니다.
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer
      \Browser Helper Objects

      
 
  ⓑ Internet Explorer Bars : IE의 기본 메뉴 바(Search/Favorites/History/channels bar)의 변경을 탐지합
      니다. 악성코드 중에 의도적으로 즐겨찾기 등에 특정 웹사이트를 추가시키거나 변경하는 경우가
      있습니다.

      이 기능의 레지스트리 감시 항목은 다음과 같습니다.
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Explorer Bars

  ⓒ Internet Explorer Add-ons : IE의 추가기능의 추가/변경을 감시합니다.
      여기서 애드온 기능은 BHO 형식이 아닌 확장기능을 의미합니다.    
     
     이 기능의 레지스트리 감시 항목 중 한가지는 다음과 같습니다. 
     HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Plugins
     
  ⓓ Internet Explorer ShellBrowser : IE와 Explorer(윈도탐색기)가 연동되어 구동되는데 이 기능은
      IE에서 Explorer 항목으로 이동할 때(주소창에서 폴더주소를 기입하는 등)에 사용되는 레지스트리
      설정 항목의 추가/변경을 감시합니다. 

      이 기능은 다음의 레지스트리 항목을 감시합니다.
      HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Toolbar\ShellBrowser\
    
  ⓔ Internet Explorer WebBrowser : ⓓ와 마찬가지로 IE와 EXplorer이 연동될 때 이번엔 반대로 Explorer
      에서 IE로 넘어갈 때(탐색기에서 웹사이트 url 기입 등)에 사용되는 레지스트리 설정 항목의
      추가/변경을 감시합니다. 
      
      이 기능은 다음의 레지스트리 항목을 감시합니다.
      HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Toolbar\WebBrowser\

  ⓕ Internet Explorer URL Search Hooks : 웹브라우저의 주소창에 'Http://' 같은 프로토콜 정보를 제대
      로 기입하지 않았을 경우 웹브라우저에서 자체적으로 해당 프로토콜을 검색하는데 웹브라우저에서
      적당한 프로토콜을 찾지 못했을 경우 해당 항목에 포함된 정보를 찾습니다. 악성코드로 해당 정보
      가 변조되어 특정 웹사이트로 고정되어 연결되는 경우가 있습니다.

      이 기능은 다음의 레지스트리 항목을 감시합니다.
      HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\URLSearchHooks


  ⓖ Internet Explorer URLs : Internet Explorer URL Search Hooks과 마찬가지로 웹브라우저 주소창에
      프로토콜 정보가 제대로 기입되지 않았을 경우 자동으로 프로토콜을 찾아 기입해주는 기능입니다.
      역시 악성코드로 인해 변조되면 특정 웹사이트로 고정되는 등의 문제가 발생합니다. 

      이  기능은 다음의 레지스트리 항목을 감시합니다. 
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\URL

   
  ⓗ Internet Explorer Restrictions : IE는 최고 권한자가 하위 계정의 IE의 각종 설정 등의 변경 권한을
      조정할 수 있는데 이 기능은 이 설정의 추가/변경을  감시합니다.
      
      이 기능은 다음의 레지스트리 항목을 감시합니다.
      HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Restrictions
      HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Internet Explorer\Restrictions


 ⓘ Internet Explorer Security Zones :  IE는 Internet, Local Intranet, Trusted Sites, Restricted Sites, 
     My Computer 등 5가지 보안영역을 제공합니다. 각각의 영역에 따라 지정된 보안 설정의 강도가
     다른데 악성코드는 이를 수정하여 제한된 사이트(Restricted Sites) 등의 설정을 변경시켜 또 다른
     악성코드의 다운 및 실행이 가능하도록 하거나 특정 사이트를 신뢰할 수 있는 사이트로 추가시키곤
     합니다. 
     따라서 해당 기능은 이러한 보안 영역 (Security zone)의 설정 변경을 감시합니다.

     이 기능은 다음의 레지스트리 항목을 감시합니다.
     HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet
     Settings\ZoneMap (하위 항목)
     HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet
     Settings\Zone (하위 항목)

  
 ⓙ Internet Explorer Trusted sites : ⓘ의 보안 영역 항목 중 신뢰할 수 있는 사이트에 관한 설정 변경만
     을 감시하는 기능입니다. ⓘ 기능을 비활성화 시키거나 로그 기록으로 설정하였을 경우에도 이 기능
     이 활성화 되어 있으면 신뢰할 수 있는 사이트의 보안 설정을 변경하거나 사이트를 추가하는 것을
     탐지할 수 있습니다.

     이 기능은 다음의 레지스트리 항목을 감시합니다.
     HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\InternetSettings
     \Zones\2


  ⓚ Internet Explorer Policy : 이 기능은 IE의 보안영역 설정과는 상관없이 개인정보(쿠키 허용 여부 등)
      에 대한 접근 정책에 관한 감시 기능입니다.

      이 기능은 다음의 레지스트리 항목을 감시합니다.
      HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Group Policy Objects\
   
  (하위 항목)
      HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Control Panel
 

시스템 가드에 대한 간략한 설명을 마쳤습니다. 앞에서 설명한 것처럼 시스템 가드는 스파이웨어나 애드웨어 등을 예방할 목적으로 제한적인 시스템 모니터링만을 실시합니다. 
개인적으로는 이왕 시스템 감시를 지원한다면 좀 더 넓은 범위의 감시 항목을 제공하는 것도 좋다고 생각합니다만 지금의 시스템 가드의 감시 항목만으로도 개인 사용자가 사용하기에는 쉬워 보이지는 않는게 아쉽습니다. 앞으로 시스템 감시 기능에 대해서 좀 더 지능화된 자동 처리 시스템이 나와 일반 사용자가 사용하기에 쉬운 기능이 되는 것을 기대해 봅니다.

시스템 가드를 사용하면서 느낀 또하나의 단점이 있는데 이는 시스템 가드를 활성화시 체감적인 무게감이 증가한다는 것입니다. 예전 포스팅에서 설명하였듯이 맥아피 2009 제품은 비교적 무거운 제품입니다만 시스템 가드를 활성/비활성 시킬 때 체감적으로 느낄 수 있을 만큼 무게감에 차이가 있습니다.
특히, 프로그램 구동이나 explorer를 통한 폴더 이동, 파일 이동, 제어판 활성화 등에서 약간의 딜레이가
존재합니다. HIPS가 포함된 다른 제품들이 포괄적인 시스템 제어를 제공함에도 프로그램 구동시에 이로인한 딜레이가 크게 없는 것을 생각해보면 시스템 리소스 효율적인 사용면에서 많이 뒤떨어지는것이 아닌가  합니다.
(사실 최근의 시스템 리소스 사용 벤치자료를 보면 점수가 많이 뒤떨어지긴 합니다.)



4. Script Protection


이 기능은 실시간 감시나 수동검사에서 시그니처 형식으로 진단된 스크립트 형태의 혹은 스크립트가 삽입된 파일을 진단하는 것이 아닙니다. 시그니처에 미포함된 파일 내부의 스크립트 실행시에 나타나는 행동 유형을 판단하여 해당 스크립트의 활성화를 차단하는 행동기반 방식의 탐지 기능입니다.

다른 고급 설정을 제공하지는 않습니다만 실시간 감시나 수동검사를 보완하는 역활로서 가급적 활성화 시키기 바랍니다.


5. Trusted Lists


Trusted lists 는 제외설정과 고급 설정에서 찾아볼 수 있습니다.

Trusted lists는 SystemGuard 규칙/진단 제외 파일 설정/Buffer Overflow 감시 제외 등 3가지 정보를 보여줍니다.

① SystemGuard 규칙

시스템 가드의 알람창에는 위의 그림에 표시된 부분을 체크하면 해당 탐지 항목에 관해 일반 규칙을 형성할 수  있습니다. 형성된 규칙은 Trusted lists에서 확인/관리가 가능합니다.
                                         시스템 가드의 3가지 감시 항목 설정


                                                        시스템 가드의 규칙 정보

각 탐지된 감시 항목의 규칙을 여기서 수정이 가능합니다. 규칙 자체가 허용/차단 의 단순한 구조이기에 어려움은 없습니다. 수정을 원하는 규칙을 클릭하고 Trust/Block을 클릭합니다.
마지막 Remove는 규칙을 제거하는 기능입니다. 상황에 따라 사용자가 허용/차단을 각각 해주고 싶다면 정해진 규칙을 제거하면 됩니다.


②  진단 제외 파일 설정

다른 제품들과 마찬가지로 진단에서 제외할 파일을 설정합니다.
해당 항목의 진단 제외 설정을 삭제하고자 하면 아래의 Remove 버튼을 누르면 됩니다.

③ Trusted Buffer Overflows

특정 어플리케이션의 프로세스가 오버 넘침을 만들어 낼 때 맥아피의 감시/차단에서 제외시키는 설정입니다.  오버 넘침이 사용자 시스템에 필요한 경우가 있는지는 알 수가 없습니다만 해당 항목의 제외설정이 있는 것으로 봐서 일부 어플리케이션의 구동에 필요한 경우가 있나봅니다.

간단한 UI를 구성하는 맥아피답게 Trusted lists의 사용도 비교적 간단합니다만 제 경우는 아래와 같은
문제점이 있었습니다.

첫 번째로 Trusted lists는 따로 독립된 기능이 아니라 고급 설정의 하부 구조에 포함되어 있습니다. 고급 설정이 감시 기능의 Advanced 버튼을 통해서만 진입이 가능하기 때문에 비교적 찾기도 어렵고 접근성도 많이 떨어집니다. 중요 관리 기능인 시스템 가드의 규칙이 여기서 관리된다는 것을 생각하면 사용자의 관리 측면에서 사용 편의성이 떨어진다 생각합니다.
두 번째로 진단 파일 및 오버 넘침 제외 설정 시에 사용자가 임의로 폴더, 파일, 프로세스 등을 제외 설정에 추가할 수 없습니다. 맥아피에서 진단된 객체만을 제외시킬 수 있으므로 특정 폴더나 어플리케이션을 제외 설정하기가 불편했습니다.

맥아피 제품의 기본 테마가 보안 제품의 사용법을 잘 알지못하는 일반 사용자들도 쉽게 쓸 수 있는 제품이라서 세세한 설정을 원하는 사용자에 대한 설정이 없는 것이 많이 아쉽습니다.


이상 Computer & Files에 대한 설명을 마칩니다.


저작자 표시 비영리 변경 금지
신고
Posted by 물여우

댓글을 달아 주세요

  1. Favicon of http://wezard4u.tistory.com BlogIcon sakai 2008.12.24 14:18 신고  댓글주소  수정/삭제  댓글쓰기

    리뷰 잘 보았습니다.앞으로 좋은글 많이 부탁드립니다.

  2. Favicon of http://www.foropnanto2op BlogIcon wkdwjddn 2016.06.25 12:47 신고  댓글주소  수정/삭제  댓글쓰기

    이건 강제오피라는것입니다 이걸실행할려면 백신을꺼야합니다 {근데백신끄는게안돼네요ㅠㅠ}




티스토리 툴바