Rancher Kubernetes Engine の脆弱性 CVE-2023-32191 (CVSS 10) が FIX:直ちにアップデートを!

CVE-2023-32191 (CVSS 10) in Rancher Kubernetes Engine Exposes Sensitive Credentials

2024/06/18 SecurityOnline — 人気の Kubernetes ディストリビューションである Rancher Kubernetes Engine (RKE) に、深刻な脆弱性 CVE-2023-32191 (CVSS:10.0) が発見された。RKE は、 Kubernetes のインストールと運用を簡素化するために使用されているものだ。したがって、この脆弱性は、RKE により管理される Kubernetes クラスタのセキュリティと完全性に深刻なリスクをもたらす。


RKE により、ベアタル・サーバと仮想化サーバの双方において、Docker コンテナ内で Kubernetes は完全に実行されるが、クラスタの状態情報を保存する方法に、深刻なセキュリティ上の欠陥があることが判明した。この脆弱性 CVE-2023-32191 は、クラスタの kube-system 名前空間内の、 full-cluster-state と呼ばれる ConfigMap 内に、RKE が機密性の高い認証情報を保存していることに起因する。

この ConfigMap には、以下のような機密データが含まれている:

  • SSH 認証情報
  • AWS のアクセス・キー/秘密キー
  • Azure AD クライアントの秘密キー
  • Kubernetes の暗号化キー
  • クラウド・プロバイダーの認証情報 (OpenStack/Vsphere/Harvester など)

これらの認証情報が ConfigMap に存在するということは、この ConfigMap の読み取りアクセス権を獲得した管理者が、Kubernetes クラスタ全体を管理者レベルで効果的に制御できることを意味する。このレベルのアクセスは、機密性/完全性/可用性の深刻な侵害につながり、組織のクラウド・インフラ全体が攻撃の危険にさらされる可能性が生じるあ。

full-cluster-state の ConfigMap には、クラスタの運用に必要な重要な設定詳細や認証情報を含む、Kubernetes クラスタの完全な状態が含まれている。通常、この ConfigMap へのアクセスには、RKE クラスタ内の権限が必要だが、それは管理者に限定されるものではない。この ConfigMap を読む能力を持つ管理者以外のユーザーであっても、この欠陥を悪用することで、クラスタに対する不正アクセスや不正な制御を行うことが可能となる。

RKE ユーザーにとって必要なことは、パッチを適用した以下のバージョンへとアップグレードし、脆弱性 CVE-2023-32191 を緩和することだ:

これらのアップデートには、クラスタの状態を、ConfigMap から kube-system 名前空間へと移動させ、より安全なシークレット管理を用いるための変更も含まれている。このシークレットへのアクセスは、適切な権限を持つユーザーの、Rancher の admin と cluster-owner ロールに制限される。

現時点では、この脆弱性に対する有効な回避策は存在しない。潜在的な悪用から Kubernetes 環境を守るために、RKE のアップグレードを優先することを強く推奨する。