본문 바로가기

4-1. 2025-1 심화 스터디/디지털 포렌식

[2025.04.05] 포렌시크_4주차_활동

섹션4 ~ 섹션4 ( Window Registry 실습(2) )

 

 

 

 

01 Windows Artifacts

 

 

<Windows Artifacts란,>

• Windows가 가지고 있는 특유의 기능들과 그 기능을 구현하는데 필요한 요소
Windows의 사용자가 수행하는 활동에 대한 정보를 보유하고 있는 개체

• 생성증거: 프로세스, 시스템에서 자동으로 생성한 데이터
보관증거: 사람이 기록하여 작성한 데이터

ex) 레지스트리, 휴지통...

 

 

 

 

 

<Windows Artifacts 종류 예시>

• 레지스트리
• $MFT, $Logfile, $UsnJrnl
• LNK
• JumpList
• Recycle Bin (휴지통이 가장 쉽게 접함)
• Prefetch & Cache(s)
• Timeline
• VSS
• 웹브라우저 아티팩트
• EventLogs

 

 

 

 

 

<Windows Artifacts를 공부할 때 가장 중요한 점!!!>

1. 사용자의 행위에 따라 어디에 어떤 정보가 저장될까?
2. 컴퓨터는 대체 어떻게 동작하는 걸까?

→ 사용자는 컴퓨터로 무슨 일을 했을까?

 

//강의에서 이런 절차를 강조

 

 

 

 

 

 

 

 

02 Registry

 

 

 

<Registry란,>

• 윈도우 운영체제와 응용 프로그램 운영에 필요한 정보를 담고 있는 계층형 데이터베이스
     • 운영체제 및 응용 프로그램의 설정 정보, 서비스의 중요 데이터 등 기록
     • 부팅 과정부터 로그인, 서비스 실행, 응용프로그램 실행, 사용자 행위 등 모든 활동에 관여

• 윈도우 시스템의 모든 정보가 담겨 있음
     • 윈도우 시스템 분석의 필수 요소

 

 

 

 

 

< Registry 종류 예시>

 

• 시스템 표준 시간(TimeZone)
• 시스템 정보(Systeminfo)
• 사용자 계정 정보
• 환경 변수 정보
• 자동 실행 프로그램
• 응용프로그램 실행 흔적(UserAssist, OpenSavePidIMRU, LastVisitedPidIMRU)
• USB 연결 흔적
• 접근한 폴더 정보(Shellbag)

 

 

 

 

 

<• 레지스트리 조회>
     • regedit(레지스트리 편집기) 이용

• 레지스트리 조회 및 편집 가능

 

 

 

 

 

<레지스트리 구조>

- Root Key
- Key
- Value

- Type

- Data

 

 

 

[루트키]

HKEY_CLASSES_ROOT(HKCR): 파일 확장자 연결 정보, COM 객체 등록 정보
HKEY_CURRENT_USER(HKCU): 현재 시스템에 로그인된 사용자의 프로파일 정보               //많이 사용
HKEY_LOCAL_MACHINE(HKLM): 시스템의 하드웨어, 소프트웨어 설정 및 기타 환경 정보           //많이 사용
HKEY_USERS(HKU): 시스템의 모든 사용자와 그룹에 관한 프로파일 정보
HKEY_CURRENT_CONFIG(HKCC): 시스템이 시작할 때 사용되는 하드웨어 프로파일 정보

 

 

 

 

 

<Registry - Timezone>


• 경로: HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
     • Bias를 통해 현재 컴퓨터의 timezone을 알 수 있음.
     • 현재 컴퓨터의 설정은 UTC+9

 

 

 

• 경로: HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion
     • 현재 윈도우 버전, 설치 시간, ProductId 등 시스템과 관련된 정보들

 

 

 

• 경로
      • 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 - Autoruns>

• 시작 프로그램(Autoruns) 확인

 

 

 

 

 

<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

 

 

 

• 사용자의 최종 로그인 시간을 Dcode로 확인
     • 0x01d842365f0dff92 = 2022-03-28 08:57:09.7849746 +09:00

 

 

 

 

 

<Registry - Environment Variables>

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

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

 

 

 

• 경로
     • 시스템 환경변수
     • 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: 바로가기 실행 기록

 

 

 

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

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

 

 

 

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

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

 

 

 

 

 

<Registry - 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

 

 

 

 

 

<Registry - Shellbags>

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

• BagMRU: 폴더의 구조를 계층적 구조로 나타냄
     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

 

 

 

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

 

 

 

 

 

 

 

 

03 Registry Practice (실습)

 

• 레지스트리 파일 추출

• FTK Imager 이용
     • [root]\Windows\Users\{USERNAME}\NTUSER.DAT
      • [root]\Windows\System32\config\DEFAULT
      • [root]\Windows\System32\config\SAM
      • [root]\Windows\System32\config\SECURITY
      • [root]\Windows\System32\config\SOFTWARE
      • [root]\Windows\System32\config\SYSTEM
      • 반드시 LOG1,LOG2 파일을 포함해서 추출!!

 

 

 

<• 분석 도구 다운로드>

• REGA: 쉽지만 정확하지 X (log 1, 2 수집 X) / 심층 분석 전에 사용 
• RLA: Dirty한 Raw를 clean으로 만든다 / -d {raw 경로} -out {clean 경로}
• Regripper: clean에서 result로 만든다