 |
 |
 |
|
|
|
|
|
|
|
며칠 동안 이어온 프로세스와 보안 (여름하늘의 보안 이야기 3)의 마지막 시리즈입니다. 애초에는 services.exe, userinit.exe, 그리고 lsass.exe, winlogon.exe 나눠서 글을 올리려고 했으나 두 부분을 합쳐서 포스팅하기로 마음을 바꿨습니다. 포스팅을 나누는 이유는 오랜 시간 블로그를 운영해 온 노하우(^^;)를 통해, 본문이 길어질 경우 독자들이 지루해 하고, 내용도 장황해 지는 경향이 있어서 였습니다. 하지만 이번 네 프로세스 각각의 내용은 그다지 많지 않고, 무엇보다 앞선 글을 통해 중복되는 것도 있어서 한 번에 올리기로 했습니다.
services.exe (1) services.exe의 역할 Service Control Manager라고 불리는 services.exe 프로세스는 winlogon.exe에 의하여 호출되어, 우리가 흔히 잘 아는 서비스 콘솔(제어판 >관리 도구 > 서비스, 또는 C:\WINDOWS\system32\services.msc) 안의 프로세스를 실행시키거나 종료시키는 일을 담당합니다. 더불어, 부팅 시 또는 사용자가 요구 시 각종 드라이버와 서비스를 로드하거나 열거하기, 현재 실행 중인 서비스와 드라이버의 정보와 상태를 유지하여 다른 서비스와 사용자의 요구에 응답하기 등이 세부적인 작업도 맡고 있습니다. 이 프로세스의 실행 파일 역시 C:\WINDOWS\system32 안에 있어야 하며, 그 외의 장소에 있는 것은 멀웨어로 봐도 무방합니다.
▲ services.exe 프로세스 정보
(2) services.exe와 보안 프로세스를 실행시키는 프로세스라는 특성 때문에 services.exe 파일을 대상으로 하는 멀웨어는 아주 다양하고, 그 증상 역시 정의하기 힘들만큼 복잡합니다. 가장 가벼운 증상인 카운트다운 메시지가 뜨면서 시스템이 강제로 종료되는 것부터, 특정 악성 프로그램을 자동으로 시작하게 하여 사용자의 정보를 빼 가거나, 사용자의 시스템 안으로 멀웨어를 유입시키기도 하는 치명적인 사태까지도 유발합니다.
userinit.exe (1) userinit.exe의 역할 userinit.exe 프로세스는 부팅이 끝나면 Explorer.exe 등과 같은 윈도우 쉘 프로그램을 실행시키고, 네트워크 연결을 설정하며, 윈도우 시작 인터페이스를 초기화 하는 임무를 담당합니다. 즉, 부팅이 무사히 끝나면 볼 수 있는 우측 하단의 시작 버튼 및 그 메뉴, 트레이, 작업 표시줄 등이 모두 userinit.exe에 의해 로드되고, 탐색기와 인터넷 익스플로러를 띄울 수 있는 기반 프로그램(쉘 프로그램)인 Explorer.exe가 호출됩니다. userinit.exe 파일이 다른 서비스 프로세스와 다른 점이 있다면, 상기한 작업이 끝나면 더 이상 남아 있지 않고 자동으로 종료됩니다. 따라서 부팅 후 일정 시간이 경과한 후에도 계속 이 프로세스가 남아있다면 멀웨어가 아닌지 의심해 봐야 합니다.
▲ userinit.exe 프로세스 정보
(2) userinit.exe와 보안 userinit.exe가 오염되거나 삭제되면 이른바 무한 로그 온/로그 오프 현상이 발생합니다. PC의 전원이 들어오고 작동은 하지만 윈도우에 전혀 진입할 수 없는 난감한 사태를 경험할 수 있는데, 이 경우 복구 하기도 힘듭니다. 다른 프로세스의 경우 각종 멀웨어에 감염되어 시스템이 만신창이가 될 망정 그래도 부팅은 되지만, userinit.exe에 문제가 있으면 아예 부팅조차 되지 않기 때문입니다. (이 순간이 바로 앞에 언급한 Windows PE 등이 필요한 때가 됩니다.) 따라서 다른 그 어떤 프로세스보다 userinit.exe는 주의하여 관리하여야 합니다. 일부 유저들의 경우 안티 바이러스를 깔지 않고도 잘 사용해 왔다며 자랑 아닌 자랑을 하곤 하는데, 만에 하나 방금 열거한 일이 발생한다면 아무 대책도 없이 시스템을 사용하지 못할 수 있습니다.
또 다른 userinit.exe의 전형적인 감염 기법은 레지스트리 수정입니다. userinit.exe 프로세스는 다음의 레지스트리 키에 의해 정의됩니다.
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon Userinit = C:\WINDOWS\system32\userinit.exe 이곳의 하위 아이템으로 "Userinit" = "C:\WINDOWS\system32\userinit.exe" 값이 정의되는데, 문제는 이 값의 맨 뒤에 특정 프로세스를 적어주면 userinit.exe가 실행됨과 동시에 그것이 실행될 수 있다는 것입니다. 가장 대표적인 기법 중 하나가 "Trojan-Downloader.Win32.Agent.fpp" 라는 멀웨어입니다. 이 악성 코드는 아래와 같이 미리 생성해 놓은 "Ir32_a.exe" 라는 프로그램을 userinit.exe에 등록시켜서 사용자도 모르게 각종 악성 프로그램을 다운로드 하거나, 외부로 다시 전파시킵니다.
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon Userinit = C:\WINDOWS\system32\userinit.exe,Ir32_a.exe 이것을 예방하는 방법은 무조건 사전적인 대책만이 유효합니다. 따라서 안티 바이러스 하나 없이도 PC를 잘 운영한다는 무모하고 철없는 자랑을 할 것이 아니라, AntiVir, AVG, Comodo 등과 같은 무료 백신이라도 꼭 하나 설치해야 합니다. 이보다 더 권장할 만한 일은 HIPS를 지원하는 Comodo 방화벽(프리웨어)이나 카스퍼스키 6.0 이후 버전을 설치하는 것입니다. 이들의 경우 아래 그림과 같이 기본적으로 주요 프로세스와 레지스트리 키를 모니터링 해 주고 있으므로, 절대로 사용자가 모르게 각종 서비스 프로세스가 수정되지 못합니다.
lsass.exe (1) lsass.exe의 역할 Local Security Authority Subsystem Service(로컬 보안 인증 지원 서비스)의 약자인 lsass.exe는 얼마 전 안철수 연구소의 V3가 오진으로 삭제하여 수 많은 사용자의 PC가 부팅이 되지 못하게 한 일로 유명해진 프로세스입니다. 그 의미 그대로 사용자의 로컬 PC의 보안에 관련한 각종 작업을 담당합니다. 부팅 시 사용자 계정을 정의하고, 그의 패스워드와 보안 정책, 인증 및 관련 로그를 기록합니다. 때문에 이 프로세스가 망가지면 부팅이 안 되는 것이 아주 전형적인 증상으로 발생합니다. lsass.exe 실행 파일은 C:\WINDOWS\system32 안에 있는 것이 정상이며, 이 외의 경로에 있다면 멀웨어일 가능성이 아주 높습니다.
▲ lsass.exe 프로세스 정보
(2) lsass.exe와 보안 안랩의 오진에 앞서 lsass.exe가 유명해진 것은 이른바 사세르 웜(Sasser worm)이라는 유명한 멀웨어 때문이기도 했습니다. 강제로 윈도우를 종료시키며, 다른 PC로의 감염성도 아주 강력하여 국내외적으로 악명을 떨친 바 있습니다. 주로 전파성이 높은 웜으로 감염되고 시스템 폴더 또는 프로그램 폴더(%Program Files%) 안에 가짜 lsass.exe 파일을 만들거나 윈도우를 종료시키고, 각종 메시지와 문자를 출력하기도 합니다. lsass.exe를 타겟으로 하거나 가장하는 멀웨어 역시 트로얀과 웜이 주류를 일으키고 있습니다.
winlogon.exe (1) winlogon.exe의 역할 winlogon.exe은 이름만 들어도 대략 짐작이 가능할 것입니다. 윈도우 로그온 화면에서 Control-Alt-Delete 키 조합으로 실행시키는 이른 바 SAS(Secure Attention Sequence) 키 조합을 담당하고, 계정 아이디와 패스워드가 일치하는가를 파악한 후, 로그온이 이뤄지면 사용자 프로필 및 환경 설정을 로드해 오는 등의 단계적인 절차를 수행합니다. 또한, 화면 보호기가 작동 시 PC를 잠그는 일도 이 프로세스가 담당하는 역할입니다. winlogon.exe 실행 파일은 C:\WINDOWS\system32 안에 있는 것이 정상이며, 이 외의 경로에 있다면 멀웨어일 가능성이 아주 높습니다.
▲ winlogon.exe 프로세스 정보
(2) winlogon.exe와 보안 대부분의 경우 부팅 시 winlogon.exe의 메모리 사용량과 CPU 사용량이 높은 경우가 일반적입니다. 하지만 그것이 마쳐지고 시스템이 대기상태로 접어들면 안정화 되는 것이 정상이지만, 멀웨어에 감염되었거나 하이재킹을 당한 경우에는 CPU 또는 메모리 사용량이 급격하게 높아집니다. winlogon.exe를 타켓으로 하거나 가장하는 멀웨어는 웜과 트로얀 계열이 중심을 이루고 있으며, C:\WINDOWS\system32 가 아닌 다른 경로에 가짜 winlogon.exe 파일을 만들어서 각종 프로세스를 중지시키거나 개인정보를 외부로 탈취해 갑니다. 특히, 이메일을 통하여 전파되는 일부 멀웨어는 시스템에 임의의 메시지, 그림, 사이트 등을 출력하기도 합니다.
|
이 블로그의 모든 글 및 리뷰에 대한 저작권은 여름하늘에게 있습니다.
출처를 밝힌 여부와 상관 없이 글, 또는 리뷰의 내용을 다른 사이트에 올리는 것을 금합니다. 좋은 글이라 여겨지면 링크나 트랙백을 이용해 주세요.
참고 : 저작권 위반에 대한 법적 대응
Copyrights 2008 무단 전재/스크랩 금지.
csrss.exe,
lsass.exe,
malware,
process,
services.exe,
smss.exe,
svchost.exe,
userinit.exe,
virus,
windows xp,
winlogon.exe,
멀웨어,
바이러스,
보안,
윈도 |
|
|
|
|
|
|
|
|
|
  |
|
|