HAD-009 DC NTFS USN Journal Artifact
공격 행위 요약
USN Journal은 파일 생성, 데이터 확장, 덮어쓰기, close 같은 NTFS lifecycle을 제공한다. SB-07에서는 loader, encrypted payload, run script가 DC에 staged됐음을 보여주는 파일 시스템 증거로 사용한다.
관측된 파일과 이벤트
hgl_loader.exe
hgl_payload.enc
hgl_run.cmd
File create
Data extend
Data overwrite
Basic info change
Close
주요 필드
| 필드 | 의미 | 예시 |
|---|---|---|
file.name | 파일명 | hgl_loader.exe |
file.path | 파일 경로 | C:\Windows\Temp\hgl_loader.exe |
event.action | 정규화된 보조 행위 | usn_loader_file_lifecycle_observed |
data.usn_reasons | USN reason summary | File create, Close |
message | USN reason 요약 | File create, Data extend, Close |
원본 아티팩트 기준 탐색 포인트
| 관찰할 행위 | 원본 필드/문자열 | 분석 의미 |
|---|---|---|
| 파일 생성 | File create, hgl_loader.exe | loader chain 파일 최초 생성 확인 |
| payload 쓰기 | Data extend, Data overwrite, hgl_payload.enc | payload가 실제 파일로 기록됐는지 확인 |
| wrapper 변경 | Basic info change, hgl_run.cmd | task action 대상 script의 lifecycle 확인 |
| 파일 close | Close | 쓰기 완료 시점 확인 |
| 한계 | USN reason은 파일시스템 evidence | process memory behavior 또는 LSASS access 직접 증거는 아님 |
Analyst Hunting KQL
USN Journal은 파일 lifecycle을 보여주는 원본 파일시스템 아티팩트다. 파일명과 USN reason을 기준으로 탐색한다.
host.name:"hanguel-dc01" and file.name:("hgl_loader.exe" or "hgl_payload.enc" or "hgl_run.cmd")
host.name:"hanguel-dc01" and message:(*USN* and (*hgl_loader.exe* or *hgl_payload.enc* or *hgl_run.cmd*))
host.name:"hanguel-dc01" and message:(*"File create"* or *"Data extend"* or *"Data overwrite"* or *"Close"*) and message:*hgl*
host.name:"hanguel-dc01" and message:(*hgl_loader.exe* and (*"File create"* or *"Close"*))
Normalized Pivot
log.id:"HAD-009" and event.action:"usn_loader_file_lifecycle_observed"
