Forensic/SUA - 기초부터 따라하는 디지털 포렌식

Windows Registry

Ron Weasley 2022. 5. 14. 15:20

레지스트리를 배우기 전에 먼저, 윈도우 아티팩트(Windows Artifacts)에 대해서 배워보겠습니다.

 

윈도우 아티팩트란?

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

 

여기서 아티팩트라는 단어를 잘 모르실 수 있기 때문에 설명을 좀 드리자면, 영어 단어로 인공물이라고 불리지만 컴퓨터에서 아티팩트란 사용자가 시스템을 사용했을 때 생성이 되는 "흔적" 이라고 생각 하시면 됩니다.

 

간단하게, 사용자가 크롬 브라우저를 클릭했을 때를 떠올려 봅시다.

그럼 크롬 브라우저가 실행이 되고, 검색창에 네이버를 입력하게 되면, 네이버 사이트를 보여주잖아요? 그럼 우리가 크롬 브라우저를 통해서 어떤 사이트를 이용했는지, 또 어떤 파일을 다운 받았는지 등을 알 수 있게 로그가 생기는데 이 부분이 아티팩트가 남는다! 라고 이해를 하시면 될 거 같습니다. 예로 다음 경로에 브라우저 이용 내역이 남습니다.

"C:\Users\<user name>\AppData\Local\Google\Chrome\User Data\Default\History"

 

주로 아티팩트에는 생성증거와 보관증거로 나뉘는데, 생성증거는 우리가 사용하고자 하는 프로그램을 실행을 하게 되면 프로세스에 적재 되는데, 이때 프로세스 및 시스템에서 자동으로 생성한 데이터를 말하는것이고, 보관증거는 사용자가 기록을 하게 된 데이터라고 설명을 할 수 있습니다.

 

레지스트리란?

Windows 운영체제와 응용 프로그램 운영에 필요한 정보를 담고 있는 "계층형 데이터베이스" 입니다.

 

그런데, 왜 레지스트리를 포렌식 관점에서 중요시 하는지 모르는 사람들을 위해 간략하게 설명을 드리자면, 레지스트리는 사용자의 프로필, 설치된 응용 프로그램 정보, 프로그램 실행 흔적, 무선 네트워크, USB 연결 흔적이 남아 중요한 증거로 사용을 할 수 있기 때문입니다.

 

쉽게 말해, 사용자가 컴퓨터를 켜서 USB를 연결을 하든, 응용 프로그램을 실행 하든, 다 레지스트리에 데이터 로그가 적재된다 생각하시면 됩니다.

 

레지스트리 실행(Windows + R 을 누른 후 regedit)

레지스트리를 보기 위해서는 Windows 키와 R키를 동시에 눌러, regedit을 입력하면 됩니다.

레지스트리 구조

레지스트리는 크게 Root Key, Key가 있고, Key안에 데이터를 살펴보면 Value, Type, Data가 있습니다.

먼저, Root Key를 살펴보겠습니다.

Root Key는 Hive Key라고도 하며, 약어로 HKEY라고 합니다. 루트키의 주요 파일은 다음과 같습니다.

Root Key

포렌식 관점에서 주로 봐야 하는 루트키를 뽑자면, HKCU, HKLM입니다.

HKCU파일
HKLM 파일

포렌식 관점에서 왜 HKCU, HKLM 루트키를 많이 봐야 되는지 알겠나요?? 이제 간단한 실습을 해보겠습니다.

 

Registry - Timezone

File Path : HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

해당 경로로 가시면, Bias를 통해 현재 컴퓨터의 Timezone을 알 수 있습니다.

Timezone은 보통 컴퓨터가 미국 시간에 맞춰 UTC + 0에 설정되어 있는데, 한국 컴퓨터는 UTC + 9에 설정되어 있음을 알려주는 값이라고 생각 하시면 됩니다.

 

Registry - Systeminfo

File Path : HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion

해당 경로로 가시면, 현재 윈도우 버전, 설치 시간, ProductID 등 시스템과 관련된 정보들을 얻을 수 있습니다.

Registry - Autoruns

File Path

 - 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

 

Autoruns는 컴퓨터를 실행 했을 때, 바로 같이 실행되는 시작 프로그램을 말합니다.

제 컴퓨터는 카카오톡, 디스코드 등 컴퓨터를 부팅하자 마자 켜지는 프로그램들이 있네욥...

 

