윈도우 레지스트리(Windows Registry)
마이크로소프트 윈도우 운영체제에서 운영체제와 응용프로그램 운영에 필요한 정보를 저장하기 위해 고안한
계층형 데이터베이스
필요성
윈도우 시스템 분석의 필수 요소
• 운영체제 정보, 사용자 계정 정보, 시스템 정보, 응용프로그램 실행 흔적, 최근 접근 문서 등
• 자동 실행 항목(Autoruns) 분석, 악성코드 탐지
• 저장매체 사용 흔적 분석(하드디스크, CD-ROM, USB 등)
사용자/시스템/저장매체 사용 흔적 분석 → 추가적인 포렌식 분석 대상 선별
포렌식 관점
온라인 레지스트리 분석
활성시스템에서의 레지스트리 분석
RegEdit(regedit.exe), RegEdt32(regedt32.exe)를 통해 확안 가능
오프라인 레지스트리 분석
비활성시스템(포렌식 복제 드라이브나 이미지)에서의 레지스트리 분석
레지스트리 하이브(Hive) 파일의 수집이 필요
운영체제 버전별 하이브 파일의 정확한 위치를 사전에 숙지
포렌식 분석은 대부분 오프라인 레지스트리 분석을 대상으로 함
하이브 파일이란?
레지스트리 정보를 저장하고 있는 물리적인 파일
키 값들이 논리적인 구조로 저장
활성시스템의 커널에서 하이브 파일을 관리 (일반적인 방법으로는 접근불가)
하이브 셋(Hive set)
활성 시스템의 레지스트리를 구성하는 하이브 파일 목록
SAM, SECURITY, SYSTEM, SOFTWARE, Default, NTUSER.DAT, Usrclass.dat 등
FTK imager에서 레지스트리를 추출
레지스트리 데이터 형식
레지스트리 루트 키
루트종류 와 하위 정보 및 경로
HKEY_CLASSES_ROOT
파일 연관성과 COM(Component Object Model) 객체 등록 정보
HKEY_CURRENT_USER
현재 시스템에 로그인된 사용자의 사용자 프로파일 정보
HKEY_LOCAL_MACHINE
시스템의 하드웨어, 소프트웨어 설정 및 다양한 환경 정보
하위 키 |
하이브 파일 위치 |
BCD000000000 |
부트 구성 데이터베이스 정보 (Boot.ini 대체) |
%SystemRoot%\System32\config\BCD-Template |
|
COMPONENT |
컴포넌트 기반 서비스 스택과 관련된 정보 |
%SystemRoot%\System32\config\COMPONENTS |
|
HARDWARE |
시스템 하드웨어 디스크립션과 모든 하드웨어 장치의 드라이버 매핑정보 |
Volatile hive |
|
SAM |
로컬 계정 정보와 그룹정보(시스템 계정에만 접근 가능) |
%SystemRoot%\System32\config\SAM | |
SECURITY | 시스템 보안 정책과 권한 할당 정보(시스템 계정만 접근가능) |
%SystemRoot%\System32\config\SECURITY | |
SOFTWARE | 시스템 부팅에 필요없는 시스템 전역 구성정보 (소프트웨어 정보) |
%SystemRoot%\System32\config\SOFTWARE | |
SYSTEM | 시스템 부팅에 필요한 시스템 전역 구성 정보 |
%SystemRoot%\System32\config\SYSTEM |
부팅시 HKLM\SYSTEM 하이브는 물리 메모리로 로드 되기 때문에 하이브 파일 크기에 제한.
HKEY_USERS
시스템의 모든 사용자와 그룹에 관한 프로파일 정보
모든 사용자의 프로파일과 사용자 클래스 등록 정보 (사용자 별로 나누어져 있다.)
HKEY_CURRENT_CONFIG
시스템이 시작할 때 사용되는 하드웨어 프로파일 정보
HKEY_PERFORMANCE_DATA
성능 정보를 저장
'Kitri_NCS3기 보안과정 > 디지털포렌식' 카테고리의 다른 글
Ext File System -2- (Super Block) (0) | 2017.07.05 |
---|---|
Ext File System -1- (0) | 2017.07.04 |
170621 NTFS - MFT Entry 속성의 종류별 분석 (0) | 2017.06.21 |
170620 NTFS의 구조 (0) | 2017.06.20 |
170619 배치파일로 데이터 수집하기 (0) | 2017.06.19 |