Firefoxのセキュリティ:target = _blankのrel = noopener

Mozillaは現在、Firefox Nightlyで、target = '_ blank'を使用するリンクにrel = 'noopener'を自動的に追加する新しいセキュリティ機能をテストしています。

Target = '_ blank'は、リンクターゲットをWebブラウザーの新しいタブで自動的に開くようにブラウザーに指示します。 target属性がない場合、ユーザーが組み込みのブラウザ機能を使用しない限り、リンクは同じタブで開きます。別の方法でリンクを開くには、CtrlキーまたはShiftキーを押したままにします。

Rel = 'noopenerは、すべての主要なWebブラウザーでサポートされています。この属性は、最近のブラウザーではwindow-openerがnullであることを確認します。 nullは、値が含まれていないことを意味します。

rel = 'noopener'が指定されていない場合、リソースが異なるオリジンにある場合でも、リンクされたリソースは元のウィンドウオブジェクトを完全に制御できます。リンク先のリンクでは、元のドキュメントを操作できます。フィッシングに似たものに置き換えたり、広告を表示したり、想像できる他の方法で操作したりします。

rel = 'noopener'の乱用に関するデモページをご覧ください。 ここに 。これは無害ですが、属性が使用されていない場合に宛先サイトが発信元サイトをどのように変更するかを強調しています。

ghacks rel noopener

Rel = 'noopener'は、元のドキュメントを保護します。 Webマスターは、target = '_ blank'を使用するときは常にrel = 'noopener'を指定できます。このサイトのすべての外部リンクの属性を既に使用しています。

Appleは10月にSafariに変更を実装し、target = _blankを使用するすべてのリンクにrel = noopenerを自動的に適用しました。

FirefoxのNightlyバージョンは、セキュリティ機能もサポートしています。 Mozillaはデータを収集して、変更によってインターネット上の大きな障害が発生しないことを確認したいと考えています。

dom.targetBlankNoOpener.enable設定が機能を制御します。これは、Firefox 65でのみ使用でき、デフォルトでtrueに設定されています(つまり、rel = '_ noopener'が追加されます)。

dom.targetBlankNoOpener.enable

Firefoxユーザーは、設定を変更して機能をオフにすることができます。セキュリティ上の問題があるためお勧めしませんが、互換性の問題が発生した場合は、そうすることをお勧めします。

  1. ブラウザのアドレスバーにabout:config?filter = dom.targetBlankNoOpener.enableをロードします。
  2. 警告メッセージが表示されたら注意してください。
  3. 設定をダブルクリックします。

trueの値は、rel = 'noopener'がtarget = '_ blank'のリンクに追加されることを意味し、falseの値は追加されないことを意味します。

Mozillaは、StableリリースのFirefox 65をターゲットにしています。報告または通知される可能性のある問題によっては、事態が遅れることがあります。 Firefox 65は2019年1月29日にリリースされます 。 (経由 セーレン・ヘンツェル