본문 바로가기

SWLUG/디지털 포렌식

[디지털포렌식] 4(1). Windows registry 이론

 

[지금 무료] 기초부터 따라하는 디지털포렌식 | 훈지손 - 인프런

훈지손 | 기초부터 따라하는 디지털포렌식 강의입니다. 강의를 따라하다보면 "물 흐르듯, 자연스럽게" 실력이 늘어가는 강의를 추구합니다., 초보자 눈높이에 딱 맞춘, 원리를 이해하는 디지털

www.inflearn.com

해당 영상 참고하여 작성한 글입니다.

 

 

 

Windows registry 동작 원리 (1)

 

Registry - Timezone

 

HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

 

해당 경로의 레지스트리로 이동

Bias를 통해 현재 컴퓨터의 timezone을 알 수 있음 -> 시스템 표준 시간을 의미

 

값 해석은 크게 중요하지는 않지만.. 그래도 알아보자면

UTC라고 시스템 표준시간이 있는데 한국 기준으로 UTC보다 9시간 빠름을 알 수 있음

= 즉, UTC + 9

 

 

Registry - Systeminfo

 

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion

 

해당 경로의 레지스트리로 이동

 

 

 

쉘에서 systeminfo를 입력한 것과 같은 정보를 보여줌

 

 

 

몇 개의 정보를 추가적으로 알아보도록 하자

 

 

unix timestamp에 대해 더 알아보도록 하자

인터넷에 접속하여 dcode download를 검색

 

DCode™ – Timestamp Decoder - Digital Detective

DCode™ is a FREE forensic tool for decoding data found during digital forensic examinations into human-readable timestamps.

www.digital-detective.net

 

 

설치가 다 끝났다면 install time 값을 더블 클릭하여 값을 가져온다

 

아래와 같은 결과를 확인할 수 있다

 

 

다음으로는 install date를 확인해보도록 하자

 

 

unix timestamp를 검색한다. 아래의 사이트에 접속한다.

 

Epoch Converter

Convert Unix Timestamps (and many other date formats) to regular dates.

www.epochconverter.com

(유닉스 timestamp를 현재 시각으로 변환시켜줌)

 

 

이번에는 install date의 값을 10진수로 가져온다.

가져온 값과 위의 값을 비교하면 같은 것을 확인해볼 수 있다.

 

 

 

 

Registry - Autoruns

 

HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx

 

위의 경로의 레지스트리로 이동

자동실행 프로그램을 레지스트리를 통해 알 수 있다.

 

 

설정 > 앱 > 시작프로그램 (위의 결과를 그대로 확인 가능)

 

 

• HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

레지스트리 삭제되지 않음  
• HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce

• HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx

한 번 실행이 되면 레지스트리는 삭제됨
• HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
• HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
• HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx

 

 

 

Registry - User Account

 

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\

 

위의 경로의 레지스터로 이동

 

 

• S-1-5-18 : systemprofile
• S-1-5-19 : LocalService
• S-1-5-20 : NetworkService
• S-1-5-21 : 사용자가 만든 계정

   - > 1000 이상은 user 권한
   - > 500은 administrator

 

 

 

high + low 를 Dcode로 확인하면 사용자의 최종 로그인 시간을 확인할 수 있음

 

 

 

 

Registry - Environment Variables

사용자 환경변수 : HKU\{SID}\Environment

 

환경변수는 레지스트리에 남기 때문에 시스템/사용자 환경변수 확인 가능

SID 는 HKEY_USERS에서 확인 가능함

 

 

 

시스템 환경변수 : HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

 

이와 같은 값들을 레지스터에서 확인 가능한 것

 

 

 

Registry - Executable

 

응용프로그램(exe) 실행에 따른 흔적을 레지스터에서 확인 가능

 

UserAssist: 최근에 실행한 프로그램 목록, 마지막 실행 시간, 실행 횟수
OpenSavePidIMRU: 열기 혹은 저장 기능으로 사용된 파일
LastVisitedPidIMRU: 열기 혹은 저장 기능을 사용한 응용 프로그램

 

 

 

UserAssist: 최근에 실행한 프로그램 목록, 마지막 실행 시간, 실행 횟수

• 경로: HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist
• 실행파일 실행 기록 : {CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}\Count
• 바로가기 실행 기록 : {F4E57C4B-2036-45F0-A9AB-443BCFE33D9F}\Count

 

 

 

해당 사이트에서 이름값의 디코딩 값을 확인할 수 있다.

 

rot13.com

rot13.com Please enable JavaScript to use this page. ↓ ROT1 ROT2 ROT3 ROT4 ROT5 ROT6 ROT7 ROT8 ROT9 ROT10 ROT11 ROT12 ROT13 ROT14 ROT15 ROT16 ROT17 ROT18 ROT19 ROT20 ROT21 ROT22 ROT23 ROT24 ROT25 ↓

rot13.com

문서작업을 했나보다...

 

 

 

OpenSavePidIMRU: 열기 혹은 저장 기능으로 사용된 파일

확장자별로 나열된 파일 목록 확인 가능


• 경로: HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU

 

 

 

LastVisitedPidIMRU: 열기 혹은 저장 기능을 사용한 응용 프로그램

• 경로: HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedPidlMRU

 

 


 

Windows registry 동작 원리 (2)

 

Registry - USB Connection

 

USB 등 외부 저장매체 연결 흔적을 추적 가능
• USB 제품명, 시리얼 번호, 최초 연결 시각, 마지막 연결 시각

 

모든 USB

HKLM\SYSTEM\ControlSet001\Enum\USB

 

 

USB 저장장치

HKLM\SYSTEM\ControlSet001\Enum\USBSTOR

 

시스템에 연결되었던 모든 USB 저장장치의 정보가 기록됨
• VID와 PID를 검색하면, USB 종류를 알 수 있음 (제조사와 상품번호를 의미)

 

 

 마운트 디바이스

HKLM\SYSTEM\MountedDevices

 

시스템에 마운트되었던 장치의 리스트를 나타냄

 

 

Registry - Shellbags

사용자가 접근한 폴더 정보를 기록함

BagMRU: 폴더의 구조를 계층적 구조로 나타냄... 각각의 Bag과 연결하여 확인
Bag: 윈도우 사이즈, 위치 등 사용자의 환경설정을 저장

 

• HKCU\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags
• HKCU\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\BagMRU
• HKCU\Software\Microsoft\Windows\Shell\Bags
• HKCU\Software\Microsoft\Windows\Shell\BagMRU

 

 

사용자가 접근한 폴더 정보를 기록함
삭제된 폴더의 정보도 찾을 수 있음

 

 

Shellbag는 엄청 복잡하니 우선 간단하게...

 

BafMRU에서 0번 = 데스크탑

 

 

 

 

참고

 

강의자료.pdf

 

drive.google.com