Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-24055-OAuth-Langfuse — Langfuseにおける未認証のSlack OAuthインストールを標的とした、教育用のCVE-2026-24055エクスプロイトデモンストレーション。実践的なセキュリティテストのための脆弱性あり/パッチ適用済みのDocker環境を含む。 | Kitploit
ツール/GitHubGitHub/imzanggg/cve-2026-24055-oauth-langfuse
脆弱性分析エクスプロイトウェブアプリケーション悪用APIセキュリティテスト学習と教育ラボと実践
GitHubimzanggg/cve-2026-24055-oauth-langfuse

CVE-2026-24055-OAuth-Langfuse

Langfuseにおける未認証のSlack OAuthインストールを標的とした、教育用のCVE-2026-24055エクスプロイトデモンストレーション。実践的なセキュリティテストのための脆弱性あり/パッチ適用済みのDocker環境を含む。

リポジトリを見る
232ヶ月前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2026-24055 — Langfuse における未認証の Slack OAuth インストール

Web およびアプリケーションセキュリティ科目の課題 — グループ 06、クラス NT213.Q21.ANTT

📌 概要

本プロジェクトは、Langfuse プラットフォーム上で公開された実際のセキュリティ脆弱性(CVE-2026-24055)を再現するものです。この脆弱性は OAuth エンドポイントを悪用し、攻撃者がログインすることなく、他人のプロジェクトに Slack ワークスペースの接続を乗っ取ることができます。

本プロジェクトには以下が含まれます:脆弱なバージョンと修正済みバージョンの両方を模擬する Docker 環境の構築、段階的なエクスプロイトの実行、および修正プログラムが正しく機能することの検証。これを通じて、OAuth フローにおけるアクセス制御の脆弱性を分析する実践を行います。これは、Web 認証システムを構築または監査する際に直接活用できるスキルです。

示すスキル: OAuth2 フローの分析、Docker、セキュリティアドバイザリの読解、技術レポートの作成、セキュリティテスト。


目次

  • 脆弱性の説明
  • システム要件
  • 実行前の準備
  • エクスプロイトのデモ — Vulnerable v3.146.0
  • 修正プログラムの検証 — Patched v3.147.0
  • 環境の停止
  • 参考資料

脆弱性の説明

CVE-2026-24055 は、Langfuse のバージョン 3.89.0 から 3.146.0 に存在する Improper Access Control の脆弱性です。

エンドポイント /api/public/slack/install は認証を要求しないため、攻撃者は projectId さえ知っていれば、自分の Slack ワークスペースを任意のプロジェクトにバインドできます。被害者が Slack に通知を送信する自動化を作成すると、プロンプトの内容全体が攻撃者のワークスペースに漏洩します。

属性詳細
CWECWE-284 — Improper Access Control
影響を受けるバージョンLangfuse 3.89.0 – 3.146.0
修正済みバージョンLangfuse 3.147.0
GitHub AdvisoryGHSA-pvq7-vvfj-p98x
NVDCVE-2026-24055

攻撃フロー

Sequence Diagram


システム要件

ツール最小バージョン
Docker Desktop24.0+
Docker Composev2
Git任意
RAM8 GB

実行前の準備

Slack App の作成

Slack API では http://localhost:3000 を Redirect URL として使用できます。

  1. https://api.slack.com/apps にアクセス → Create New App → From scratch
  2. アプリ名を入力し、ワークスペースを選択
  3. OAuth & Permissions → Redirect URLs → 以下を追加:
    http://localhost:3000
    
  4. Client ID と Client Secret を保存

エクスプロイトのデモ — Vulnerable v3.146

ステップ 1 — 環境の設定

cd vulnerable
cp .env.example .env

.env ファイルを開き、以下の値を入力します:

NEXTAUTH_URL=http://localhost:3000
SLACK_CLIENT_ID=<your-slack-client-id>
SLACK_CLIENT_SECRET=<your-slack-client-secret>
SLACK_STATE_SECRET=any-random-string

ステップ 2 — Langfuse v3.146.0 の起動

docker compose up -d

コンテナが準備完了したことを確認:

docker compose ps

約 30~60 秒待ちます。すべてのコンテナが Up (healthy) 状態である必要があります。

ステップ 3 — アカウントの作成

http://localhost:3000 にアクセス:

  1. 被害者アカウント

    • アカウントを登録し、Organization を作成 → Project を作成
    • Settings に移動 → Project ID を記録
  2. 攻撃者アカウント

    • シークレットタブを開き、別のアカウントを登録(またはログインしない)

ステップ 4 — エクスプロイトの実行

攻撃者のブラウザで(Langfuse にログインする必要なし)、以下にアクセス:

http://localhost:3000/api/public/slack/install?projectId=<victim-project-id>

フローの流れ:

  • サーバーは認証をチェックせず、Slack OAuth に直接リダイレクト
  • 攻撃者の Slack ワークスペースにログイン → Allow をクリック
  • 攻撃者のワークスペースが被害者のプロジェクトにバインドされた

ステップ 5 — データ漏洩の確認

被害者アカウントでログイン:

  1. Settings → Integrations に移動 → Slack が接続されていることを確認(攻撃者のワークスペース)
  2. Automation を作成:Prompts → Automations → New
    • Trigger: Prompt created / updated / deleted
    • Action: Slack → チャンネルを選択
  3. 被害者が新しいプロンプトを作成
  4. 攻撃者の Slack がプロンプトのメタデータ(名前、バージョン、ラベル、タグ)を含む通知を受信

修正プログラムの検証 — Patched v3.147

ステップ 1 — 旧環境の停止

cd ../vulnerable
docker compose down

ステップ 2 — Langfuse v3.147.0 の起動

cd ../patched
cp .env.example .env
# vulnerable セクションと同じ値を入力
docker compose up -d

ステップ 3 — エクスプロイトの再実行

ログインせずに試す:

http://localhost:3000/api/public/slack/install?projectId=<any-project-id>

期待される結果 — HTTP 401:

{ "error": "Authentication required" }

攻撃者でログインし、被害者の projectId を使用:

http://localhost:3000/api/public/slack/install?projectId=<victim-project-id>

期待される結果 — HTTP 403:

{ "error": "You do not have permission to configure Slack for this project" }

脆弱性は完全に修正されました。


環境の停止

docker compose down

すべてのデータ(ボリューム)を削除したい場合:

docker compose down -v

ディレクトリ構造

cve-2026-24055/
├── README.md                  ← このファイル
├── vulnerable/
│   ├── docker-compose.yml     ← Langfuse v3.146.0(脆弱)
│   └── .env.example
└── patched/
    ├── docker-compose.yml     ← Langfuse v3.147.0(修正済み)
    └── .env.example

参考資料

  • GitHub Security Advisory — GHSA-pvq7-vvfj-p98x
  • NVD — CVE-2026-24055
  • Commit fix — 3adc89e
ツールをダウンロード