본문 바로가기
유용한 팁들

ProcessExplorer 활용 예제

by 글벌레 2009. 11. 28.
반응형

이 글은 프로세스 익스플로러를 활용하는 예제로 구성된 글이다.

관련 글 : :

2009/10/17 - [프로그램 리뷰] - ProcessExplorer

위 관련 글에 소개된 프로세스 익스플로러란 툴의 활용 범위는 무궁무진하다.
오늘은 관련 예제로 두 개의 예를 보기로 한다.

 네트워크 연결 복구 실행 후 복구 불가 메시지 창이 없어지지 않을 때   

가끔가다가 인터넷 연결이 불가하다는 메시지를 보게 될 때가 있을 것이다. 아래 그림처럼


물론 이런 상태일 때 가장 좋은 방법은 그냥 시스템을 재부팅하는 것이다.
그러나 가끔은 위 그림에서 빨간 박스 친 부분에 마우스 커서 얹고 마우스 오른쪽 버튼 누르면 뜨는 메뉴에서


복구를 해 봤는데 복구가 안 되고 ㅠ ㅜ
                   [그림1]


위와 같이 여전히 ip 주소를 obtained 못했단 메시지가 뜰 수도 있을 것이다  .
(이 때 ip를 할당받는 방법은 별론(別論)으로 하자. 가장 쉬운 방법은 받을 때까지 재부팅이다.)

그런데 이 메시지 창이 떴을 때 ,
이 창을 끄려고 보니 ,


작업 표시줄에 로컬 영역 연결 복구란 것이 없다 ㅠ ㅜ
(그림판은 이 장면을 캡쳐후 붙여넣을려고 실행된 상태다.)
사실, 난감할 필요는 없다. 시스템 재부팅하면 끝이다.
아! 참! 조오기 창에 보이는 "취소"눌러서는 이 창은 안 없어진다.
혹 누군가는 취소 누르면 되지! 할까 봐 ^ ^* 밝혀 놓는다.

재부팅하면 끝이라고 했지만,
그러나 공부(?)를 조금하기 위하여 프로세스 익스플로러를 실행시킨다.

그런데 이것은 시작 표시줄에 없는 것으로만 보아도 프로세스 수준은 아니고
explorer.exe에서 하위 라이브러리로 생성되는 창이란 것을 알 수 있다.

그러므로 프로세스 익스플로러에서 explorer.exe를 더블 클릭한다.


그럼 위 그림과 같이 properties 창이 뜨는데, 이 창에서 Threads 탭으로 이동해
녹색 박스 친 부분의 숫자 변화를 잘 관찰한다.
이걸 쉽게 CPU 사용량이라 생각하자 (실제로 두번째 컬럼은 CPU 사용량이다).

나도 차분히 관찰을 한 결과
netshell.dll의 수치 변화가 가장 큼이 보인다.

만약 수치 변화가 별로 없다면 감으로 때려잡아야 한다.

아무거나 막 죽여도 시스템 재부팅하면 별 문제없다......
그러나 라이브러리들의 역활을 파악하려면
라이브러리의 작동들을 다 외우지 못하는 한 이렇게
지식을 넓히고 감을 잡아가야 한다.

이제 netshell.dll을 선택하고,

간단 명료하게 죽여 본다.

그러면 이제 [그림1]에 보여준 창이 사라졌음을 알게 될 것이다 .

 파일 또는 폴더 찾기 창에 과부하가 걸려서 응답 없는 상태가 지속될 때  


파일 또는 폴더 찾기를 하는데, 찾아지는 파일이 순간적으로 너무 많을 때
파일 또는 폴더 찾기 창이 응답 없음이 되는 수가 있다.
이때는 사실 그냥 내 기다리면 지가 지절로 언제인가 running으로 되돌아 온다.

그러나 굳이 그 상태를 유지하면서 기다릴 필요가 없는 검색이었다면


이번에도 explorer.exe를 클릭후 위 그림처럼 SHDOCVW.dll을 죽여 버리면 된다.

그러면 검색 창은 사라진다.

   참고    


1 . 예를 들어 어떤 창이 프로세스인지 라이브러리 수준에서 실행되는 것인지의 판단은
     프로세스 익스플로러와 작업 관리자에 의존해서 판단해 가는 경험을 쌓아 가야 할 것이다.

2 . 꼭 프로세스 익스플로러의 속성 창에서 threads 까지 안 들여다봐도
     라이브러리를 알 수 있는 경우도 많다.

     예를 들어서 아래 관련 글을 읽어 보면 그냥 프로세스 익스플로러의 Lower Pan만 보고도
     특정 작업을 하는 라이브러리를 찾아내는 모습을 볼 수 있다.

    관련 글 : : 2009/07/23 - [유용한 팁들] - 시스템 트레이 또는 시스템 트레이 아이콘들이 사라진 경우

3 . 이 방법은 라이브러리 수준에서 주입(injection)된 악성코드를 찾는데 유용하다!

4 . explorer.exe에서만 이런 과정이 가능한 것은 아니다.
      모든 프로세스는 threads를 가진다

반응형

댓글