From a01280e70a4f6c732cb00dc7a22eff47e8ae6809 Mon Sep 17 00:00:00 2001 From: Masahiro FUJIMOTO Date: Wed, 1 Sep 2021 23:55:31 +0900 Subject: Web/HTTP/Headers/X-Content-Type-Options を更新 (#2178) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Markdown化 - 2021/08/14 時点の英語版に同期 --- .../http/headers/x-content-type-options/index.html | 99 ---------------------- .../http/headers/x-content-type-options/index.md | 67 +++++++++++++++ 2 files changed, 67 insertions(+), 99 deletions(-) delete mode 100644 files/ja/web/http/headers/x-content-type-options/index.html create mode 100644 files/ja/web/http/headers/x-content-type-options/index.md (limited to 'files') diff --git a/files/ja/web/http/headers/x-content-type-options/index.html b/files/ja/web/http/headers/x-content-type-options/index.html deleted file mode 100644 index e62742b226..0000000000 --- a/files/ja/web/http/headers/x-content-type-options/index.html +++ /dev/null @@ -1,99 +0,0 @@ ---- -title: X-Content-Type-Options -slug: Web/HTTP/Headers/X-Content-Type-Options -tags: - - HTTP - - HTTP ヘッダー - - Reference - - レスポンスヘッダー -translation_of: Web/HTTP/Headers/X-Content-Type-Options ---- -
{{HTTPSidebar}}
- -

X-Content-Type-Options は HTTP のレスポンスヘッダーで、 {{HTTPHeader("Content-Type")}} ヘッダーで示された MIME タイプを変更せずに従うべきであることを示すために、サーバーによって使用されるマーカーです。これにより、MIME タイプのスニッフィングを抑止することができます。すなわち、ウェブマスターが自分が何をしているかを分かっていると言う手段です。

- -

このヘッダーは、コンテンツのスニッフィングにより、実行不可能な MIME タイプを実行可能な MIME タイプに変換してしまうという事故をウェブマスターが抑止するための方法として、マイクロソフトが IE 8 で導入したものです。それ以来、他のブラウザーは MIME スニッフィングのアルゴリズムがそれほど積極的ではなくても、このヘッダーを導入してきました。

- -

Firefox 72 から、 {{HTTPHeader("Content-type")}} が提供されている場合、 MIME スニッフィングの抑止が最上位の文書にも適用されるようになりました。これにより、 HTML のウェブページが text/html 以外の MIME タイプで提供されている場合、表示される代わりにダウンロードされることがあります。両方のヘッダーを正しく設定してください。

- -

サイトのセキュリティテスターは通常、このヘッダーが設定されていることを期待しています。

- -

注: X-Content-Type-Options は、 nosniff によるリクエストブロッキングリクエスト先が "script" と "style" の場合のみ適用します。しかし、 Cross-Origin Read Blocking (CORB) 保護を HTML, TXT, JSON, XML の各ファイル (SVG image/svg+xml を除く) に対して有効にすることもできます。

- - - - - - - - - - - - -
ヘッダー種別{{Glossary("Response header", "レスポンスヘッダー")}}
{{Glossary("Forbidden header name", "禁止ヘッダー名")}}いいえ
- -

構文

- -
X-Content-Type-Options: nosniff
-
- -

ディレクティブ

- -
-
nosniff
-
リクエスト先のタイプが以下の場合、リクエストをブロックします。 - -
-
Cross-Origin Read Blocking (CORB) 保護を次の MIME タイプに対して有効にします。 -
    -
  • text/html
  • -
  • text/plain
  • -
  • text/json, application/json またはその他の JSON 拡張を伴うタイプ: */*+json
  • -
  • text/xml, application/xml またはその他の XML 拡張を伴うタイプ: */*+xml (image/svg+xml を除く)
  • -
-
-
- -

仕様書

- - - - - - - - - - - - - - - - -
仕様書状態備考
{{SpecName("Fetch", "#x-content-type-options-header", "X-Content-Type-Options definition")}}{{Spec2("Fetch")}}初回定義
- -

ブラウザーの互換性

- -

{{Compat("http.headers.X-Content-Type-Options")}}

- -

ブラウザー固有の注意事項

- - - -

関連情報

- - diff --git a/files/ja/web/http/headers/x-content-type-options/index.md b/files/ja/web/http/headers/x-content-type-options/index.md new file mode 100644 index 0000000000..d61b33f893 --- /dev/null +++ b/files/ja/web/http/headers/x-content-type-options/index.md @@ -0,0 +1,67 @@ +--- +title: X-Content-Type-Options +slug: Web/HTTP/Headers/X-Content-Type-Options +tags: + - HTTP + - HTTP ヘッダー + - Reference + - レスポンスヘッダー +browser-compat: http.headers.X-Content-Type-Options +translation_of: Web/HTTP/Headers/X-Content-Type-Options +--- +{{HTTPSidebar}} + +**`X-Content-Type-Options`** は HTTP のレスポンスヘッダーで、 {{HTTPHeader("Content-Type")}} ヘッダーで示された [MIME タイプ](/ja/docs/Web/HTTP/Basics_of_HTTP/MIME_types)を変更せずに従うべきであることを示すために、サーバーによって使用されるマーカーです。これにより、[MIME タイプのスニッフィング](/ja/docs/Web/HTTP/Basics_of_HTTP/MIME_types#mime_sniffing)を抑止することができます。言い替えれば、 MIME タイプを意図的に設定することができます。 + +このヘッダーは、 Microsoft が IE 8 において、コンテンツのスニッフィングにより、実行不可能な MIME タイプを実行可能な MIME タイプに変換してしまうという事故を抑止するためのとして導入したものです。それ以来、他のブラウザーは MIME スニッフィングのアルゴリズムにそれほど積極的ではなくても、このヘッダーを導入してきました。 + +Firefox 72 から、 {{HTTPHeader("Content-type")}} が提供されている場合、 MIME スニッフィングの抑止が最上位の文書にも適用されるようになりました。これにより、 HTML のウェブページが `text/html` 以外の MIME タイプで提供された場合、表示されるのではなくダウンロードされることがあります。両方のヘッダーを正しく設定してください。 + +サイトのセキュリティテスターは通常、このヘッダーが設定されていることを期待しています。 + +> **Note:** `X-Content-Type-Options` は、 [`nosniff` によるリクエストブロッキング](https://fetch.spec.whatwg.org/#should-response-to-request-be-blocked-due-to-nosniff?)を[リクエスト先](https://fetch.spec.whatwg.org/#concept-request-destination)が "`script`" と "`style`" の場合のみ適用します。しかし、 [Cross-Origin Read Blocking (CORB)](https://chromium.googlesource.com/chromium/src/+/master/services/network/cross_origin_read_blocking_explainer.md#determining-whether-a-response-is-corb_protected) 保護を HTML, TXT, JSON, XML の各ファイル (SVG `image/svg+xml` を除く) に対して有効にすることもできます。

+ + + + + + + + + + + + +
ヘッダー種別{{Glossary("Response header", "レスポンスヘッダー")}}
{{Glossary("Forbidden header name", "禁止ヘッダー名")}}いいえ
+ +## 構文 + +``` +X-Content-Type-Options: nosniff +``` + +# ディレクティブ + +- `nosniff` + - : リクエスト先のタイプが `style` でありその MIME タイプが `text/css` ではない場合、または、タイプが `script` で MIME タイプが [JavaScript の MIME タイプ](https://html.spec.whatwg.org/multipage/scripting.html#javascript-mime-type)ではない場合にリクエストをブロックします。 + +## 仕様書 + +{{Specifications}} + +## ブラウザーの互換性 + +{{Compat}} + +### ブラウザー固有の注意事項 + +- Firefox 72 は最上位の文書で `X-Content-Type-Options: nosniff` を有効にします。 + +## 関連情報 + +- {{HTTPHeader("Content-Type")}} +- Microsoft による X-Content-Type-Options の [元の定義](https://blogs.msdn.microsoft.com/ie/2008/09/02/ie8-security-part-vi-beta-2-update/) +- [Mozilla Observatory](https://observatory.mozilla.org/) ツールによるウェブサイトの設定 (このヘッダーを含む) の安全性とセキュリティのテスト +- [Firefox における MIME 混同攻撃の緩和](https://blog.mozilla.org/security/2016/08/26/mitigating-mime-confusion-attacks-in-firefox/) +- [Cross-Origin Read Blocking (CORB)](https://fetch.spec.whatwg.org/#corb) +- [Google Docs CORB 解説書](https://chromium.googlesource.com/chromium/src/+/master/services/network/cross_origin_read_blocking_explainer.md) -- cgit v1.2.3-54-g00ecf