prefetch-file

Windows Prefetch 파일을 파싱하여 응용 프로그램 실행 기록을 조회합니다. Prefetch 파일은 Windows XP 이상에서 응용 프로그램의 시작 성능을 최적화하기 위해 생성되며, C:\Windows\Prefetch 디렉터리에 .pf 확장자로 저장됩니다.

명령어 속성

항목설명
명령어 유형드라이버 쿼리
필요 권한클러스터 관리자
라이선스 사용량집계함
병렬 실행미지원
분산 실행미지원

문법

prefetch-file [zippath=STR] [zipcharset=STR] FILE_PATH

옵션

zippath=STR
ZIP 파일 경로. 분석 대상 파일이 ZIP 아카이브 안에 있는 경우 ZIP 파일의 경로를 지정합니다.
zipcharset=STR
ZIP 엔트리 이름의 문자집합 (기본값: utf-8)

대상

FILE_PATH
Prefetch 파일 경로. 와일드카드(*)를 사용하여 여러 파일을 한 번에 조회할 수 있습니다. zippath 옵션과 함께 사용하는 경우 ZIP 파일 내부의 경로를 지정합니다.

출력 필드

필드타입설명
_file문자열원본 Prefetch 파일 이름
version32비트 정수Prefetch 파일 버전. Windows XP: 17, Windows Vista/7: 23, Windows 8.1: 26, Windows 10: 30
file_size64비트 정수Prefetch 파일 크기 (바이트)
executable_name문자열실행 파일 이름
hash문자열실행 파일 경로의 해시 값 (16진수 문자열)
last_run_time날짜마지막 실행 시각
prev_run_times배열이전 실행 시각 목록. Windows 8.1 이상에서만 제공되며, 최대 8개의 실행 시각을 포함합니다. 이전 버전에서는 null을 반환합니다.
run_count32비트 정수실행 횟수
loaded_files배열실행 시 로드된 파일 경로 목록
directories배열볼륨 정보 목록. 각 항목은 path (볼륨 디바이스 경로), creation_date (볼륨 생성 시각), directory_strings (디렉터리 문자열 목록) 필드를 포함하는 맵입니다.

오류 코드

파싱 오류

해당 사항 없음

런타임 오류
오류 코드메시지설명후처리 동작
-cannot read prefetch file [FILE_PATH]파일을 읽거나 파싱하는 도중 오류가 발생한 경우쿼리 중단

설명

prefetch-file 명령어는 Windows Prefetch 파일을 파싱하여 응용 프로그램의 실행 기록을 조회합니다. 하나의 Prefetch 파일에서 하나의 레코드가 출력됩니다.

Windows 8.1 이상(버전 26, 30)의 Prefetch 파일은 MAM 압축 형식으로 저장되며, 명령어가 자동으로 LZ Xpress 압축을 해제한 후 파싱합니다. Windows XP(버전 17), Windows Vista/7(버전 23) 등 이전 버전의 비압축 Prefetch 파일도 지원합니다.

loaded_files 필드에는 응용 프로그램 실행 시 로드된 DLL, 폰트 파일 등의 경로가 포함됩니다. directories 필드에는 볼륨별 디렉터리 정보가 배열 형태로 저장됩니다.

이 명령어는 4.0.2511.0 버전부터 클러스터 관리자 권한이 필요하며, 접근 가능한 파일 경로가 제한됩니다. 자세한 내용은 파일 접근 제한을 참고하세요.

사용 예

각 사용 예의 파일 경로는 ALLOWED_FILE_SCAN_PATHS 설정에 포함되어 있다고 가정합니다.

  1. 단일 Prefetch 파일 조회

    prefetch-file C:\Windows\Prefetch\NOTEPAD.EXE-D8414F97.pf
    

    지정한 Prefetch 파일에서 실행 기록을 조회합니다.

  2. 와일드카드로 모든 Prefetch 파일 조회

    prefetch-file C:\Windows\Prefetch\*.pf
    

    Prefetch 디렉터리에서 모든 Prefetch 파일을 조회합니다.

  3. ZIP 아카이브 내부의 Prefetch 파일 조회

    prefetch-file zippath=D:\evidence\artifacts.zip Prefetch\*.pf
    

    ZIP 아카이브 내부의 Prefetch 파일을 조회합니다.

  4. 실행 횟수 기준으로 정렬

    prefetch-file C:\Windows\Prefetch\*.pf
    | sort -run_count
    

    모든 Prefetch 파일을 실행 횟수 기준 내림차순으로 정렬합니다.

  5. 특정 실행 파일의 로드된 파일 목록 조회

    prefetch-file C:\Windows\Prefetch\*.pf
    | search executable_name == "CMD.EXE"
    | explode loaded_files
    

    CMD.EXE 실행 시 로드된 파일 목록을 각 항목별로 펼쳐서 조회합니다.

호환성

prefetch-file 명령어는 소나 4.0 이전 버전부터 제공되었습니다. 4.0.2511.0 버전부터 클러스터 관리자 권한이 필요합니다.