Hoin's security

디지털 포렌식 - Windows Registry 동작 원리 본문

스터디

디지털 포렌식 - Windows Registry 동작 원리

Hoin.s 2024. 5. 1. 12:28

본 스터디는 인프런 강의를 학습 후 작성되었습니다.

https://www.inflearn.com/course/lecture?courseSlug=%EA%B8%B0%EC%B4%88-%EB%94%94%EC%A7%80%ED%84%B8-%ED%8F%AC%EB%A0%8C%EC%8B%9D&unitId=105986

 

학습 페이지

 

www.inflearn.com

Registry - Timezone

경로 : HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

- Bias를 통해 현재 컴퓨터의 timezone을 알 수 있음.

- 현재 설정은UTC+9

 

시스템 정보

-> Current 버전 경로로 가면 알 수 있음.

경로

• 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

 


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 (관리자 계정)

 악성코드 중에서 계정을 하나 더 만들고 그 계정을 관리자 권한으로 만들어서 몰래 접근하는게 있음. 그래서 사용자 계정 정보를 추출하는게 중요함.

사용자의 최종 로그인 시간


• LocalProfileLoadTimeHigh
= 0x01d84236
• LocalProfileLoadTimeLow
= 0x5f0dff92
• → 0x01d842365f0dff92

 

사용자의 최종 로그인 시간을 Dcode로 확인

https://www.digital-detective.net/dcode/

 

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

위 링크로 가서 다운로드를 진행해준다.

0x01d842365f0dff92 = 2022-03-28 08:57:09.7849746 +09:00

위에서 확인한 레지스트리 값을 넣어서 확인해준다.

파일 Time에 데이터가 나옴.


Environment Variables

시스템/사용자 환경변수 확인

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

요 SID는 앞서 찾은 값(User Account에서 알아낸 거)을 입력해준다.

 

경로
• 시스템 환경변수 (우리가 아는 윈도우 내 시스템 환경변수랑 같음.)
• HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

시스템 환경변수는 사용자 관련 없이 동일하기 때문에 경로가 똑같음.


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: 바로가기 실행 기록

 

OpenSavePidIMRU: 열기 혹은 저장 기능으로 사용된 파일
• 경로: HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU

확장자별로 나열되어있음.

로그파일들도 확인 가능.(파일을 어떤 프로그램으로 열었는가.)

 

• LastVisitedPidIMRU: 열기 혹은 저장 기능을 사용한 응용 프로그램
• 경로: HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedPidlMRU


USB Connection

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

 

경로
• 모든 USB: HKLM\SYSTEM\ControlSet001\Enum\USB
• USB 저장장치: HKLM\SYSTEM\ControlSet001\Enum\USB\USBSTOR
• 마운트 디바이스: HKLM\SYSTEM\MountedDevices

-> 연결된 마우스, 키보드 등 모든 USB 장치의 의 정보가 기록됨.

• 경로: HKLM\SYSTEM\ControlSet001\Enum\USB
• VID와 PID를 검색하면, USB 종류를 알 수 있음

아래 서브키들은 레지스트리 편집기로 안보임..(접근이 안됨.)

 

• 시스템에 마운트되었던 장치의 리스트를 나타냄
• 경로: HKLM\SYSTEM\MountedDevices

드라이브 볼륨, 시그니처와 같은 정보들 확인 가능.


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

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

폴더 이름

삭제 되더라고 Sgellbag에는 정보가 안사라짐.

이것도 도구가 있음.

'스터디' 카테고리의 다른 글

디지털 포렌식 - Windows Registry 실습  (2) 2024.05.01