본문 바로가기

메모리포렌식

프로세스 핸들

* 핸들 : 커널 객체의 열린 인스턴스에 대한 참조 ( 파일, 레지스트리 키, 뮤텍스, 프로세스 or 쓰레드 )

 

* 객체의 핸들을 여는 API : CreateFile, RegOpenKeyEx, CreateMutex, ...

 - 객체에 대한 핸들 카운트 값을 증가시킴

 

* System ( PID4 ) : 커널 API ( NtCreateFile, NtReadFile, NtCreateMutex, ... )로 핸들을 얻고자 할 경우 System 프로세스의 핸들 테이블로 부터 할당된다.

 - System 프로세스의 핸들을 덤프하면, 커널 모듈로 요청된 현재 열린 모든 자원들을 관찰 가능

 

* ObReferenceObjectByPointer : 객체에 대한 주소를 알면 이 함수로 핸들을 얻을 수 있으며, 이는 참조 카운트를 증가시키기에 OS는 참조하는 동안 객체를 삭제하지 않음.

 

 

 

'메모리포렌식' 카테고리의 다른 글

_LDR_DATA_TABLE_ENTRY  (0) 2022.01.14
_PEB_LDR_DATA  (0) 2022.01.14
PEB, Process Environment Block  (0) 2022.01.14
window 흔히 사용되는 권한  (0) 2022.01.08
윈도우 실행부 객체 Window Executive Object  (0) 2022.01.01