『Javascriptのhistory.back()で悪意のあるサイトに誘導』について読んだのでメモ

Medium.comでバグバウンティの記事を読みました。
それに関連するメモを記しています。


注意
ここに書いてあることは試さないでください。
仮に試して問題が発生しても、私は一切の責任を負いません。

 

記事:
Abusing Javascript:history.back() as an open redirect

medium.com

 

メモ

Javascript:history.back()

  • 前のページに戻るためのJavaScriptの関数である
  • この関数は前のページが同じドメインのものかを検証しないため、悪意のあるサイトへ移動してしまう

 

POC

  1. ローカルでログイン情報入力できるHTMLのページを作成
    1. コードはユーザーをhistory.back()関数を含む脆弱性のあるページへリダイレクトする
  2. ユーザーはエラー画面に「back」と表示されているのを見て、「back」をクリックする
  3. その時すでにユーザーは悪意のあるページにリダイレクトされており、攻撃者は先ほど作成したHTMLのページを使ってパスワード情報などを手に入れることができる。