ステータス: 分析待ち
このCVEレコードはNVDの強化努力のためにマークされています。ms-swiftプロジェクトバージョン3.3.0には、tests/run.pyにおけるPyYAMLライブラリ(バージョン≦5.3.1)のyaml.load()を使用した安全でないデシリアライゼーションによるリモートコード実行(RCE)の脆弱性が存在します。攻撃者が--run_configパラメータに渡されるYAML設定ファイルの内容を制御できる場合、デシリアライゼーション中に任意のコードが実行される可能性があります。これにより、システム全体が侵害される可能性があります。悪意のあるYAMLファイルが読み込まれると脆弱性がトリガーされ、os.system()などの任意のPythonコマンドの実行が可能になります。緩和策として、PyYAMLをバージョン5.4以降にアップグレードし、yaml.safe_load()を使用することを推奨します。
modelscope/ms-swiftプロジェクトには、脆弱なバージョンのPyYAMLライブラリ(≦5.3.1)と組み合わせたyaml.load()の安全でない使用によるリモートコード実行(RCE)の脆弱性が存在します。問題はtests/run.pyスクリプトにあり、ユーザー提供のYAML設定ファイルがyaml.load()とyaml.FullLoaderを使用してデシリアライズされます。
攻撃者が--run_config引数に提供されるYAML設定ファイルを制御または置き換えることができる場合、任意のコード実行につながる悪意のあるペイロードを注入する可能性があります。
tests/run.pyif args.run_config is not None and Path(args.run_config).exists():
with open(args.run_config, encoding='utf-8') as f:
run_config = yaml.load(f, Loader=yaml.FullLoader)
exploit.yaml)!!python/object/new:type
args: ["z", !!python/tuple [], {"extend": !!python/name:exec }]
listitems: "__import__('os').system('mkdir HACKED')"
import yaml
with open("exploit.yaml", "r") as f:
cfg = yaml.load(f, Loader=yaml.FullLoader)
これによりos.systemが実行され、コード実行が証明されます。
yaml.load()をyaml.safe_load()に置き換える# Before
yaml.load(f, Loader=yaml.FullLoader)
# After
yaml.safe_load(f)
| フィールド | 値 |
|---|---|
| CVE ID | CVE-2025-50460 |
| CVSS スコア | TBD |
| CWE | CWE-502: 信頼できないデータのデシリアライゼーション |
| 報告日 | 2025-04-25 |
| 開示日 | 2025-07-30 |
| 影響を受けるバージョン | 最新 |
| 修正バージョン |