날짜: 2005-12-30 | 글쓴이: 도아 | 68275 번 | 프린트 | 메일로보내기

Autoruns를 이용한 알 수 없는 악성 프로그램 제거하기 - 계속


VI. 링크

VII. 부록 부록 1: 필수 프로세스 정보
csrss.exe Client/Server Run-time SubSystem 콘솔창, 쓰리드의 생성 및 삭제, 16 비트 가상 MS-DOS 환경을 관리한다.
lsass.exe Local Security Authentication Server 사용자 로그온의 타당성을 검증하며 Winlogon 서비스를 위해 사용자 인증을 담당할 프로세스를 생성한다. Msgina.dll 과 같은 인증 패키지를 사용해서 인증을 수행한다. 인증이 성공적이면 사용 접근 토큰을 발생하며, 사용자 접근 토큰은 초기 쉘을 실행하는데 사용된다. 사용자가 시작하는 다른 프로세스는 이 토큰을 상속한다.
services.exe 서비스 관리자 이 프로세스는 시스템 서비스의 시작, 중지 및 시스템 서비스와의 상호 작용을 담당하는 서비스 제어 관리자이다.
smss.exe Session Manager SubSystem 사용자 세션의 시작을 담당하는 세션 관리자 하위 시스템이다. 이 프로세스는 시스템 쓰레드로부터 시작되며 Winlogon 및 Win32(Csrss.exe) 프로세스의 시작과 시스템 변수 설정을 비롯한 다양한 작업을 수행한다. Smss.exe는 이러한 프로세스를 시작한 후 Winlogon이나 Csrss가 종료되기를 기다린다. Winlogon이나 Csrss가 정상적으로 종료되면 시스템을 종료하며 예기치 않은 일이 발생하면 Smss.exe는 시스템이 응답을 중지한다(Hang).
System 대부분의 시스템 커널 모드 스레드가 System 프로세스로 실행된다.
System Idle Process 각 프로세서에서 실행되는 단일 스레드로 시스템이 다른 스레드를 처리하지 않을 때의 프로세서 시간을 나타내는 일만 한다. 일반적으로 작업 관리자에서 이 프로세스가 프로세서 시간의 대부분을 차지한다.
svchost.exe DLL로 실행되는 다른 프로세스의 호스트 역할을 하는 프로세스로서 이 프로세스 항목은 하나 이상 표시될 수 있으며, 보통 4~6개가 실행된다. Svchost.exe에대한 보다 자세한 사항은 Svchost.exe는 무엇일까?를 참조하며, Svchost.exe를 통해 기동되는 서비스는 Svchost.exe를 기동하는 서비스 찾기를 참조하기 바란다.
winlogon.exe Windows Logon 사용자 로그온과 로그오프를 관리하며, Windows XP의 액티베이션 코드를 검사한다.

위에서 설명한 프로세스는 시스템 기동에 필요한 최소한의 프로세스로서 각 프로세스의 종속 관계는 다음 그림과 같다.

파란.com에서 배포하는 스파이웨어라는 글에서 알 수 있듯이 대부분의 악성 프로그램은 csrs.exescvhost.exe처럼 시스템 프로세스와 비슷한 이름을 사용한다. 심지어는 csrss.exe처럼 동일한 이름을 사용하는 경우도 있다. 따라서 다음 기준에따라 프로세스를 종료해야 한다.

  1. 이름이 다른 경우: 예: csrs.exe, scvhost.exe
  2. 이름이 같은 경우: System32 폴더에서 기동된 것인지를 확인한 후 System32 폴더에서 기동한 것이 아니라면 모두 종료.

부록 2: Autoruns의 탭 설명
Everything 다른 탭에서 확인할 수 있는 모든 자동 실행 코드가 나타난다. 그러나 여기서 작업하는 것보다는 각각의 탭에서 확인하고 작업하는 것이 좋다.
Logon 쉘이 실행하는 프로그램이 등록되어 있다. 일반적으로 Run 레지스트리(HKLM,HKCU)시작 프로그램 폴더(모든 사용자, 로그인한 사용자)에 등록되어 있는 항목이 표시된다. 보통 XP를 처음 설치한 경우에는 아무런 항목이 나타나지 않는다. 따라서 자신이 설치한 프로그램이 아니거나 모르는 프로그램이라면 삭제하는 것이 좋다.

