일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Interceptor
- 리버싱핵심원리
- 포렌식
- Autoware
- Mobile
- ctf-d
- crack
- Android
- CodeEngn
- John the ripper
- disk
- 써니나타스
- Multimedia
- 모바일프로그래밍
- Reversing
- shadow
- 안티디버깅
- SW에듀서포터즈
- 케쉴주
- swing
- K-shield Jr 10기
- ZIP
- K-sheild Jr
- 침해사고대응
- 디스크
- tar
- Frida
- upx
- 파일해시생성
- Today
- Total
물먹는산세베리아
SetupAPI 텍스트 로그 포맷 정리 본문
* setupapi.dev.log 파일 참고함
텍스트 로그 헤더
[Device Install Log]
OS Version = 10.0.22000
Service Pack = 0.0
Suite = 0x0100
ProductType = 1
Architecture = amd64
[BeginLog]
운영 체제 및 시스템 아키텍쳐 정보
텍스트 로그 섹션
>>> [Enable Device Install]//섹션 머리글
>>> Section start 2022/01/15 00:31:36.002//섹션 머리글
cmd: C:\WINDOWS\winsxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.22000.345_none_04b3f78d4c83ab0f\TiWorker.exe -Embedding
ump: DeviceInstall service is not disabled.
ump: Enabling device install... 00:31:36.002
ump: Device install enabled and idle. 00:31:36.002
<<< Section end 2022/01/15 00:31:36.002//섹션 바닥글
<<< [Exit status: SUCCESS]//섹션 바닥글
본문은 로그에 대해 설정된 이벤트 수준, 활성화된 번주 수준에 따라 다르다.
>>> [Setup Import Driver Package - C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\prnms009.Inf]
>>> Section start 2022/01/15 00:35:02.081
cmd: C:\WINDOWS\System32\spoolsv.exe
inf: Provider: Microsoft
inf: Class GUID: {4D36E979-E325-11CE-BFC1-08002BE10318}
inf: Driver Version: 06/21/2006,10.0.22000.1
inf: Catalog File: prnms009.cat
ump: Import flags: 0x0000000D
pol: {Driver package policy check} 00:35:02.347
pol: {Driver package policy check - exit(0x00000000)} 00:35:02.363
sto: {Stage Driver Package: C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\prnms009.Inf} 00:35:02.379
inf: {Query Configurability: C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\prnms009.Inf} 00:35:02.394
inf: Driver package 'prnms009.Inf' is configurable.
inf: {Query Configurability: exit(0x00000000)} 00:35:02.426
flq: {FILE_QUEUE_COMMIT} 00:35:02.441
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\MPDW_devmode_map.xml' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\MPDW_devmode_map.xml'.
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\prnms009.cat' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\prnms009.cat'.
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\prnms009.Inf' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\prnms009.Inf'.
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\MPDW-PDC.xml' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\MPDW-PDC.xml'.
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\MPDW-manifest.ini' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\MPDW-manifest.ini'.
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\MPDW-pipelineconfig.xml' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\MPDW-pipelineconfig.xml'.
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\MPDW-constraints.js' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\MPDW-constraints.js'.
flq: {FILE_QUEUE_COMMIT - exit(0x00000000)} 00:35:02.724
sto: {DRIVERSTORE IMPORT VALIDATE} 00:35:02.739
sig: Driver package catalog is valid.
sig: {_VERIFY_FILE_SIGNATURE} 00:35:02.802
sig: Key = prnms009.Inf
sig: FilePath = C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\prnms009.Inf
sig: Catalog = C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\prnms009.cat
sig: Success: File is signed in catalog.
sig: {_VERIFY_FILE_SIGNATURE exit(0x00000000)} 00:35:02.876
sto: {DRIVERSTORE IMPORT VALIDATE: exit(0x00000000)} 00:35:02.928
sig: Signer Score = 0x0D000003 (Inbox)
sig: Signer Name = Microsoft Windows
sto: {Core Driver Package Import: prnms009.inf_amd64_620c281895426e89} 00:35:02.959
sto: {DRIVERSTORE IMPORT BEGIN} 00:35:02.976
sto: {DRIVERSTORE IMPORT BEGIN: exit(0x00000000)} 00:35:02.990
cpy: {Copy Directory: C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}} 00:35:02.990
cpy: Target Path = C:\WINDOWS\System32\DriverStore\FileRepository\prnms009.inf_amd64_620c281895426e89
cpy: {Copy Directory: exit(0x00000000)} 00:35:03.022
idb: {Register Driver Package: C:\WINDOWS\System32\DriverStore\FileRepository\prnms009.inf_amd64_620c281895426e89\prnms009.Inf} 00:35:03.037
idb: Created driver package object 'prnms009.inf_amd64_620c281895426e89' in DRIVERS database node.
idb: Created driver INF file object 'oem57.inf' in DRIVERS database node.
idb: Registered driver package 'prnms009.inf_amd64_620c281895426e89' with 'oem57.inf'.
idb: {Register Driver Package: exit(0x00000000)} 00:35:03.085
idb: {Publish Driver Package: C:\WINDOWS\System32\DriverStore\FileRepository\prnms009.inf_amd64_620c281895426e89\prnms009.Inf} 00:35:03.100
idb: Activating driver package 'prnms009.inf_amd64_620c281895426e89'.
cpy: Published 'prnms009.inf_amd64_620c281895426e89\prnms009.inf' to 'oem57.inf'.
idb: Indexed 2 device IDs for 'prnms009.inf_amd64_620c281895426e89'.
sto: Flushed driver database node 'DRIVERS'. Time = 0 ms
sto: Flushed driver database node 'SYSTEM'. Time = 0 ms
idb: {Publish Driver Package: exit(0x00000000)} 00:35:03.194
sto: {DRIVERSTORE IMPORT END} 00:35:03.210
dvi: Flushed all driver package files to disk. Time = 0 ms
sig: Installed catalog 'prnms009.cat' as 'oem57.cat'.
sto: {DRIVERSTORE IMPORT END: exit(0x00000000)} 00:35:03.351
sto: {Core Driver Package Import: exit(0x00000000)} 00:35:03.367
sto: {Stage Driver Package: exit(0x00000000)} 00:35:03.383
<<< Section end 2022/01/15 00:35:03.445
<<< [Exit status: SUCCESS]
section_title: Setup Import Driver Package
instance_identifier: C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\prnms009.Inf
time_stamp: 2022/01/15 00:35:02.081
텍스트 로그 섹션1(헤더)
>>> [Setup Import Driver Package - C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\prnms009.Inf]
>>> [section_title - instance_identifier]
section_title: 항상 존재, 섹션과 연결된 작업의 제목
instance_identifier: 작업 instance를 식별하는 식별자, 만약 없을 경우 섹션 헤더 첫번째 항목에는 section_title만 씀
>>> Section start 2022/01/15 00:35:02.081
>>> time_stamp Section start
말그대로 섹션 시작 시간
time_stamp: yyyy/mm/dd hh:mm:ss.sss:(년도/월/일 시간:분:초:밀리초)
텍스트 로그 섹션2(본문)
텍스트 로그 섹션과 연결된 작업에 적용되는 로그 항목들
entry_prefix time_stamp event_category 들여쓰기 formatted_message
entry_prefix
- 로그 항목이 오류/경고/정보 메시지인지 나타냄
- 항상 존재
▶ 종류
"!!! " | 오류 |
"! " | 경고 |
" " | 정보 |
time_stamp
- 기록된 이벤트가 발생한 시스템 시간
- 선택
- setupAPI는 보통 포함되지 않으나 SetupWriteTextLog에는 있음
- yyyy/mm/dd hh:mm:ss.sss:(년도/월/일 시간:분:초:밀리초)
event_category
- 로그 항목을 만든 SetupAPI 작업 범주를 나타냄
- 일반적으로는 있지만 필수X
▶ 종류
Event_category 필드 문자열 | SetupAPI 작업 |
... | 공급업체 제공 작업? | bak | 백업 데이터 |
cci | 클래스 설치 프로그램 or 공동 설치 프로그램 작업 | cpy | 파일 복사 |
dvi | 장치 설치 | flq | 파일 대기열 관리 |
inf | INF 파일 관리 | ndv | 새 장치 마법사 |
prp | 장치 및 드라이버 속성 관리 | reg | 레지스트리 설정 관리 |
set | 일반 설정 | sig | 디지털 서명 확인 |
sto | 드라이버 저장소 관리 | ui | 사용자 인터페이스 관리 대화 상자 |
ump | 사용자 모드 pnp 관리자 |
들여쓰기
- 5개 공백(고정폭)
- 선택
- SetupAPI는 들여쓰기 포함 X (default)
- SetupWriteTextLog는 로그 항목에 포함된 들여쓰기 단위 수 변경 가능
formatted_message
- 로그 항목에 적용되는 특정 정보
- 로그에 대한 이벤트 수준, 활성화된 범주 수준은 → SetupAPI 로깅 레지스트리 참조
- 그룹화: 하위 섹션의 섹션 본문 로그 항목도 재귀적으로 그룹화함
>>> [Setup Import Driver Package - C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\prnms009.Inf]
>>> Section start 2022/01/15 00:35:02.081
cmd: C:\WINDOWS\System32\spoolsv.exe
inf: Provider: Microsoft
(생략)
sto: {Stage Driver Package: C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\prnms009.Inf} 00:35:02.379
(생략)
flq: {FILE_QUEUE_COMMIT} 00:35:02.441
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\MPDW_devmode_map.xml' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\MPDW_devmode_map.xml'.
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\prnms009.cat' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\prnms009.cat'.
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\prnms009.Inf' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\prnms009.Inf'.
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\MPDW-PDC.xml' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\MPDW-PDC.xml'.
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\MPDW-manifest.ini' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\MPDW-manifest.ini'.
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\MPDW-pipelineconfig.xml' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\MPDW-pipelineconfig.xml'.
flq: Copying 'C:\WINDOWS\system32\spool\tools\Microsoft Print To PDF\MPDW-constraints.js' to 'C:\WINDOWS\System32\DriverStore\Temp\{d37ef577-0938-8640-b9d1-b73a9cbc9c06}\MPDW-constraints.js'.
flq: {FILE_QUEUE_COMMIT - exit(0x00000000)} 00:35:02.724
sto: (생략)
sto: {Stage Driver Package: exit(0x00000000)} 00:35:03.383
<<< Section end 2022/01/15 00:35:03.445
<<< [Exit status: SUCCESS]
'SetupAPI는 주석을 달고 로그 항목을 들여쓰는 방식으로 하위 섹션을 구분합니다.' 라는데 주석처리를 어떻게 한다는 건지는 모르겠음.
들여쓰는 방식으로 하위 섹션을 구분한다.
하위섹션 시작: {FILE_QUEUE_COMMIT} 00:35:02.441
하위섹션 끝: {FILE_QUEUE_COMMIT - exit(0x00000000)} 00:35:02.724하위 섹션 내용은 entry_prefix , event_category , indentation 및 formatted_message 를 포함하는 일반적인 로그 항목 시퀀스로 구성된다.
텍스트 로그 섹션3(바닥글)
텍스트 로그 섹션 닫기
<<< Section end 2022/01/15 00:35:03.445
<<< [time_stamp Section end]
윈도우 버전이 바뀌면서 형식도 약간 바뀐 거 같다. (예시는 Windows 11기준, 뇌피셜)
그래도 구성은 똑같다. time_stamp와 'Section end' 문자열이 들어간다.
<<< [Exit status: SUCCESS]
<<< [Exit Status(status)]
status 형식은 '0xhhhhhhhh' (16진수)라고 하나 이것도 윈도우 버전에 따라 다른 것 같다.(뇌피셜)
status 필드가 없으면 '[Exit]'만 존재한다.
텍스트 로그 센션 외의 로그 항목 포맷
섹션과 연관성은 없으나 섹션 사이에 적혀 있다.
entry_prefix time_stamp event_category formatted_message
Entry_prefix
Entry_prefix | 메시지 유형 |
"!!! " | 텍스트 로그 오류 메시지 |
"! " | 텍스트 로그 경고 메시지 |
" ." | 텍스트 로그 정보 메시지 |
" " | 애플리케이션 설치 텍스트 로그의 정보 메시지 |
time_stamp
- 선택
- 설치 응용 프로그램에서 로그 항목에 타임스탬프를 포함하도록 요청했을 때만 표시
event_category
- 로그 항목을 만든 SetupAPI 작업 범주를 나타냄
- 필수 X (default O)
- 존재할 경우, 텍스트 로그 세션 본문 형식의 문자열 중 하나가 포함됨
formatted_message
- 로그 항목과 관련된 정보 포함
- 필수 X (default O)
'Waregame & CTF > Forensic' 카테고리의 다른 글
[ctf-d] DefCoN#21 #5 (0) | 2022.02.16 |
---|---|
USB, 레지스트리 분석 도구 (0) | 2022.02.15 |
[HackCTF] Question? (0) | 2022.02.09 |
[ctf-d] 저는 이 파일이 내 친구와… (0) | 2022.01.25 |
[ictf] susPanda (0) | 2022.01.18 |