このページの本文へ

Windows Info 第100回

インターネットからダウンロードしたファイルはZone.Identifierでセキュリティ管理をする

2017年09月17日 10時00分更新

文● 塩田紳二 編集● ASCII編集部

  • この記事をはてなブックマークに追加
  • 本文印刷

NTFSの代替データストリームとは
ファイルやフォルダに付けられる付加情報

 NTFSの代替データストリーム(Alternate Data Stream。以下ADSと略す)は、ファイルやフォルダと関連付けられ、独立した内容を保持するNTFS上の記憶領域だ。

 簡単にいうとNTFS上のファイルやフォルダには、すべてADSと呼ばれる付加情報を一体にして記憶できる。ADSは、NTFS上にある限りファイルと一体で存在し、コピーや移動によって変化することはないが、ファイルを上書きしたり、メモリカードやUSBメモリなどFAT32などのファイルシステムへコピーすると消えてしまう。ADSには、それぞれ名前(ファイル名と同じルール)が付けられる。

 同様の機能は、OS/2やNetware、Linuxなどにも見られる。またプラットフォームによって「拡張アトリビュート」、「メタデータ」などさまざまな呼び方がある。

 NTFSのADSは、すべての通常ファイル、通常フォルダに追加することが可能だ。また、ADSは1つのファイルに複数追加することもできる。ADSの扱いは基本的にはアプリケーション側に任されており、どのような名前(ただしファイル名と同じルール)を付け、何を保存するのかはまったくの自由だ。見方を変えると、ファイルとは、複数の内容(ストリーム)からできていて、普段は名前のないストリームをアクセスしているといってもいいかもしれない。

 ADSは、Windowsが管理のために利用しているが、アプリケーションからも自由に使うことができる。ただし、Windows Explorerには、ADSを表示するなどの機能がなく、標準機能でADSを扱うには、コマンドプロンプトでコマンドを使う必要がある。また、ADSには、ファイルのパス同様、アクセスのための表記方法がある。たとえば、C:\XYZ\ABC.TXTといったファイルがあったとき、sampleという名前のADSは、

C:\XYZ\ABC.TXT:sample

としてパス指定ができる。なお、Windowsは、MS-DOS時代からの慣習でアルファベット1文字と「:」の組合せを常にドライブ文字として認識するため、カレントフォルダのアルファベット1文字のファイル名でADSを指定する場合は、

.\X:sample

としてファイル名であることが判別できるように指定する必要がある。

 しかし、このパス表記を受け付けるかどうかはプログラム次第だ。通常のプログラムは、単純にファイルのみをアクセスするため、ADSのパス表記を受け付けないものがほとんどだ。

 ただし、コマンドプロンプトでは、ファイルのリダイレクト指定がこの表記を受け付ける。簡単にコマンドラインによる操作を示す。

代替データストリーム(ADS)は、コマンドプロンプトでは、リダイレクト表記で利用できる

 前記の構文は、ファイルのリダイレトでは確実に受け入れてくれるため、echoやmoreコマンドとファイルのリダイレクトを行なわせて、ファイルを読み書きしている。ただし、ストリームは常にテキストとは限らず、ファイル同様にバイナリデータを含むことも可能である。Dirコマンドの/Rオプションでは、代替データストリームがあれば、それを表示する。

 なお、Dirコマンドで表示されるADSの最後についてる「:$DATA」はそのストリームがデータストリームであることを示す代替データストリームの種別である。なお、Windowsは、:$data以外の種別も定義している。このあたりについては、以下のマイクロソフトのドキュメント(英語)を見ていただきたい。

https://msdn.microsoft.com/ja-jp/library/windows/desktop/aa364404(v=vs.85).aspx
https://msdn.microsoft.com/en-us/library/dn410405.aspx

