何が起きたか
Kubeflow Pipelinesは、アーティファクトダウンロードおよびポッドログのパスで、攻撃者が提供するオブジェクトストアエンドポイントメタデータを信頼し、オペレーターが管理するストレージ設定に対して検証しません。デフォルトの認証無効のスタンドアロン設定では、これにより共有ml-pipeline-uiポッドから内部サービスへのSSRFが可能になり、設定されたオブジェクトストア資格情報でリクエストが署名されると、アクセスキー識別子が開示される可能性があります。
なぜ重要か
MLワークフローインフラストラクチャは、しばしば内部サービスに到達することが信頼された共有UIポッドとともに展開されます。このSSRFは、内部ネットワークの偵察やオブジェクトストア資格情報への移動に使用でき、パイプラインUIとMLプラットフォームの残りの部分との間の分離を損なう可能性があります。
攻撃経路
フロントエンドのアーティファクトダウンロードパス(source=s3またはsource=minio)はproviderInfo.Params.endpointを受け入れ、アーカイブされたポッドログパスはワークフローステータスからS3互換エンドポイントメタデータを受け入れます。これらのエンドポイントがオペレーターが管理するストレージ設定と一致することを要求しません。認証されていない呼び出し元は、共有ml-pipeline-uiポッドに任意の到達可能なホストへのリクエストを送信させ、応答データを返すことができます。署名されたリクエストはアクセスキー識別子を明らかにする可能性があります。
影響を受けるシステム
Kubeflow Pipelines < 2.18.0
緩和策
Kubeflow Pipelines 2.18.0にアップグレードしてください。アドバイザリ: https://github.com/kubeflow/pipelines/security/advisories/GHSA-3pcj-8j5w-jmxq