그림에서 알 수 있듯이 필자의 경우 Total Commander, DK Note, nDiary만 시작 프로그램 폴더에 등록되어 있다. 필자는 Run 레지스트리를 사용하지 않는다. 그 이유는 시작 폴더의 경우 바로 확인이 기능하지만 Run 레지스트리의 경우 일시적으로나마 프로그램의 실행을 숨길 수 있기때문이다.

Explorer 이 항목에는 쉘 확장, BHO, 탐색기 도구 막대, 쉘 가로채기등이 표시된다. XP를 처음 설치한 경우 HyperTerminal Icon Ext디스플레이 패닝 CPL 확장이 등록되어 있다. 따라서 이 두개의 확장과 자신이 설치한 확장이 아니거나 모르는 확장이라면 삭제하는 것이 좋다.

그림에서 알 수 있듯이 필자의 경우 UnlockerShellExtensionVPCHostCopyHook가 등록되어 있다. UnlockerShellExtension을 이전에 팁으로 소개한 Unlocker가 등록한 쉘 확장이며, VPCHostCopyHook는 필자가 설치한 Virtual PC에서 클립보드를 공유하기위해 설치된 확장이다.

Internet Explorer 인터넷 탐색기의 BHO도구 막대, 각종 확장이 표시된다. 이 항목 역시 XP를 처음 설치한 경우에는 아무것도 등록되어 있지않다. 따라서 자신이 설치한 BHO나 확장이 아니라면 모두 삭제한다.

그림에서 알 수 있지만 필자의 경우에도 아무런 확장이나 BHO도 등록되어 있지않다.

Scheduled Tasks 작업 예약 목록이 나타난다. XP를 처음 설치한 경우 어떠한 작업도 등록되어 있지않다. 따라서 자신이 직접 등록한 작업 목록이 아니라면 모두 삭제하는 것이 좋다.

필자의 경우 Prefetch 최적화에서 사용한 필자의 팁이 등록되어 있다.

Services 시스템 부팅시 자동적으로 시작할 수 있는 모든 서비스가 나타난다. 일반적으로 XP를 처음 설치한 경우 어떠한 서비스도 등록되어 있지 않은 것이 정상이다. 따라서 자신이 직접 설치한 서비스가 아니거나 모르는 서비스라면 삭제하는 것이 좋다. 그러나 서비스의 경우 시스템의 원할한 동작을 위해 설치된 것들이 많으므로 반드시 해당 서비스가 어떤한 서비스인지 확인하고 삭제하는 것이 좋다.

그림에서 알 수 있지만 필자의 경우에도 어떠한 서비스도 등록되어 있지않다.

Drivers 사용 안 함으로 설정되지 않은 모든 커널 모드 드라이버가 표시된다. XP를 처음 설치한 경우에는 오디오 카드 드라이버, 비디오 카드 드라이버, 넷트웍 카드 드라이버, Direct paraller Link Driver, SafeDisc driver 정도가 등록되어있다. 따라서 각각의 드라이버중 자신이 설치하지 않은 드라이버나 알 수 없는 드라이버는 삭제해도 된다. 그러나 드라이버의 경우 시스템을 기동하는데 있어서 필수적인 경우가 많으므로 확신이 없는한 삭제하지 않는 것이 좋다.

필자의 경우 다음과 같은 드라이버가 설치되어 있다.
ati2mag ATI Radeon 비디오 드라이버
hcmon VMWare의 USB 드라이버
npkcrypt 키보드 해킹 방지 프로그램의 드라이버. 지워도 추가되고, 서비스로도 등록된다. 해킹 방지 프로그램이 아니라 거의 스파이웨어 수준이다.
scsk4 부실한 설명 때문에 하이재킹 프로그램처럼 보이지만 SoftCamp에서 개발한 보안 드라이버이다. 이 드라이버 역시 삭제해도 은행을 접속하면 다시 추가된다.
VMnetBridge VMWare에서 Network Bridge를 지원하는 드라이버이다.
VMnetuserif VMWare 프로그램이 가상 네트웍을 사용할 수있도록하는 드라이버.
vmx86 VMWare의 가상화 드라이버. VMWare에서 핵심 적인 드라이버이다.
VPCAppSv Virture PC용 응용 프로그램 서비스를 제공하는 드라이버.
vstor2 VMWare의 가상 저장 매체 드라이버.

