본문 바로가기

PID2

[윈도우] 숨겨진 프로세스를 찾는 방법들 1. EPROCESS의 ActiveProcessLinks Linked List를 이용해서 Traverse. ( 왠만한 루트킷들은 이 값을 조작하므로 별로 소용없을지도 모르지만, ZwQuerySystemInformation()을 후킹하여 결과값을 조작하는 식으로 숨기는 경우는 이 방법으로 손쉽게 찾아낼 수 있습니다. ) 2. ZwOpenProcess() Brute-Force Detection 유효 PID인 0L부터 0xFFFFL까지 4의 배수들을 모두 Open해서 성공적으로 열어지는 프로세스를 감지합니다. 단, 프로세스가 종료되었으나 핸들이 닫히지 않은 경우에도 Open되므로 추가적인 확인이 필요합니다. 3. PspCidTable Traverse Windows NT에는 PspCidTable이라는 Unexp.. 2010. 1. 6.
실행중인 프로세스 디버깅 덤프 및 강제종료 간혹, 실행 중인 프로세스의 덤프 파일을 생성해야하는 경우가 있습니다. 보통, 비정상적으로 동작하는 프로그램이 있는데, 이를 디버깅 환경이 갖추어진 다른 시스템에서 버그를 찾아보려고 할 경우, 그 프로세스의 덤프 파일을 생성한 뒤 이를 디버깅 시스템으로 가져가기 위해 사용하곤 합니다. 실행 중인 프로세스의 덤프 파일을 생성하는 방법으로는 userdump 나 ADPlus 를 이용하는 방법 등 다양하게 있겠지만 NTSD (NT Symbolic Debugger) 를 이용하는 방법도 있습니다. NTSD의 장점으로는 우선 XP를 비롯한 여러 윈도우에 기본으로 설치가 되어 있다는 점을 들 수 있습니다. 물론, 최신 버전을 설치한다면 추가된 기능들을 사용하는 것도 가능하겠지요. 또한 단순히 덤프 파일만 생성하는 기능.. 2009. 9. 4.