「別タブで開く」の脆弱性
2020.04.28
HTML の「別タブで開く」処理である target=”_blank” の脆弱性が Google エンジニアから発信されています。
Links to cross-origin destinations are unsafe
https://web.dev/external-anchors-use-rel-noopener/
要約すると target=”_blank” には「脆弱性により、指定したリンク先のページに悪意のある JavaScript 等が組み込まれていた場合に、呼び出し元のページも攻撃対象になってしまう」問題があるとのこと。
その対応として、target=”_blank” には必ず rel=”noopener” および rel=”noreferrer” を属性として記述することが推奨されています。
なお、noopener は信頼できない(信頼できるとは思えない)サイトに対しリンクを貼る場合に、noreferrer は社内システムから外部サイトへのリンクを貼る場合に指定する属性値です。
例えば、 社内システムから外部サイトへリンクを貼る場合は
<a href=”https://www.yahoo.co.jp/” target=”_blank” rel=”noopener noreferrer> Yahoo Jpan </a>
のように記述します。
A タグはWeb制作で頻繁に利用しますから、いつもの習慣でついつい target=”_blank” と記述してしまいそうです。
しばらく rel 属性に気を配る必要がありますね。