* 핸들 : 커널 객체의 열린 인스턴스에 대한 참조 ( 파일, 레지스트리 키, 뮤텍스, 프로세스 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 |