Registry - User Account

File Path : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\{SID}

User Account는 사용자의 계정 및 권한을 알 수 있으며, 사용자의 최종 로그인 시간까지 알 수 있습니다.

S - 1 - 5 - 18 : SystemProfile

S - 1 - 5 - 19 : LocalService

S - 1 - 5 - 20 : NetworkService

S - 1 - 5 - 21 ..... 1001 : 사용자가 만든 계정

마지막에 붙는 1001은, User 권한을 의미하며, 1000번대는 User 권한을 가진 사용자, 500번대는 Administartor입니다.

이 영역은 사용자의 최종 로그인 시간을 알 수 있습니다.

Dcode 프로그램을 통해서 한번 시간을 알아보겠습니다.

2022-05-14월 11시 ----으로 되어있는 것을 볼 수 있습니다.

 

Registry - Executable

Executable은 응용프로그램 실행에 따른 흔적을 볼 수 있는 레지스트리 경로입니다.

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

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

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

 

먼저, UserAssist를 보겠습니다.

File Path : HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist

두 폴더를 가르키고 있는데, 폴더는 각각 다음과 같은 의미를 가집니다.

{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}\Count: 실행파일 실행 기록

{F4E57C4B-2036-45F0-A9AB-443BCFE33D9F}\Count: 바로가기 실행 기록

 

다음은, OpenSavePidIMRU를 보겠습니다.

File Path : HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU

이렇게, 동일한 폴더를 찾을 수 있었으며, 해당 폴더 안에는 Windows.iso가 존재했습니다.

다음은, LastVisitedPidIMRU를 보겠습니다.

File Path : HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedPidlMRU

 

USB 연결흔적을 배워보겠습니다.

경로는 다음과 같습니다.

- HKLM\SYSTEM\ControlSet001\Enum\USB : 시스템에 연결되었던 모든 USB 장치의 정보가 기록됨

- HKLM\SYSTEM\ControlSet001\Enum\USBSTOR : 시스템에 연결되었던 모든 USB 저장장치의 정보가 기록됨

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

- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Portable Devices\Devices : 

컴퓨터가 연결된 미디어 및 저장 장치

 

저 위에 경로에서 USB 연결 흔적들을 찾을 수 있습니다. 가볍게 하나만 보겠습니다.

컴퓨터를 오래 사용하다보니...좀 많네요 ㅎㅎ

아무튼, VID와 PID가 보일텐데, 검색을 하게 되시면 USB 종류를 알 수 있습니다.

 

<2022년 10월 31일 수정>위 레지스트리 경로에 대한 부분은 SUA활동 당시에 작성을 해뒀던 것이였는데, 지금 포렌식 대회를 자주 나가게 되면서 레지스트리를 분석하는 경우가 많아 경로를 편하게 추가적으로 많은 양의 레지스트리 경로를 적어보겠습니다.

 

1. 시스템 정보

-HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion

-CMD에서 systeminfo명령을 사용한 정보

-OS설치 날짜/시각, OS Version, 컴퓨터이름, 조직이름, 운영체제 설치루트폴더 등

 

2. 설치된 프로그램 목록

-HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/Uninstall

-설치된 프로그램이름,버전,게시자,설치시각,설치 위치 등 저장

 

3. 컴퓨터이름

-HKLM/SYSTEM/ControlSet00X/Control/ComputerName/ActiveComputerName

 

4. SID정보 -HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/ProfileList[SID]

 

5. 사용자 기본 폴더 -HKCU/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/Shell Folders

 

6. 마지막 로그인한 사용자 정보 -HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon

 

7. 시스템 마지막 종료시간 -HKLM/SYSTEM/ControlSet00X/Control/Windows

 

8. 표준 시간대 -HKLM/SYSTEM/ControlSet00X/Control/TimeZoneInformation

 

