Windows Forensics

윈도우 포렌식

USB

개요

  • USB 설치 과정에서 드라이버 설치 로그파일과 레지스트리 흔적을 알 수 있는 데이터
  • 연결 시간, 해당 장치 ID, 볼륨 레이블, 드라이브 문자, 시리얼 번호 확인 가능

레지스트리 주요경로

번호 레지스트리 경로
1 HKLM\SYSTEM\ControlSet00X\Enum\USBSTOR\{DID, device class identifier}
2 HKLM\SYSTEM\ControlSet00X\Control\DeviceClasses\{GUID}
3 C:\Windows\inf\Setupapi.dev.log

USB 저장 매체 인식 절차

  • 1. USB 저장 매체가 연결되면 버스 드라이버는 PnP(Plug and Play)관리자에게 장치의 고유한 식별번호(device descriptor)를 사용하여 연결 알림을 합니다.

    - device descriptor는 제조사, 일련번호, 드라이버 정보 등을 포함

  • 2. PnP 관리자는 받은 정보를 기반으로 Device Class ID를 설정 하고 적절한 드라이버 검색을 실시합니다.

  • 3. 드라이버가 없을 경우 사용자 모드의 PnP 관리자는 해당 장치의 펌웨어로 부터 드라이버를 전달 받아 로드하고 레지스트리에 기록합니다.

    - HKLM\SYSTEM\ControlSet00X\Enum\USBSTOR\{DID, device class identifier}
    - HKLM\SYSTEM\ControlSet00X\Control\DeviceClasses\{GUID}

  • 4. PnP Manager의 이러한 일련 과정은 Setupapi.dev.log에 기록되고 결과적으로 로그파일(Setupapi.dev.log) 및 레지스트리를 통해 USB 장치의 흔적 파악이 가능합니다.

Setupapi.dev.log

  • Setupapi.dev.log 파일을 통해 볼륨명, 시리얼넘버, 볼륨 GUID, Product ID, 최초 연결 시간, 마지막 연결 해제 시간, 저장매체를 사용한 사용자 계정 정보 등 확인 할 수 있습니다.

    C:\Windows\INF\Setupapi.dev.log

C:\Windows\inf\Setupapi.dev.log

볼륨명, 시리얼넘버, 볼륨 GUID, Product ID, 최초연결 시간, 부팅 이후 최초 연결 시간
마지막 연결 시간, 마지막 연결 해제 시간, 저장매체를 사용한 사용자 계정 확인 가능

저장 매체 정보
HKLM\SYSTEM\ControlSet00x\Enum\USBSTOR

USBSTOR의 Subkey를 분석할 경우 이미 해당 시스템에 서 사용하거나 사용했던 USB 장치를 확인할 수 있습니다.
Device Class ID : Disk&Ven_XXX&Prod_XXX&Rev_XXX (제조사, 제품명, 버전)

HKLM\SYSTEM\ControlSet00X\Enum\USBSTOR\{Device Class ID}
Device Class ID 하위키의 Unique Instance ID 형식을 통해 시리얼 번호, USB뿐 아니라 외장 하드도 확인 가능합니다.

저가형중국산USB Drive들은Serial 번호가 없는 경우가 있습니다.
이런 경우 PnP Manager는 자동으로 Unique한 Serial 번호를 생성( Instance ID ) 하여 부여합니다.
PnP Manager에 의해 설치된 instance ID는 2번째 위치에 &가 들어가있게 됩니다.

HKLM\SYSTEM\ControlSet00X\Control\DeviceClasses\{GUID}
부팅 이후 최초로 연결한 시각을 저장하는 레지스트리

하위 키 중 [A5DCBF10-6530-11D2-901F-00C04FB951ED]가 USB 관련

Device List

  • [53F56307-B6BF-11D0-94F2-00A0C91EFB8B] –Disk 관련

  • [53F5630D-B6BF-11D0-94F2-00A0C91EFB8B] –Volume 관련

  • [A5DCBF10-6530-11D2-901F-00C04FB951ED] –USB 관련

  • [6AC27878-A6FA-4155-BA85-F98F491D4F33] –Portable Deivce 관련

  • 해당 키 들의 마지막 수정 시간으로 연결 시각을 확인 할 수 있습니다.

HKLM\SOFTWARE\Microsoft\Windows Portable Devices\Devices
볼륨명, 하위키 중 제품명 또는 시리얼번호를 포함하는 키 검색

