HIGHCVE-2024-4941CVSS 7.5

gradioにおけるローカルファイルインクルージョン

プラットフォーム

python

コンポーネント

gradio

修正版

4.31.4

4.31.3

AI Confidence: highNVDEPSS 0.6%レビュー済み: 2026年5月

GradioのJSONコンポーネントにおいて、ローカルファイルインクルージョン(LFI)の脆弱性が確認されました。この脆弱性は、/file=..エンドポイントを通じて機密ファイルにアクセスすることを可能にします。影響を受けるバージョンはGradio 4.25以前であり、バージョン4.31.3で修正されています。攻撃者は、JSONオブジェクト内のpathキーを悪用して、システム上のファイルを読み出す可能性があります。

Python

このCVEがあなたのプロジェクトに影響するか確認

requirements.txt ファイルをアップロードすると、影響の有無を即座にお知らせします。

requirements.txt をアップロード対応フォーマット: requirements.txt · Pipfile.lock

影響と攻撃シナリオ

この脆弱性を悪用されると、攻撃者はGradioアプリケーションが実行されているサーバー上で任意のファイルを読み出すことが可能になります。これにより、ソースコード、設定ファイル、機密データなど、重要な情報が漏洩する可能性があります。攻撃者は、この脆弱性を利用して、システムへのさらなる侵入を試みることも考えられます。特に、Gradioアプリケーションが機密情報を扱う場合、この脆弱性の影響は甚大です。類似のLFI脆弱性は、情報漏洩やシステム制御の奪取につながる可能性があります。

悪用の状況

この脆弱性は、2024年6月6日に公開されました。現時点では、公的なPoCは確認されていませんが、脆弱性の性質上、悪用される可能性は高いと考えられます。CISAのKEVリストへの登録状況は不明です。NVDデータベースも参照し、最新の情報を確認することをお勧めします。

リスク対象者翻訳中…

Applications utilizing Gradio for building interactive web interfaces, particularly those handling sensitive data or deployed in environments with limited security controls, are at risk. This includes developers using Gradio for machine learning demos, data visualization tools, or internal dashboards.

検出手順翻訳中…

• python / gradio:

import os
import json

# Check for vulnerable Gradio versions
process = os.popen('pip show gradio')
output = process.read()
version = None
for line in output.splitlines():
    if line.startswith('Version:'):
        version = line.split('==')[1]
        break

if version and float(version) <= 4.9.1:
    print("VULNERABLE: Gradio version is {}".format(version))
else:
    print("Gradio version is safe or not installed.")

• generic web: Check Gradio application endpoints for the existence of /file=.. and attempt to access arbitrary files.

攻撃タイムライン

  1. Disclosure

    disclosure

脅威インテリジェンス

エクスプロイト状況

概念実証不明
CISA KEVNO
インターネット露出

EPSS

0.56% (68% パーセンタイル)

CISA SSVC

悪用状況poc
自動化可能yes
技術的影響partial

CVSS ベクトル

脅威インテリジェンス· CVSS 3.1CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N7.5HIGHAttack VectorNetwork攻撃者がターゲットに到達する方法Attack ComplexityLow悪用に必要な条件Privileges RequiredNone攻撃に必要な認証レベルUser InteractionNone被害者の操作が必要かどうかScopeUnchanged影響コンポーネント外への波及ConfidentialityHigh機密データ漏洩のリスクIntegrityNone不正データ改ざんのリスクAvailabilityNoneサービス障害のリスクnextguardhq.com · CVSS v3.1 基本スコア
これらのメトリクスの意味は?
Attack Vector
ネットワーク — インターネット経由でリモートから悪用可能。物理・ローカルアクセス不要。
Attack Complexity
低 — 特別な条件不要。安定して悪用可能。
Privileges Required
なし — 認証不要。資格情報なしで悪用可能。
User Interaction
なし — 自動かつ無音の攻撃。被害者は何もしない。
Scope
変化なし — 影響は脆弱なコンポーネントのみ。
Confidentiality
高 — 機密性の完全喪失。全データが読み取り可能。
Integrity
なし — 完全性への影響なし。
Availability
なし — 可用性への影響なし。

影響を受けるソフトウェア

コンポーネントgradio
ベンダーosv
影響範囲修正版
unspecified – 4.31.44.31.4
4.31.3

弱点分類 (CWE)

タイムライン

  1. 予約済み
  2. 公開日
  3. 更新日
  4. EPSS 更新日
公開後-21日でパッチ適用

緩和策と回避策

Gradioのバージョンを4.31.3以降にアップデートすることが最も効果的な対策です。アップデートが困難な場合は、一時的な回避策として、/file=..エンドポイントへのアクセスを制限するWAFルールを実装することを検討してください。また、JSONデータの入力検証を強化し、pathキーの存在をチェックすることで、脆弱性の悪用を防止できます。Gradioアプリケーションのログを監視し、不審なアクセスがないか確認することも重要です。

修正方法翻訳中…

Actualice la biblioteca gradio a la versión 4.31.4 o superior. Esto corrige la vulnerabilidad de inclusión de archivos locales en el componente JSON. La actualización se puede realizar utilizando el gestor de paquetes pip: `pip install --upgrade gradio`.

CVEセキュリティニュースレター

脆弱性分析と重要アラートをメールでお届けします。

よくある質問

CVE-2024-4941 — ローカルファイルインクルージョン脆弱性はGradioで何ですか?

CVE-2024-4941は、GradioのJSONコンポーネントにおけるローカルファイルインクルージョン脆弱性です。攻撃者は、JSONオブジェクト内のpathキーを悪用し、機密ファイルにアクセスできます。

CVE-2024-4941でGradioを使用していますが、影響を受けますか?

Gradioのバージョンが4.9.1以下の場合、この脆弱性の影響を受けます。バージョン4.31.3以降にアップデートすることで、脆弱性を解消できます。

CVE-2024-4941でGradioを修正するにはどうすればよいですか?

Gradioのバージョンを4.31.3以降にアップデートしてください。アップデートが難しい場合は、WAFルールで/file=..エンドポイントへのアクセスを制限することを検討してください。

CVE-2024-4941は積極的に悪用されていますか?

現時点では公的なPoCは確認されていませんが、脆弱性の性質上、悪用される可能性は高いと考えられます。

CVE-2024-4941に関するGradioの公式アドバイザリはどこで入手できますか?

Gradioの公式アドバイザリは、Gradioのリリースノートやセキュリティアナウンスメントをご確認ください。

あなたのプロジェクトは影響を受けていますか?

依存関係ファイルをアップロードすれば、このCVEや他のCVEがあなたに影響するか即座にわかります。