2022-06-13 target blank リンクのnoopener設定
target blank リンクのnoopener設定
a タグによく付ける rel="noopener"
について。
noopener キーワードを
<a>
,<area>
,<form>
の各要素の rel 属性に指定すると、ターゲットリソースへ移動する際、開いた元の文書へのアクセスを新しい閲覧コンテキストに許可しないことをブラウザーに指示します。開かれたウィンドウのWindow.opener
プロパティプロパティは設定されません (null を返します)。
これは、信頼されていないリンクを開くときに特に有効で、 Window.opener プロパティを介して発信元の文書を改ざんできないようにするためです (詳細は rel=noopener についてを参照してください)。
リンク種別: noopener - HTML: HyperText Markup Language | MDN
noopener は自動設定されるようになった
下記サイトで攻撃の PoC が公開されている。しかしモダンブラウザでは暗黙的に noopener は設定されるようになっているようだ(なので攻撃はできていない)。
2021 update: Browsers now implicitly set rel=noopener for any target=_blank link, [following a spec change](https://github.com/whatwg/html/issues/4078.