Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2023-49438 — CVE-2023-49438 - Flask-Security-Too におけるオープンリダイレクト脆弱性 | Kitploit
ツール/GitHubGitHub/brandon-t-elliott/cve-2023-49438
脆弱性分析ウェブアプリケーション悪用ウェブセキュリティ論文と研究学習と教育
GitHubbrandon-t-elliott/cve-2023-49438

CVE-2023-49438

CVE-2023-49438 - Flask-Security-Too におけるオープンリダイレクト脆弱性

リポジトリを見る
522年前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2023-49438

概念実証

flask-security-too-open-redirect

説明

Python パッケージ Flask-Security-Too バージョン 5.3.2 以下に存在するオープンリダイレクトの脆弱性により、攻撃者は /login および /register ルートの ?next パラメータを悪用した巧妙な URL を介して、無防備なユーザーを悪意のあるサイトにリダイレクトできます。

背景

Flask-Security-Too には、next パラメータ内で指定された URL が相対 URL であるか、リクエスト URL と同じネットワークロケーションであるかを検証するロジックが含まれています。これはオープンリダイレクトを防止するために実装されています。

Flask-Security-Too Python パッケージは、以前に検証ロジックのバイパスが可能であることが判明しており、バージョン 4.1.0 では https://example/login?next=\\\github.com のような既知の例が修正されました。

しかし、Web ブラウザが URL 内のスラッシュを正規化する方法のために回避策が発見され、バージョン 5.3.2 以下でもパッケージが脆弱なままとなっています。

例

https://example/login?next=/\github.com

https://example/login?next=\/github.com

影響

CVE-2021-32618 では、「Werkzeug が WSGI 層として使用されている場合(Flask アプリケーションでは非常に一般的)、デフォルトで Location ヘッダーが常に絶対パスになるため、この攻撃ベクトルは無効となる」と以前に指摘されていました。

ただし、Werkzeug >=2.1.0 では autocorrect_location_header 設定が False に変更されました。つまり、リダイレクトの Location ヘッダーはデフォルトで相対パスになります。そのため、Werkzeug >=2.1.0 を WSGI 層として使用している場合、以前は影響を受けなかったアプリケーションでもこの問題の影響を受ける可能性があります。

緩和策

  1. Flask-Security-Too 5.3.3 にアップデートする
root@kitploit:~
pip install -U Flask-Security-Too

または

  1. アプリに以下の設定オプションを追加する(現時点で知られているすべての例を緩和します):
root@kitploit:~
app.config['SECURITY_REDIRECT_VALIDATE_MODE'] = "regex"
app.config['SECURITY_REDIRECT_VALIDATE_RE'] = r"^/{4,}|\\{3,}|[\s\000-\037][/\\]{2,}(?![/\\])|[/\\](https://github.com/brandon-t-elliott/cve-2023-49438/blob/main/%5B%5E/%5C%5C%5D%7C/%5B%5E/%5C%5C%5D)*[/\\].*"

または

  1. Werkzeug >=2.1.0 を使用している場合、手動で autocorrect_location_header を True に設定する:
root@kitploit:~
@app.after_request
def fix_location_header(response):
    response.autocorrect_location_header = True

    return response

CVE 参照

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-49438

https://nvd.nist.gov/vuln/detail/CVE-2023-49438

クレジット

回避策は Brandon T. Elliott により発見されました(2023年11月)

ツールをダウンロード