インターネットからダウンロードしたデータには
Zone.Identifierという代替データストリームが付く

 WindowsによるADSの利用には、インターネットからダウンロードしたファイルのセキュリティ管理がある。これは、ファイルに付けられるADSの名前から「Zone.Identifier」と呼ばれている。IEなどがファイルのダウンロードをした場合に、該当のファイルにADSを付け、ダウンロード元のインターネットゾーン(IEなどのセキュリティ管理範囲)やダウンロード元URLなどの情報を付加するものだ。

 ファイルを開こうとすると、インターネットからダウンロードした旨のメッセージが表示されることがあるが、それは、このZone.Identifierの情報を見ているためだ。つまり、インターネットからダウンロードしたファイルには、Zone.Identifierという代替データストリームが付いている。もちろん、NTFS内に置かれていれば、ファイルをコピーしたり移動させても、ADSはそのまま残る。

 実際にインターネットからダウンロードしたファイルが持つZone.Identifierとその内容を表示させたのがだ。

インターネットからダウンロードしたファイルには、Zone.Identifierという代替データストリームが付加される

 このように、Zone.Identifier ADSの中身はテキストファイルで、いくつかの行から構成されている。具体的には、

HostIpAddress:ダウンロード元のホストIPアドレス
ZoneId:インターネットゾーン(3=インターネット)
ReferrerUrl:ダウンロードを開始したページのURL(HTTPリファラ)
HostUrl:ファイルのダウンロードURL

となっている。ただし、ブラウザで「名前を指定して保存」などを使うとReferrerUrlが記録されないことがある。

 これを利用すると、過去にダウンロードしたファイルから、ダウンロード元を調べることが可能になる。簡易には、Dir /rでZone.Identifierの有無を確認したあと、

more < ファイル名:Zone.Identifier

でダウンロード元URLを得ることができるが、自動処理を考え、PowerShellを使ってフィルターを作ってみた。Batchでは、ADSの内容を扱うのにはちょっと無理がある。

 PowerShellについては、別途解説したいと考えているが、ここでは、ファイルに対応したPowerShellのFileObjectに「HostUrl」と「ReferrerUrl」というプロパティを追加するフィルターを考えた。このようにすることで、いろいろと応用が可能になる。

filter add-zoneidentifier {
  $hurl=($_ | get-content -Stream Zone.Identifier -ErrorAction SilentlyContinue | Where-Object {$_ -match "HostUrl="});
  $rurl=($_ | get-content -Stream Zone.Identifier -ErrorAction SilentlyContinue | Where-Object {$_ -match "ReferrerUrl="});
  if (-not [string]::IsNullOrEmpty($hurl)) {
    $_ | Add-Member "HostUrl" $hurl.substring("HostUrl=".length);
    }
if (-not [string]::IsNullOrEmpty($rurl)) {
    $_ | Add-Member "ReferrerUrl" $rurl.substring("ReferrerUrl=".length);
    }
  return $_
  }

 PowerShellのコマンドウィンドウから、

dir *.pdf | add-zoneidentifier | Format-List name,HostUrl,ReferrerUrl

とすれば、カレントディレクトリにあるpdfファイルのHostUrlやReferrerUrlを表示させることが可能だ。

リスト01のフィルターを使うと、PowerShellのFileObjectにZone.Identifierの情報がプロパティとして付加される

 さらに

start microsoft-edge:$((dir ダウンロードファイル名 | add-zoneidentifier).ReferrerUrl)

として、ダウンロードリンクのあるページ(ReferrerUrl)を直接ブラウザ(Edge)で開くことが可能になる(もちろんReferrerUrlが記録されている場合のみ)。また、最後の部分の「ReferrerUrl」を「HostUrl」に変えれば、再ダウンロードやブラウザでの表示ができる。

カテゴリートップへ

本記事はアフィリエイトプログラムによる収益を得ている場合があります

