본문 바로가기

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

[25. 11. 21] 포포포_5주차_활동

Windows Artifacts
- Windows가 가지고 있는 특유의 기능들과 그 기능을 구현하는데 필요한 요소
- Windows의 사용자가 수행하는 활동에 대한 정보를 보유하고 있는 개체
- 생성증거: 프로세스, 시스템에서 자동으로 생성한 데이터
- 보관증거: 사람이 기록하여 작성한 데이터

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

 

Windows Artifacts 종류 예시

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


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

 

Registry 종류 예시

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

 

Registry 조회

- 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

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


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로 만든다