FriendlyName
장치명이 설정 된 경우 : 설정한 장치명
장치명이 설정 되지 않은 경우 : 연결된 볼륨명

좌측 운영체제 카테고리에서 USB 장치 아티팩트 클릭

[증거]테이블의 상단 칼럼 정보를 통해
저장장치 ID, 제조업체, 일련번호, 연결된 사용자 정보, 할당된 드라이브 문자, 마지막 연결 시간 등 정보를 확인 할 수 있고
우측 [세부 정보]테이블을 통해서도 확인 가능

[세부 정보]테이블의 [증거 정보]- [소스]를 통해서 USB 장치 데이터 경로 확인이 가능하고
하이퍼링크를 클릭하면 자동으로 이동

C:\Windows\System32\config\SYSTEM

SYSTEM\ControlSet00x\Enum\USBSTOR

SYSTEM\ControlSet00x\Control\DeviceClasses

C:\Windows\INF\setupapi.dev.log

EnCase에서 Setupapi.dev.log 파일 찾기
경로는 C:\Windows\inf\Setupapi.dev.log

경로를 찾아간 후 setupapi.dev.log 파일 확인

Text View를 통해서 Setupapi.dev.log 파일을 보면 볼륨명, 시리얼넘버, 볼륨 GUID, Product ID, 최초연결 시간, 부팅 이후 최초 연결 시간, 마지막 연결 시간, 마지막 연결 해제 시간, 저장매체를 사용한 사용자 계정등을 확인할 수 있습니다.

시스템에 마운트된 USB 저장매체 정보를 분석하기 위해서 먼저 SYSTEM 하이브 파일의 경로 확인
C:\Windows\System32\Config\SYSTEM

SYSTEM 하이브 파일 확인

SYSTEM 하이브 파일은 윈도우 시스템과 관련된 모든 설정 정보를 담고 있습니다.

시스템에 마운트된 USB 저장매체 정보의 경로는 SYSTEM\ControlSet00x\Enum\USBSTOR

경로를 찾아간 후 시스템에 마운트된 USB 저장매체의 Device Class ID 를 통해 제조사, 제품명, 버전을 확인할 수 있습니다.

Device Class ID 하위키의 Unique Instance ID 형식을 통해 시리얼 번호를 확인할 수 있습니다. (외장 하드도 확인 가능)

저가형중국산USB Drive들은Serial 번호가 없는 경우가 있는데
이런 경우 PnP Manager는 자동으로 Unique한 Serial 번호를 생성( Instance ID ) 하여 부여합니다.

부팅 이후 최초로 연결한 시간을 저장하는 레지스트리의 경로는
SYSTEM\ControlSet00X\Control\DeviceClasses\{GUID}

경로를 찾아가 보면 Disk, Volume, USB 등 관련된 GUID를 확인할 수 있고
해당 키 들의 마지막 수정 시간으로 연결 시각을 확인 할 수 있습니다.

볼륨명, 하위키 중 제품명 또는 시리얼번호를 포함하는 키를 찾기 위해서는 먼저 SOFTWARE 하이브파일의 경로 확인
C:\Windows\System32\Config\SOFTWARE

SOFTWARE 하이브 파일 확인

SOFTWARE 하이브 파일은 윈도우 시스템에 설치된 모든 응용프로그램 정보를 가지고 있고 개별 사용자에 연관된 것이 아니라 보다 큰 소프트웨어에 대한 전체적인 구성 정보를 가지고 있습니다.

볼륨명, 하위키 중 제품명 또는 시리얼번호를 포함하는 키의 경로는 SOFTWARE\Microsoft\Windows Portable Devices\Devices

경로를 찾아간 후 제품명과 시리얼 넘버 확인

FriendlyName을 통해서 마운트된 장치의 이름 설정 유무를 확인할 수 있습니다.
장치명이 설정 된 경우 : 설정한 장치명

장치명이 설정 되지 않은 경우 : 연결된 볼륨명

%SystemRoot%\System32\config\SYSTEM

[Windows NT Registry]

[Common Areas]

[Log] 확장자 분류
Setupapi.dev.log

Windows\System32\Config\Software

System\ControlSet00\Enum\USB

System\ControlSet00\Enum\USB

System\ControlSet00\Enum\USBSTOR

System\ControlSet00\Enum\USBSTOR

Windwos\INF\Setupapi.dev.log

보기형식 – [Preview] 변경

[Ctrl + F] – 시리얼 넘버 검색

데이터 확인