この連載の記事
1
Apple 2026 MacBook Neo A18 Proチップ搭載13インチノートブック:AIとApple Intelligenceのために設計、Liquid Retinaディスプレイ、8GBユニファイドメモリ、256GB SSDストレージ、1080p FaceTime HDカメラ - シルバー
Apple 2026 MacBook Neo A18 Proチップ搭載13インチノートブック:AIとApple Intelligenceのために設計、Liquid Retinaディスプレイ、8GBユニファイドメモリ、256GB SSDストレージ、1080p FaceTime HDカメラ - シルバー
¥95,768
2
【整備済み品】富士通 ARROWS Tab V727/V 12.3型 タブレットPC 第7世代 Core m3 メモリ4GB SSD128GB Windows11 Office2019搭載 1920×1280 高精細液晶 LTE対応 無線LAN タッチペン付属 カメラ搭載 初期設定済み
【整備済み品】富士通 ARROWS Tab V727/V 12.3型 タブレットPC 第7世代 Core m3 メモリ4GB SSD128GB Windows11 Office2019搭載 1920×1280 高精細液晶 LTE対応 無線LAN タッチペン付属 カメラ搭載 初期設定済み
¥11,800
3
Apple 2026 MacBook Air M5チップ搭載13インチノートブック:AIとApple Intelligence、13.6インチLiquid Retinaディスプレイ、16GBユニファイドメモリ、512GB SSDストレージ、12MPセンターフレームカメラ、日本語キーボード、Touch ID - シルバー
Apple 2026 MacBook Air M5チップ搭載13インチノートブック:AIとApple Intelligence、13.6インチLiquid Retinaディスプレイ、16GBユニファイドメモリ、512GB SSDストレージ、12MPセンターフレームカメラ、日本語キーボード、Touch ID - シルバー
¥177,333
4
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
¥37,810
5
【整備済み品】NEC ノートパソコン VKM16/VKT16 15.6型 第8世代Core i5-8265U(最大動作3.9GHz) /Windows11 Pro/MS Office2019/WIFI内蔵/Webカメラ/DVD-ROM/テンキー/Bluetooth/HDMI/Type-C(Corei5-8265U,メモリ8GB,SSD256GB)
【整備済み品】NEC ノートパソコン VKM16/VKT16 15.6型 第8世代Core i5-8265U(最大動作3.9GHz) /Windows11 Pro/MS Office2019/WIFI内蔵/Webカメラ/DVD-ROM/テンキー/Bluetooth/HDMI/Type-C(Corei5-8265U,メモリ8GB,SSD256GB)
¥28,880

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ
1
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
¥2,374
2
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
¥1,080
3
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
¥1,890
4
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
¥990
5
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
¥740
6
UGREEN USB Type Cケーブル PD対応 100W/5A 超急速充電 USB C ナイロン編み 断線防止 iphone17/16/15シリーズ/iPad/MacBook Pro/Galaxy S24/Matebook/iPad/Xperia等USB-C各種対応(1m, ブラック)
UGREEN USB Type Cケーブル PD対応 100W/5A 超急速充電 USB C ナイロン編み 断線防止 iphone17/16/15シリーズ/iPad/MacBook Pro/Galaxy S24/Matebook/iPad/Xperia等USB-C各種対応(1m, ブラック)
¥743
7
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ホワイト T-K6A-2630WH
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ホワイト T-K6A-2630WH
¥1,690
8
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
¥5,645
9
NIMASO ガラスフィルム iPad 第11世代(A16) 2025用/iPad 10.9インチ 第10世代 2022用 衝撃吸収 強化 ガラス 保護フィルム 指紋防止 ガイド枠付き NTB22I574
NIMASO ガラスフィルム iPad 第11世代(A16) 2025用/iPad 10.9インチ 第10世代 2022用 衝撃吸収 強化 ガラス 保護フィルム 指紋防止 ガイド枠付き NTB22I574
¥1,599
10
UGREEN LANケーブル CAT8 1M メッシュLANケーブル カテゴリー8 コネクタ 超光速40Gbps/2000MHz CAT8準拠 イーサネットケーブル 爪折れ防止 シールド モデム ルータ PS3 PS4 Xbox等に対応 1M
UGREEN LANケーブル CAT8 1M メッシュLANケーブル カテゴリー8 コネクタ 超光速40Gbps/2000MHz CAT8準拠 イーサネットケーブル 爪折れ防止 シールド モデム ルータ PS3 PS4 Xbox等に対応 1M
¥999

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン