メインコンテンツへ
短.be

オープンリダイレクト

外部から指定された任意の URL にリダイレクトしてしまう Web アプリケーションの脆弱性。フィッシング攻撃に悪用される。

2026年8月23日 · 約 1 分で読めます

セキュリティ

オープンリダイレクト (Open Redirect) とは、Web アプリケーションが外部から渡された URL パラメータの値を検証せずにリダイレクト先として使用してしまう脆弱性です。OWASP (Open Web Application Security Project) の Top 10 では、2025 年版で第 1 位となったアクセス制御の不備 (A01) に含まれる CWE-601 (信頼できないサイトへの URL リダイレクト) として整理されています。

具体例を示します。「https://trusted-site.com/redirect?url=https://evil-site.com」のような URL で、trusted-site.com が url パラメータの値を検証せずにリダイレクトすると、ユーザーは信頼できるドメインのリンクをクリックしたつもりで悪意のあるサイトに誘導されます。

オープンリダイレクトがフィッシング攻撃に悪用される理由は、信頼できるドメインの URL がリンクの入り口になるためです。メールのセキュリティフィルターやユーザー自身の目視チェックでは、リンクの先頭が正規のドメインであれば安全と判断しがちです。

短縮 URL サービスは本質的にリダイレクトサービスであるため、オープンリダイレクトの問題と密接に関わります。悪意のあるユーザーが短縮 URL サービスを使ってフィッシングサイトへのリンクを作成するケースは実際に発生しています。短縮 URL サービス側にも対策はありますが、どのような手段でどこまで検出しているかは公開されないのが一般的です。利用者から見える形の対策としては、リダイレクト前にリンク先を表示する警告画面 (スプラッシュページ) や、不正利用の報告窓口などがあります。ただしこうした機能があること自体は、そのサービスで発行されたリンクが安全であることを意味しません。リンクを受け取った側は、検出の仕組みを前提に安全性を判断するのではなく、外から確認できる範囲で見分けるほうが確実です。

開発者がオープンリダイレクトを防ぐには、リダイレクト先をホワイトリストで制限する、相対 URL のみ許可する、リダイレクト先のドメインを検証するなどの対策が有効です。URL パラメータをそのままリダイレクト先に使う実装は、どのような場合でも避けるべきです。

検証を実装したつもりで抜け穴が残る典型が 2 つあります。1 つはドメインを前方一致で照合する実装です。「https://trusted-site.com.attacker-domain.example/」のようにホスト名を後ろへ伸ばした URL は前方一致を通過してしまうため、URL を解析してホスト名を取り出し、許可リストとの完全一致で判定します。もう 1 つは「/」で始まる値をすべて相対 URL とみなす実装です。「//attacker-domain.example/」はスキーム相対 URL として解釈され、ブラウザは別のドメインへ移動します。先頭が「//」の値は外部 URL として扱う必要があります。

X でシェアはてブ

この記事は役に立ちましたか?

関連用語

関連記事

よくある質問

オープンリダイレクトはどのくらい危険ですか?
単体では情報漏洩やシステム侵害には直結しませんが、フィッシング攻撃の成功率を大幅に高めます。信頼できるドメインの URL を入り口にできるため、ユーザーが騙されやすくなります。OWASP Top 10 の 2025 年版でも、第 1 位のアクセス制御の不備 (A01) に含まれる CWE-601 として整理されています。
短縮 URL サービスはオープンリダイレクトの一種ですか?
技術的にはリダイレクトサービスですが、転送先はサービスに登録された URL に限られ、リクエストのパラメータで転送先を差し替えられる作りではありません。外部から渡された値をそのまま転送先にしてしまう脆弱性とは、この点が異なります。ただし登録された転送先そのものが悪意のあるサイトである可能性は残るため、受け取った短縮 URL は送信元を確認してから開いてください。
自分のサイトにオープンリダイレクトがないか確認するには?
リダイレクト処理を行うエンドポイントで、外部から渡された URL をそのまま Location ヘッダーに設定していないか確認してください。脆弱性スキャナー (OWASP ZAP など) を使った自動検査も有効です。

知識を、実際のリンクで。

無料で URL を短縮する