Skip to content

File & folder access

Zone.Identifier (Mark of the Web)

Zone.Identifier cheat sheet: Mark of the Web ADS, ZoneId 0 to 4, ReferrerUrl and HostUrl per browser, loss and bypass cases, and collection from the $MFT.

Location
<file>:Zone.Identifier (NTFS alternate data stream)
Proves
A file came from the internet or another zone, often with the page and URL it came from
Timestamps
No date in the stream; date it with the host file $SI/$FN creation times and USN records, UTC
Retention
Lives with the file on NTFS; lost on copy to FAT32/exFAT; removed by Unblock-File; propagation to extracted files varies by tool
Access
Readable by anyone who can read the file (dir /r, Get-Content -Stream); usually resident, so captured by a raw $MFT copy
Type
File / file system
Windows
XPVista / 78 / 8.11011
KAPE target
$MFT
Velociraptor
Windows.Triage.Targets:$MFT

What it is

When a browser, e-mail client or other application using the Windows Attachment Manager saves a file that came from the internet, it attaches a small text alternate data stream named Zone.Identifier to it. This is the Mark of the Web (MOTW): Windows uses it to show "This file came from another computer" warnings, trigger SmartScreen, and open Office documents in Protected View or block their macros. For investigators, the stream records the security zone of origin and, with modern browsers, the exact download URL and referring page.

Location

Windows versionLocationNotes
XP SP2 and later<file>:Zone.Identifier on NTFS volumesNamed $DATA attribute of the downloaded file's $MFT record
AllNot stored on FAT32/exFATThese file systems have no alternate data streams

Typical content:

[ZoneTransfer]
ZoneId=3
ReferrerUrl=https://example.org/downloads/
HostUrl=https://cdn.example.org/files/setup.zip

The stream is small, so it is usually resident in the MFT record and survives in the $MFT even when the file content is gone.

What it proves

  • Origin: the file was saved from a zone other than the local machine, usually the Internet (ZoneId 3).
  • Source URL: HostUrl is the URL the file was downloaded from; ReferrerUrl the page that led to it. Chromium-based browsers (Chrome, Edge) write both; Firefox has done so since version 67 outside private browsing.
  • Delivery technique: HostUrl=about:internet or a blob: URL points to files generated in the browser, typical of HTML smuggling.
  • It does not prove the file was opened or executed, and its absence does not prove the file was created locally (see Retention).

Key fields

FieldMeaning
ZoneId=0Local machine
ZoneId=1Local intranet
ZoneId=2Trusted sites
ZoneId=3Internet
ZoneId=4Restricted sites
ReferrerUrlPage the user was on when the download started (browser-dependent)
HostUrlDirect URL of the downloaded file (browser-dependent)

Timestamps

TimestampSet whenFormatPitfalls
Inside the streamNone—The stream holds no date
Host file creation ($SI / $FN)File written to disk, usually at downloadNTFS, UTCBrowsers write a temporary file then rename it; check the $MFT record and the USN journal
USN records of the host fileStream written to the fileUSN journal, UTCShows when the mark was added or removed, while the journal still covers that period

Retention and clearing

  • The stream lives as long as the file on NTFS. It is lost when the file is copied to FAT32/exFAT, sent through some transfer channels, or rebuilt by a program that does not preserve streams.
  • "Unblock" in file properties and Unblock-File in PowerShell delete the stream; removal is visible as a stream change in the USN journal.
  • Propagation to extracted files depends on the tool: Windows' built-in ZIP extraction propagates the mark; 7-Zip added an option to do it in version 22.00; many other archivers do not.
  • Container formats have been used to strip the mark: until the November 2022 security update (CVE-2022-41091), files inside a mounted ISO did not inherit it. Downloads by command-line tools, scripts or SMB copies often carry no mark at all.
  • Private-browsing sessions may omit URLs.

Collection

  • KAPE target: $MFT. There is no dedicated target for Zone.Identifier: resident streams are captured in the $MFT. Non-resident streams (unusually long content) require collecting the files themselves.
  • Velociraptor (Windows.Triage.Targets): $MFT. For live hunting, Windows.Analysis.EvidenceOfDownload lists files with ZoneId 3 or 4 and their stream content, and Windows.NTFS.ADSHunter searches alternate data streams by name and content.
  • Built-in:
Get-Item C:\Users\alice\Downloads\* -Stream Zone.Identifier -ErrorAction SilentlyContinue | Select-Object FileName, Length
Get-Content C:\Users\alice\Downloads\invoice.iso -Stream Zone.Identifier
dir /r C:\Users\alice\Downloads
more < C:\Users\alice\Downloads\invoice.iso:Zone.Identifier

Parsing tools

  • MFTECmd (Eric Zimmerman, free): the $MFT CSV includes a ZoneIdContents column with the text of resident Zone.Identifier streams.
  • Streams (Sysinternals, free): lists alternate data streams recursively (streams -s).
  • Velociraptor: Windows.Analysis.EvidenceOfDownload and Windows.NTFS.ADSHunter.
  • PowerShell: Get-Item -Stream and Get-Content -Stream for quick live review.
  • Sysmon: event ID 15 (FileCreateStreamHash) logs the creation of the stream when Sysmon is deployed.

Investigation tips

  • Filter the MFTECmd output on ZoneIdContents to list every file downloaded from the internet, then pivot on HostUrl domains to find the initial payload and correlate with browser artifacts.
  • Look for about:internet or blob: host URLs: they indicate files assembled in the browser, a common HTML smuggling technique.
  • Check ISO, IMG, VHD and archive files in Downloads, then look for their extracted contents without a mark: a sign of MOTW evasion.
  • A Zone.Identifier on an .exe, .js, .hta or .lnk that later appears in Prefetch or Microsoft Defender logs ties execution back to its download source.
  • Files in $Recycle.Bin keep their stream, so deleted downloads can still show their origin.
  • Absence of the mark is not proof of local creation; consider the file system, the transfer method and the archiver used.

Related artifacts

Glossary terms

Guides

All artifacts on one page: cheat sheet