Boot Execute 부트 프로세스가 진행되는 초기에 실행되는 프로그램이 표시된다. XP를 처음 설치한 경우에는 어떠한 프로그램도 나타나지 않는다. 따라서 자신이 직접 설치한 프로그램이 아니거나 모르는 프로그램인 경우에는 가급적 삭제하는 것이 좋다.

필자의 경우 PDBoot.exe가 등록되어 있는데 이 프로그램은 PerfectDisk가 설치한 프로그램으로 부팅시 조각 모음을 수행하는데 사용된다.

Image Hijacks 이미지 파일 실행 옵션과 명령 프롬프트 자동 실행. XP를 처음 설치한 경우 아무것도 등록되어 있지 않다. 따라서 등록된 것이 있다면 모두 지우는 것이 좋다.

그림을 보면 알 수 있지만 필자의 경우에도 아무것도 등록되어 있지 않다.

AppInit HKLM\Software\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs에 등록되어 있는 DLL을 표시한다. AppInit_DLLs에 등록되어 있는 DLL은 현재 로그온 세션에서 실행중인 모든 Windows 기반 응용 프로그램에의해 읽혀진다. XP를 처음 설치한 경우에는 아무 것도 등록되어 있지 않다. 따라서 자신이 설치한 것이 아니거나 모르는 것이라면 모두 삭제하는 것이 좋다.

그림을 보면 알 수 있지만 필자의 경우에도 아무것도 등록되어 있지 않다.

Known DLLs HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\KnownDLLs에 등록되어 있는 DLL을 출력한다. KnownDLLs 레지스트리 키의 DLL들은 시스템이 시작될 때 메모리로 읽혀진다. XP를 처음 설치한 경우에는 아무것도 등록되어 있지 않다. 따라서 자신이 설치하지 않는 DLL이거나 모르는 DLL이라면 삭제하는 것이 좋다.

그림을 보면 알 수 있지만 필자의 경우에도 아무것도 등록되어 있지 않다.

Winlogon HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify에 등록되어 있는 DLL을 표시한다. Notify에 등록된 DLL은 Winlogon이 시작될 때 Winlogon이 레지스트리를 검사해서 메모리로 읽혀지게된다. XP를 처음 설치한 경우에는 아무것도 등록되어 있지 않으며 따라서 자신이 설치하지 않는 DLL이거나 모르는 DLL이라면 삭제하는 것이 좋다.

그림을 보면 알 수 있지만 필자의 경우는 ATI Exernal Event Utility가 등록되어 있는 것을 알 수 있다. 이 DLL은 필자가 사용하는 그래픽 카드가 ATI Radeon 9200 SE이기때문에 설치된 것이다.

Winsock Providers Winsock 서비스 제공자를 포함한 등록된 Winsock 프로토콜을 표시한다. 악성 프로그램은 종종 자신을 Winsock 서비스 제공자로 등록하는 경우가 많다. 그 이유는 Winsock 서비스 제공자로 등록하는 경우 제거할 수 있는 방법이 많지 않기때문이다. Autoruns은 이들을 제거할 수 있지만 사용 안 함으로 설정할 수는 없다. Winsock Providers 역시 XP를 처음 설치하면 아무것도 등록되어 있지 않다. 따라서 확실한 것이 아니라면 가급적 삭제하는 것이 좋다.

그림을 보면 알 수 있지만 필자의 경우에도 아무것도 등록되어 있지 않다.

Printer Monitor 프린터 스풀 서비스로 읽혀진 DLL을 표시한다. 악성 프로그램은 실행 코드를 심기위해 이 기능을 사용하기도 한다. Printer Monitor 역시 XP를 처음 설치하면 아무것도 등록되어 있지 않다. 따라서 확실한 것이 아니라면 가급적 삭제하는 것이 좋다.

그림을 보면 알 수 있지만 필자의 경우에도 아무것도 등록되어 있지 않다



다음글: 최고의 MBR 유틸리티, MBRWizard (103704)2006-01-03
이전글: 수작업으로 OS를 새 하드로 이동 시키기 (88171)2005-10-26
<< 이전페이지 (4/5)

세상사는 이야기



RSS 구독 (익명 | 회원 | 강좌 | 포럼)
(C) 1996 ~ 2017 QAOS.com All rights reserved.