Translated ['src/pentesting-ci-cd/ansible-tower-awx-automation-controlle

This commit is contained in:
Translator
2025-08-01 10:17:06 +00:00
parent 66a462aa95
commit 83bb7cf26a
47 changed files with 591 additions and 409 deletions

View File

@@ -1,34 +1,36 @@
# External Secret Operator
{{#include ../../banners/hacktricks-training.md}}
**このページの元の著者は** [**Fares**](https://www.linkedin.com/in/fares-siala/)
このページでは、誤って構成されたESOまたはESOを使用して秘密を同期するアプリケーションから秘密を盗む方法についてのいくつかのポイントを示します。
## Disclaimer
## 免責事項
以下に示す技術は、特定の条件が満たされる場合にのみ機能します。たとえば、あなたが所有または侵害した名前空間で秘密を同期するために必要な要件に依存します。自分で見つける必要があります。
## Prerequisites
## 前提条件
1. 名前空間での管理者権限を持つkubernetes / openshiftクラスターへの足場
2. クラスターレベルでの少なくともExternalSecretへの読み取りアクセス
3. ESOがあなたの秘密を同期するために必要なラベル/アノテーションまたはグループメンバーシップがあるかどうかを確認します。運が良ければ、定義された秘密を自由に盗むことができます。
### Gathering information about existing ClusterSecretStore
### 既存のClusterSecretStoreに関する情報収集
十分な権限を持つユーザーがこのリソースを読み取ることができると仮定して、まず既存の_**ClusterSecretStores**_をリストアップます。
このリソースを読むのに十分な権限を持つユーザーがると仮定して、まず既存の_**ClusterSecretStores**_をリストアップすることから始めます。
```sh
kubectl get ClusterSecretStore
```
### ExternalSecretの列挙
_**mystore**_という名前のClusterSecretStoreを見つけたと仮定します。その関連するexternalsecretを列挙します。
ClusterSecretStoreの名前が _**mystore**_ であると仮定します。その関連するexternalsecretを列挙します。
```sh
kubectl get externalsecret -A | grep mystore
```
_このリソースは名前空間スコープであるため、どの名前空間を探すべきかすでに知っていない限り、-Aオプションを追加してすべての名前空間を横断して探してください。_
定義されたexternalsecretのリストが得られるはずです。_**mysecret**_というexternalsecretオブジェクトが_**mynamespace**_という名前空間で定義されていると仮定しましょう。それが保持している秘密の種類についてもう少し情報を集めてください。
定義されたexternalsecretのリストが得られるはずです。_**mysecret**_というexternalsecretオブジェクトが_**mynamespace**_名前空間によって定義され、使用されていると仮定しましょう。それが保持している秘密の種類についてもう少し情報を集めてください。
```sh
kubectl get externalsecret myexternalsecret -n mynamespace -o yaml
```
@@ -55,9 +57,9 @@ secretKey: SOME_PASSWORD
- ClusterSecretStoreの名前
- ExternalSecretの名前
- 秘密の名前
- シークレットの名前
必要なものがすべて揃ったので、ExternalSecretを作成できますそして最終的には、新しい秘密を同期させるために必要な前提条件を満たすために新しいNamespaceをパッチまたは作成することができます):
必要なものがすべて揃ったので、ExternalSecretを作成できます最終的には、新しいシークレットを同期させるために必要な前提条件を満たすために新しいNamespaceをパッチまたは作成することになります):
```yaml
kind: ExternalSecret
metadata:
@@ -104,3 +106,7 @@ https://external-secrets.io/latest/
{{#ref}}
https://github.com/external-secrets/external-secrets
{{#endref}}
{{#include ../../banners/hacktricks-training.md}}