ハッカーはオープンリダイレクトの脆弱性を利用して、フィッシングに悪用したり、マルウェアを配布する

ペネトレーションテスト&バグバウンティオープンリダイレクト

オープンリダイレクト(Open Redirect)は、ウェブアプリケーションのセキュリティ上の脆弱性の一つです。
この脆弱性により、攻撃者は正規のウェブアプリケーションのURLを利用して、被害者を悪意のあるウェブサイトにリダイレクトすることができます。

リダイレクトとは

リダイレクトは、ウェブブラウザで、あるURLにアクセスしたときに、そのウェブページが別のURLに自動的に転送される仕組みになります。
一つのURLにアクセスすると、自動的に別のURLにジャンプすることが起こります。
 
リダイレクトの利用例として、
・ウェブサイトが新しいURLにリソースを移動する。
・トラフィックを特定のページに誘導する場合。
・一時的なメンテナンス中のページをアクセスしたときに、メンテナンス中のページを表示。
などに利用されています。
 
 

オープンリダイレクトとは

攻撃者は、正規のウェブサイトを装って、あたかも信頼性のあるページへのリンクのように見せかけ、リダイレクトの機能を用いて対象のユーザーを誘導して、悪意のあるウェブサイトを開かせます。
 
悪意のあるページですが、被害者のユーザーからは通常のページに見えているため信用しています。
攻撃者は以下の行動を移します。
  • フィッシング攻撃
    攻撃者は偽の信頼性のあるサイトへのリンクとして見せかけ、ユーザーを悪意のあるサイトに誘導することができます。被害者は本物のサイトと思い込んでログイン情報や個人情報を入力してしまいます。攻撃者は、入力された個人情報を犯罪に利用します。
  • マルウェア感染
    攻撃者は悪意のあるウェブサイトにユーザーを誘導して、マルウェアをダウンロードさせます。そしてコンピュータに感染させて、攻撃します。
  • クッキーの漏洩
    オープンリダイレクトにより、攻撃者はユーザーのセッションクッキーやセッション情報を取得することができる場合があります。これにより、ユーザーのアカウントへの不正アクセスが可能になります。
  • ユーザートラフィックの乗っ取り
    攻撃者はオープンリダイレクトを利用して、被害者のトラフィックを自身のサイトに誘導し、広告収益を得るなどの悪用が考えられます。

オープンリダイレクトの例

攻撃者は、被害者に安心してクリックしてもらうための「信頼性があると思われる偽造されたURL」を作成します。
 
例えば、被害者が「example1.com」というオンラインサービスにログインするために、以下のようなURLをクリックするとします。
※偽造されたURLは「example2.com」
 
https://example1.com/login?redirect_to=https://example2.com
 
ただ、テストを行うとリダイレクトしません。
サーバー側かwebアプリケーション側で対応されているのでしょうか。
 
 

ハッカーはオープンリダイレクトの脆弱性を利用して、フィッシングに悪用したり、マルウェアを配布するのまとめ

すいません。今回オープンリダイレクトの確認は出来ませんでした。
ブラウザのURL欄では出来ないのかもしれません。
 
しかし、オープンリダイレクトの脆弱性は、ユーザーの個人情報やアカウント情報が危険にさらされるだけでなく、信頼性のあるサイトにアクセスしていると思っているユーザーが、実際には悪意のあるサイトに誘導されることによる被害が生じる可能性があります。
 
特に、ホームページに詳しくない方は、いちいちURLが正しいか否かチェックしていません。
 
ウェブ開発する場合は、オープンリダイレクトの脆弱性を防ぐために、信頼できるリダイレクト先のURLのみを許可するような入力検証を行ったり、適切なセキュリティ対策を実施したりして、セキュリティ意識を高め、脆弱性を排除することで、ユーザーのセキュリティとプライバシーが守られます。