9. 응용 프로그램 사용 흔적(

-HKCU/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/UserAssist

-CE ~ : 실행시킨 응용프로그램 정보

-F4 ~ : 실행시킨 응용프로그램 정보(시작메뉴에 저장)

 

10. 그림판에서 열어본 목록

-HKCU/SOFTWARE/Microsoft/Windows/Applets/Paint/Recent File List

-File# : 숫자가 낮을수록 최근 열어본 파일

 

11. 워드패드에서 열어본 목록

-HKCU/SOFTWARE/Microsoft/Windows/Applets/Wordpad/Recent File List

-File# : 숫자가 낮을수록 최근 열어본파일

 

12. MS OFFICE 사용흔적

-HKCU/SOFTWARE/Microsoft/Office/Version/APP/File MRU

 

13. 한글 사용흔적

-HKCU/SOFTWARE/HNC/Hwp/Version/HwpFrame_ KOR/RecentFile

 

14. 곰플레이어 사용흔적

-HKCU/SOFTWARE/GRETECH/GomPlayer/OPTION

-마지막 열은 폴더 ,파일 등 정보 확인가능

 

15. Adobe 사용흔적

-HKCU/SOFTWARE/Adove/Acrobat Reader/DC/AVGeneral/CrecentFiles/

 

16. 검색기 이용 검색어 목록

-HKCU/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/WordWheelQuery

 

17. 최근 열어본 파일 흔적

-HKCU/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/RecentDocs

 

18. 최근 실행창 검색 흔적

-HKCU/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/RunMRU

 

19. 저장매체 연결 흔적

-HKLM/SYSTEM/ControlSet00X/Enum/USBSTOR/[DID]

-C:/Windows/INF/setupapi.dev.log에도 저장

-HKLM/SYSTEM/CurrentControlSet/DeviceClasses/{DID} Disk& Ven [제조사명]&Prod [제품명]&Rev 0.0.0#[시리얼번호]#{GUID}

-HKLM/SYSTEM/MountedDevices

 

20. 외부시스템 연결 정보

-HKU/[SID]/SOFTWARE/Microsoft/Terminal Server Client/Default/

-mstsc를 이용해 접속하였을 경우 정보 저장

 

21. 알림 영역 아이콘

-HKCU/Software/Classes/Local Settings/Software/Microsoft/Windows/CurrentVersion/TrayNotify

 

22. 작업표시줄 고정 리스트 정보

-HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/Taskband

 

23. 사용한 프로그램의 창 제목

-HKCU/Software/Classes/Local Settings/Software/Microsoft/Windows/Shell/MuiCache

 

24. 탐색기 주소 창에 입력한 경로 리스트

-HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/TypedPaths

 

25. 최근 읽거나 저장한 파일 목록 -HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/ComDig32/OpenSavePidMRU

 

26. 최근에 접근 폴더 흔적 -HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/ComDig32/LastVisitedPidMRU

 

27. 서비스 및 드라이버 목록

-HKLM/SYSTEM/ControlSet00X/Services -driverquery 명령어로 확인 가능한 드라이버목록

 

28. 네트워크 정보

-HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/NetworkCards

-ServicesName(GUID) 확인 후 Interfaces 하위키 확인

-HKLM/SYSTEM/ControlSet00X/Services/Tcpip/Parameter/Interfaces{GUID}

 

29. 무선 랜 정보

-HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/NetworkList/Profiles{GUID}

 

30. IE 설정정보

-HKCU/SOFTWARE/Microsoft/Internet Explorer/Main

 

31. 타이핑한 URL 목록

-HKCU/SOFTWARE/Microsoft/Internet Explorer/TypedURLs

 

32. 즐겨찾기 목록

-HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/MenuOrder/Favorites/Links

 

33. 응용프로그램 호환성 캐시

-HKLM/SYSTEM/ControlSet00#/Control/Session Manager/AppCompatCache

-호환성 문제가 발생했던 응용프로그램의 정보 저장

 

34. 부팅시 자동 실행 되는 S/W 흔적

-HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogo/Shell

-HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/Run

-HKLM/SOFTWARE/Wow6432Node/Microsoft/Windows/CurrentVersion/Run

-HKCU/Software/Microsoft/Windows/CurrentVersion/Run

-C:/ProgramData/Microsoft/Windows/Start Menu/Programs/Startup

-C:/Users/J0K3R/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup

 

35. 명령프롬프트 실행 시 자동 시작되는 S/W -HKLM/SOFTWARE/Microsoft/Command Processor

 

36. 레지스트리 편집기에서 마지막으로 접근한 키에 대한 정보

-HKCU/SOFTWARE/Microsoft/Windows/CurrentVersion/Applets/Regedit

 

가볍게 이정도만 적어보겠습니다!!

'Forensic > SUA - 기초부터 따라하는 디지털 포렌식' 카테고리의 다른 글

2주차 과제 A  (0) 2022.04.03
1주차 과제  (0) 2022.04.01