概要
HuggingFace Diffusers(画像生成モデルライブラリ)の0.38.0未満に、trust_remote_code=False(デフォルト)を指定していてもリモートコードが実行される脆弱性があります(CVE-2026-44513)。
セキュリティゲートはDiffusionPipeline.download()内に実装されていましたが、download()をスキップするコードパスでは検証が迂回されます。以下の3つの攻撃経路が確認されています:
- リポジトリA経由でリポジトリBのコードを実行:
from_pretrained('repoA', custom_pipeline='attacker/repoB', trust_remote_code=False)とすると、ゲートがrepoAのファイルリストに対して評価されるため、repoB(攻撃者制御)のコードが実行される - ローカルスナップショット経由:
/local/snapshotからのロードはdownload()を呼び出さないため、ゲートが到達されず攻撃者制御のrepoコードが実行される - カスタムコンポーネント経由: ローカルスナップショットがカスタムコンポーネントファイルを含む場合に同じバイパスが発生
CVE-2026-44827は関連脆弱性で、custom_pipeline=Noneが"None.py"として解釈される問題です。
CVSSベクトル
| 項目 | 値 |
|---|---|
| スコア | 8.8(High) |
| 攻撃元区分 | ネットワーク(Network) |
| 攻撃の複雑さ | 低(Low) |
| 必要な権限 | 低(認証済みユーザー) |
| ユーザー操作 | 不要(None) |
| CWE | CWE-94(コードインジェクション) |
影響を受けるソフトウェア
| パッケージ名 | 影響バージョン | 修正バージョン |
|---|---|---|
| diffusers(PyPI) | 0.38.0未満 | 0.38.0 |
修正バージョンと回避策
- 修正バージョン: diffusers 0.38.0
pip install --upgrade diffusersでアップデートしてください- 回避策: Hugging Face Hubの信頼できないリポジトリからモデルをロードしない。
from_pretrained()でcustom_pipeline引数を信頼できないユーザー入力から設定しない。
関連リンク
データソース: NVD (NIST), GitHub Advisory Database AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
