検索
連載

重要! まずは「オリジン」を理解しようHTML5時代の「新しいセキュリティ・エチケット」(1)(2/2 ページ)

HTML5ではできることが広がり、さまざまな表現がWebアプリケーションで実現できるようになりました。セキュリティ面でも「できること」がいっぱいあります。HTML5&JavaScript開発に携わる全ての人にお勧めの、はせがわようすけ氏による連載です。

Share
Tweet
LINE
Hatena
前のページへ |       

dataスキーム、fileスキーム

 http、https以外のスキームとして注意すべき点としては、dataスキームfileスキームがあります。

 RFC6454では、dataスキームはオリジンとしてそれぞれ固有のユニークIDを持つ、と書かれていますが、実際のブラウザ上の実装では、dataスキームで示されるリソースを含む元ページと同一のオリジンを持っていると判断されることがほとんどです。

 また、fileスキームのリソースについては、複数のfileスキームのリソースについてどこまでを同一のオリジンと見なすかについては、完全にブラウザごとの実装依存となっています。

 実際に同一オリジンポリシーに基づき、各リソースのオリジンによって動作が制限される機構としては、次のようなものがあります。

XMLHttpRequest

 XMLHttpRequestによるリソースへのリクエストでは、取得しようとしているリソースのオリジンが現在表示しているドキュメントのオリジンと同一の場合には、無条件にレスポンスの内容をJavaScriptからresponseTextなどを通じて取得できます。

 オリジンが一致しない場合には、リソースの提供側が明示的に許可している場合にしか、JavaScriptからレスポンスの内容にアクセスすることはできません。

Canvas

 HTML5のCanvas要素を使用して表示された画像は、そのHTMLのオリジンと同一のオリジンに属するものであれば、表示されている内容にJavaScriptからgetImageDataメソッドなどを通じてアクセス可能です。

 オリジンが一致しない場合には、画像提供側で明示的に許可している場合にしかアクセスできません。

Web Storage

 HTML5で導入されたデータの永続的な保存機構であるWeb Storageは、保存されるデータの境界はオリジンに基づきます。保存されたデータには同一オリジン間では自由にアクセスできますが、クロスオリジンではアクセスできません。

X-Frame-Options

 クリックジャッキングを防止する機構であるX-Frame-Optionsヘッダでは、SAMEORIGINという指定をした場合には、そのコンテンツと同一オリジンを持つページからであればフレーム内で表示できます。

 オリジンが異なる場合にはフレーム内に表示できません。

オリジンではなく、独自の境界条件を定めているもの

 一方、オリジンではない独自の境界条件を定めている機構もブラウザ上には多数存在します。例えば以下のようなものです。

Cookie

 Cookieはサーバ側で発行時にpathやdomainの指定が可能であり、これらは明らかにオリジンのホストと異なる境界となります。またデフォルトではhttpとhttps両方のスキームで共有されます。

HTTP認証

 基本認証などのHTTP認証は、path名を基に認証情報を送信するなど、オリジンに基づかない動作となっています。

document.domain

 JavaScriptでdocument.domainを書き換え、複数のコンテンツ間でdocument.domainを一致させることにより、ホストを超えてinnerHTMLの読み書きなどが可能になります。


 このように、HTML5時代の新しい機能についてはオリジンという整理された概念に基づいて境界にセキュリティの条件を定めているのに対し、古くからブラウザに備わる機構ではオリジンではない条件が基準となっていることが多々あります。

 次回は、同一オリジンポリシーを破る攻撃の代表例である「クロスサイトスクリプティング」について解説したいと思います。

はせがわようすけ プロフィール

http://utf-8.jp/

ネットエージェント株式会社 エバンジェリスト、株式会社セキュアスカイ・テクノロジー 技術顧問。Internet Explorer、Mozilla FirefoxをはじめWebアプリケーションに関する多数の脆弱性を発見。Black Hat Japan 2008、韓国POC 2008、2010他講演多数。


Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       

Security & Trust 記事ランキング

  1. 米国/英国政府が勧告する25の脆弱性、活発に悪用されている9件のCVEとは、その対処法は? GreyNoise Intelligence調査
  2. セキュリティ担当者の54%が「脅威検知ツールのせいで仕事が増える」と回答、懸念の正体とは? Vectra AI調査
  3. セキュリティ専門家も「何かがおかしいけれど、攻撃とは言い切れない」と判断に迷う現象が急増 EGセキュアソリューションズ
  4. インサイダーが原因の情報漏えいを経験した国内企業が約3割の今、対策における「責任の所在」の誤解とは
  5. 約9割の経営層が「ランサムウェアは危ない」と認識、だが約4割は「問題解決は自分の役割ではない」と考えている Vade調査
  6. OpenAIの生成AIを悪用していた脅威アクターとは? OpenAIが脅威レポートの最新版を公開
  7. 人命を盾にする医療機関へのランサムウェア攻撃、身代金の平均支払額や損失額は? 主な手口と有効な対策とは? Microsoftがレポート
  8. MicrosoftがAD認証情報を盗むサイバー攻撃「Kerberoasting」を警告 検知/防御方法は?
  9. 「Amazonプライム感謝祭」に関するフィッシング攻撃を確認、注意すべき7つのポイントとは チェック・ポイント・ソフトウェア・テクノロジーズ
  10. 英国政府機関が取締役にサイバーリスクを「明確に伝える」ヒントを紹介
ページトップに戻る