Writer: 최원혁 (Sooboon)
HKLM → C: windowsSystem32config
HKU → %userprofile%ntuser.dat
→ System : 윈도우 시스템과 관련된 모든 설정 정보
EXE → HKLM → Software : 윈도우 시스템에 설치된 모든 응용프로그램 정보
→ SAM : 윈도우 시스템에 등록된 계정 정보의 접속, 접속 기록
사용자 정보 → HKU → USER_SID : 각 사용자의 설정 정보 (NTUSER.dat)
Master Key: 실제 존재하는 키 (ex, HKLM, HKU)
Derived Kry (유도키): 마스터 키에서 로드되어 메모리에 재구성되는 휘발성 키, 라이브 상태에서만 확인가능 (휘발성) (ex, HKCR, HKCU, HKCC)
Root Key: 메인 키 (ex, HKLM, HKCR 등)
Sub Key: 서브 키, 하위 키 (ex, software, SAM 등)
INDEX | KIND | |
---|---|---|
0 | REG_NONE | 종류 없음 |
1 | REG_SZ | 문자열 값 |
2 | REG_EXPAND_SZ | 확장할 수 있는 문자열 값, 환경변수 포함 가능 |
3 | REG_BINARY | 이진 값 |
4 | REG_DWORD/REG_DWORD_LITTLE_ENDIAN | DWORD 값 (32bit) 정수 (리틀엔디언) |
5 | REG_DWORD_BIG_ENDIAN | DWORD 값 (32bit) 정수 (빅엔디언) |
6 | REG_LINK | 심볼 링크 (UNICODE) |
7 | REG_MULTI_SZ | 다중 문자열 값 (고유한 문자열 배열) |
8 | REG_RESOURCE_LIST | 리소스 목록 (플러그 앤 플레이 하드웨어 열거 및 구성에 쓰임) |
9 | REG_FULL_RESOURCE_DISCRIPTOR | 리소스 서술자 (플러그 앤 플레이 하드웨어 열거 및 구성에 쓰임) |
10 | REG_RESOURCE_REQUIRMENTS_LIST | 리소스 요구 목록 (플러그 앤 플레이 하드웨어 열거 및 구성에 쓰임) |
11 | REG_QWORD/REG_QWORD_LITTLE_ENDIAN | QWORD 값(64bit 정수) |
- DEFAULT : 제어판, 키보드, 키보드 레이아웃과 같은 기본정보,
- 해당 레지스트리 키 : HKU/DEFAULT
- SAM : 로컬계정, 그룹정보
- 해당 레지스트리 키 : HKLM/SECURITY/SAM, HKLM/SAM
- SECURITY : 시스템 보안, 권한 정보
- 해당 레지스트리 키 : HKLM/SECURITY
- SOFTWARE : 시스템 부팅과 관련없는 전역 설정 정보
- 해당 레지스트리 키 : HKLM/SOFTWARE
- SYSTEM : 시스템 부팅에 필요한 전역 설정 정보
- 해당 레지스트리 키 : HKLM/SYSTEM
① TimeZone (시스템 표준시간)
Time Zone 레지스트리 키는 증거의 타임라인이 조작되었는지를 확인하는 중요한 정보이다. 이 키에는 UTC 시간을 현지 시간으로 변환하는 데 필요한 값이 포함되어 있으므로 포렌식 분석 시 시스템 시간을 확인할 수 있는 절대적인 역할을 한다.
경로: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
② Storage Devices (저장매체 연결 정보)
저장매체가 연결될 때마다 드라이버에 대한 query가 수행되고 장치의 정보가 레지스트리에 저장된다. 가장 먼저 살펴볼 key는 USBSTOR이다.
경로: HKEY_LOCAL_MACHINE\SYSTEM\ControlSet00x\Enum\USBSTOR
① Autorun Location (자동실행 목록 위치)
자동 실행목록은 윈도우가 부팅될 때 자동으로 실행되는 프로그램의 목록이다. 일반적으로 악성코드에 감염될 경우 자동 실행목록에 악성코드 실행파일이 등록되어 자동으로 실행된다. 그러므로 자동 실행목록에서 인가되지 않거나 알 수 없는 출처의 프로그램이 등록되어 있을 경우 제거해야 한다.
① MRU (최근 실행 작업)
MRU(Most Recently Used)는 사용자가 수행한 가장 최근 작업에 대한 내용을 포함하고 있으며, MRU 리스트는 크게 윈도우 “실행” 창에 입력한 RunMRU와 이와 연결된 RecentDocs(최근 실행문서)로 구분할 수 있다.
● RecentDocs (최근 실행 파일)
RecentDocs 키에는 윈도우 탐색기를 통해 최근에 실행되었거나 열린 파일 목록을 기록하고 있다. 또한 최근에 실행한 모든 네트워크 및 외부 저장매체 파일을 모두 기록하기 때문에 침해사고 분석에서 중요한 증거자료로 사용될 수 있다.
RecentDocs 하위 키는 다음을 포함하고 있다.
- 시스템에서 사용되는 모든 파일 확장자 이름을 가진 하위 키
- 가장 최근에 열었던 폴더의 하위 키
경로: Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs
Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs\.copy0
● runMRU(최근 실행 명령어)
RunMRU 레지스트리 키에는 최근 “실행"창에서 실행되었던 명령어가 저장되어있다.
RunMRU의 MRUList 값은 RecentDocs의 MRUListEx 값과는 달리 평문으로 저장되므로 일반 레지스트리 뷰어를 통해 쉽게 확인이 가능하다.
경로: Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU
② UserAssist (파일 실행 흔적)
UserAssist는 시스템에서 실행되었던 프로그램의 목록, 실행 횟수, 마지막 실행시간 등의 정보를 가지고 있다. UserAssist 키는 16진수로 표기되어있는 GUID를 나타내는 하위 키로 구성되어있으며 사용자가 실행한 특정 개체(제어판, 바로가기 파일, 프로그램 등)와 관련된 값을 저장한다.
경로: Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssit
UserAssist의 하위 키로 접근하면 실행한 프로그램의 목록이 저장되어있는데 이 값들은 모두 CISEAR 암호라고도 불리는 ROT13으로 인코딩 되어있다.
SAM(보안계정 관리자)은 사용자의 비밀번호를 저장하는 윈도우시스템에서 사용하는 데이터베이스 파일이다. 시스템 및 원격 로그인을 진행할 때 윈도우시스템은 SAM 파일을 참조하여 인가되지 않은 사용자의 접근을 제한한다.
경로: HKLM\SAM
RegRipper 레지스트리 도구를 통해 SAM 파일에 포함되어 있는 내용을 살펴보면 다음과 같다.
● 사용자 계정 정보
구분 내용 비고 Username Administrator [500] 계정명 Full Name - User Comment - Account Type Default Admin User 계정 종류 Account Created Fri Sep 22 08:30:54 2017 Z 계정 생성 시간 Password hint - 비밀번호 힌트 Last Login Date Mon Mar 12 13:36:24 2018 Z 마지막 로그인 시간 Pwd Reset Date Mon Mar 12 13:36:24 2018 Z 비밀번호 변경 시간 Pwd Fail Date Mon Mar 12 13:36:24 2018 Z 로그인 실패 시간 Login Count 11 로그인 횟수 ● 그룹 정보
구분 내용 비고 Group Name Administrator [500] 그룹명 LastWrite Fri Sep 22 08:30:54 2017 Z 마지막 변경 시간 Group Comment - Users (SID) S-1-5-21-4019899649-2132122750-2430854516-500 등록된 사용자
SAM,SOFTWARE,SYSEM,SECURITY,NTUSER.dat
= Hive set 이라고 지칭
보다 많은 레지스트리 키에 대한 정보는 AccessData에서 작성한 Registry Quick Find Chart에서 확인할 수 있다.
(https://support.accessdata.com/hc/en-us/article_attachments/201717329/Registry_Quick_Find_
Chart_9-27-10.pdf)
또한 첨부하는 Registry Forensic.PDF에 추가적인 정보(획득 방법, 분석, 키 정보) 등이 있으니 확인 바랍니다.
(Registry Forensic.PDF)