脆弱性
MLflow のサードパーティスコアラー登録およびデシリアライズ処理において、認証なしの遠隔から任意の Python コードを実行される脆弱性が存在する。攻撃者は実験の作成、ランの作成、アーティファクトのアップロード、およびスコアラーの呼び出しエンドポイントを組み合わせることで、許可されたパッケージプレフィックス配下に配置された任意のモジュールをインポートさせ、サーバープロセスの権限でコードを実行させることが可能である。公式のデフォルト設定(認証が無効な状態)では、資格情報やユーザーの対話を必要とせずに攻撃が成立するため極めて重大である。
対象ソフト
MLflow は、機械学習の実験管理、モデルの追跡、パッケージング、デプロイを行うオープンソースのプラットフォームであり、データサイエンスや機械学習のライフサイクル管理において広く利用されている。
影響
認証なしのネットワーク経由の攻撃者によって、MLflow サーバープロセスの権限で任意のコードが実行され、機密情報の漏洩、データの改ざん、サービス停止などの影響を受ける可能性がある。公式のデフォルトイメージのようにルート権限で実行されている場合には、コンテナ内の全データへの完全なアクセスを許すことになる。
対応策
3.17.0 以降にアップグレードすること。