CVE-2024-43403: Kanister Vulnerability Opens Door to Cluster-Level Privilege Escalation
2024/08/21 SecurityOnline — 人気のデータ・プロテクション・ワークフロー管理ツール Kanister に、深刻な脆弱性 CVE-2024-43403 が発見され、攻撃者による Kubernetes クラスタの完全な制御にいたるという可能性が生じている。この脆弱性は、UMN の PostDoc である Nanzi Yang により発見された。

この問題のコアは、”edit” と呼ばれる、Kubernetes “ClusterRole” に関連する default-kanister-operator デプロイメントに存在する。この “ClusterRole” は、Kubernetes のデフォルト・ロールの1つであり、”daemonset” リソースの create/patch/update および、サービス・アカウント・トークンの作成や、サービス・アカウント・ロールなどの権限が設定されている。
したがって、悪意のユーザーが default-kanister-operator をホストするワーカーノードにアクセスすると、いくつかの方法により、この脆弱性が悪用されるという可能性が生じる:
- Daemonset Resource の操作:”daemonset” リソースの動詞である create/patch/update を悪用する攻撃者は、”cluster-admin” サービス・アカウントなどの高権限サービス・アカウントをマウントするための、Pod セットの作成/変更が可能になる。それにより、攻撃者はサービス・アカウント・トークンを使用して、クラスタ全体を制御できるようになる。
- Service Account Token の作成:“editClusterRole” はサービス・アカウント・トークンの作成も許可する。したがって脅威アクターは、高特権のロールを持つ新しいトークンを生成し、それらを使用してクラスタ内の任意のリソースを操作し、さらに制御をエスカレートさせることが可能となる。
- Impersonation of High-Privilege Accounts: サービス・アカウントへのなりすまし (ロール?) がサポートされているため、”cluster-admin” などの高権限アカウント ID への、攻撃者によるなりすましが可能になる。それにより、Kubernetes 環境内の重要なリソースの作成/変更/削除するなどのアクションを実行する、フルアクセスが許可されてしまう。
この脆弱性 CVE-2024-43403 が放置されると、Kubernetes クラスタの完全な乗っ取りにいたる可能せいが生じるため、潜在的な影響は深刻となる。ワーカーノードからクラスタ全体のスコープへと特権をエスカレートさせる能力は、Kanister に依存するKubernetes 環境の完全性とセキュリティに対して深刻な脅威をもたらす。
すでに Kanister プロジェクトはセキュリティ・アドバイザリを発行し、この脆弱性の修正を取り込んだ最新バージョンへのアップデートをユーザーに促している。Kanisterを使用している組織にとって極めて重要なことは、このアップデートを直ちに適用し、潜在的な攻撃から Kubernetes 環境を保護することだ。
このブログでは初登場の Kanister なので調べてみたら、Qiita に「Kubernetes Native なバックアップツール Kanister の検証」という記事があり、その中で「Veeam の Kasten(K10) のベースとなっている OSS である。Kanister は、Kubernetes上で実行されているアプリケーションのデータを、オブジェクト・ストレージへとバックアップする」と記されていました。また、Kanister の HP には、Copyright © 2017-2024 と表記されているので、かなりの老舗となりますね。よろしければ、Veeamで検索も、ご利用ください。
You must be logged in to post a comment.