Asayomu Tech
注目★★★★GitHub Advisory

Kyverno v1.18.1、NamespacedMutatingPolicyで任意 namespace にリソース生成

30秒で把握

  • 1Kyverno v1.18.0/1.18.1で任意namespaceへのリソース生成が可能
  • 2NamespacedMutatingPolicyのmatchConditionsが実際の攻撃経路
  • 3admission controllerの全namespace権限でRoleBinding作成も可能

要約

Kyverno v1.18.0およびv1.18.1では、NamespacedMutatingPolicyを作成できるnamespaceスコープの利用者が、CELのgenerator.apply()に任意のnamespaceを渡し、admission controllerの権限で他namespaceへリソースを生成できる。kube-systemへのConfigMap作成やNetworkPolicyによる通信妨害、RoleBindingによる権限昇格につながる。原因はgenerator.apply()のnamespace引数を検証していないことだ。v1.18.1ではNamespacedGeneratingPolicy自体は攻撃経路ではなく、matchConditions内のNamespacedMutatingPolicyが実際の経路になる。

あなたへの影響

Kyverno v1.18.0またはv1.18.1で非管理者にNamespacedMutatingPolicy作成権限を与えているチームは、近日中に権限付与状況とadmission controllerのRBACを確認し、修正版への更新を実施してください。

推奨:generator.apply()は指定namespaceへのリソース生成を実行するCEL関数です。

詳細を読む → 元記事へ※ 本文は元記事をご確認ください (asayomu は要約のみ提供)

関連する記事

※ 外部記事の権利は原著作者に帰属します。著作権削除要請は copyright@asayomu.jp までご連絡ください(受領確認 24h・実処理 72h 以内)。