Kubernetes OPA Gatekeeper bypass
Tip
AWSハッキングを学び、実践する:
HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
このページの元の著者は Guillaume
誤設定の悪用
ルールの列挙
概要を把握することで、どのルールがアクティブで、どのモードで、誰がバイパスできるかを知るのに役立ちます。
CLIを使用して
$ kubectl api-resources | grep gatekeeper
k8smandatoryannotations constraints.gatekeeper.sh/v1beta1 false K8sMandatoryAnnotations
k8smandatorylabels constraints.gatekeeper.sh/v1beta1 false K8sMandatoryLabel
constrainttemplates templates.gatekeeper.sh/v1 false ConstraintTemplate
ConstraintTemplate と Constraint は、Open Policy Agent (OPA) Gatekeeper で Kubernetes リソースにルールを強制するために使用できます。
$ kubectl get constrainttemplates
$ kubectl get k8smandatorylabels
GUIを使用して
Gatekeeper Policy Managerを使用してOPAルールにアクセスするためのグラフィカルユーザーインターフェースも利用可能です。これは「Kubernetesクラスター内のOPA Gatekeeperポリシーのステータスを表示するためのシンプルな_読み取り専用_ウェブUI」です。

公開されているサービスを検索します:
$ kubectl get services -A | grep gatekeeper
$ kubectl get services -A | grep 'gatekeeper-policy-manager-system'
除外されたネームスペース
上の画像に示されているように、特定のルールはすべてのネームスペースやユーザーに普遍的に適用されない場合があります。代わりに、ホワイトリスト方式で運用されます。例えば、liveness-probe 制約は、指定された5つのネームスペースには適用されません。
バイパス
Gatekeeperの設定を包括的に把握することで、特権を得るために悪用できる可能性のある誤設定を特定することができます。ルールが適用されないホワイトリストまたは除外されたネームスペースを探し、そこで攻撃を実行します。
Abusing Roles/ClusterRoles in Kubernetes
ValidatingWebhookConfigurationの悪用
制約をバイパスするもう一つの方法は、ValidatingWebhookConfigurationリソースに焦点を当てることです:
Kubernetes ValidatingWebhookConfiguration
参考文献
- https://github.com/open-policy-agent/gatekeeper
- https://github.com/sighupio/gatekeeper-policy-manager
Tip
AWSハッキングを学び、実践する:
HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
HackTricks Cloud

