Translated ['src/pentesting-cloud/aws-security/aws-services/aws-cognito-

This commit is contained in:
Translator
2025-08-18 14:46:12 +00:00
parent fd0932dd85
commit de34737e71
2 changed files with 10 additions and 10 deletions

View File

@@ -4,11 +4,11 @@
## Grundlegende Informationen
Identity Pools spielen eine entscheidende Rolle, indem sie es Ihren Benutzern ermöglichen, **temporäre Anmeldeinformationen** zu erwerben. Diese Anmeldeinformationen sind unerlässlich für den Zugriff auf verschiedene AWS-Dienste, einschließlich, aber nicht beschränkt auf Amazon S3 und DynamoDB. Ein bemerkenswertes Merkmal von Identity Pools ist die Unterstützung sowohl für anonyme Gastbenutzer als auch für eine Reihe von Identitätsanbietern zur Benutzerauthentifizierung. Die unterstützten Identitätsanbieter umfassen:
Identity Pools spielen eine entscheidende Rolle, indem sie es Ihren Benutzern ermöglichen, **temporäre Anmeldeinformationen** zu **erwerben**. Diese Anmeldeinformationen sind unerlässlich für den Zugriff auf verschiedene AWS-Dienste, einschließlich, aber nicht beschränkt auf Amazon S3 und DynamoDB. Ein bemerkenswertes Merkmal von Identity Pools ist die Unterstützung sowohl für anonyme Gastbenutzer als auch für eine Reihe von Identitätsanbietern zur Benutzerauthentifizierung. Die unterstützten Identitätsanbieter umfassen:
- Amazon Cognito-Benutzerpools
- Soziale Anmeldeoptionen wie Facebook, Google, Login mit Amazon und Anmelden mit Apple
- Anbieter, die mit OpenID Connect (OIDC) kompatibel sind
- Anbieter, die mit OpenID Connect (OIDC) konform sind
- SAML (Security Assertion Markup Language) Identitätsanbieter
- Entwickler-authentifizierte Identitäten
```python
@@ -49,7 +49,7 @@ Für eine Beschreibung der Funktionen der Module siehe Teil 2 des [Blogbeitrags]
#### Nutzung
Beispiel für die Nutzung von cognito\_\_attack, um die Benutzererstellung und alle Privilegierungseskalationsvektoren gegen einen bestimmten Identity Pool und Benutzerpool-Client zu versuchen:
Beispiel für die Nutzung von cognito\_\_attack, um die Benutzererstellung und alle Privilegieneskalationsvektoren gegen einen bestimmten Identity Pool und Benutzerpool-Client zu versuchen:
```bash
Pacu (new:test) > run cognito__attack --username randomuser --email XX+sdfs2@gmail.com --identity_pools
us-east-2:a06XXXXX-c9XX-4aXX-9a33-9ceXXXXXXXXX --user_pool_clients
@@ -80,7 +80,7 @@ Das einzige, was ein Angreifer wissen muss, um **AWS-Anmeldeinformationen** in e
> [!TIP]
> Die **IAM Cognito unauthentifizierte Rolle, die erstellt wurde, wird standardmäßig** `Cognito_<Identity Pool name>Unauth_Role` genannt.
Wenn Sie eine Identity Pools ID finden, die fest codiert ist und unauthentifizierte Benutzer zulässt, können Sie mit Folgendem AWS-Anmeldeinformationen erhalten:
Wenn du eine fest codierte Identity Pool ID findest, die unauthentifizierte Benutzer zulässt, kannst du mit folgendem AWS-Anmeldeinformationen erhalten:
```python
import requests
@@ -112,7 +112,7 @@ aws cognito-identity get-id --identity-pool-id <identity_pool_id> --no-sign
aws cognito-identity get-credentials-for-identity --identity-id <identity_id> --no-sign
```
> [!WARNING]
> Beachten Sie, dass ein nicht authentifizierter Cognito **Benutzer standardmäßig KEINE Berechtigungen hat, selbst wenn diese über eine Richtlinie zugewiesen wurden**. Überprüfen Sie den folgenden Abschnitt.
> Beachten Sie, dass ein nicht authentifizierter cognito **Benutzer standardmäßig KEINE Berechtigungen hat, selbst wenn diese über eine Richtlinie zugewiesen wurden**. Überprüfen Sie den folgenden Abschnitt.
### Verbesserter vs. Basis-Authentifizierungsfluss
@@ -135,7 +135,7 @@ aws sts assume-role-with-web-identity --role-arn "arn:aws:iam::<acc_id>:role/<ro
> `An error occurred (InvalidParameterException) when calling the GetOpenIdToken operation: Basic (classic) flow is not enabled, please use enhanced flow.`
Wenn Sie über ein Set von IAM-Anmeldeinformationen verfügen, sollten Sie [überprüfen, auf welchen Zugriff Sie haben](../../index.html#whoami) und versuchen, [Berechtigungen zu eskalieren](../../aws-privilege-escalation/index.html).
Wenn Sie über ein Set von IAM-Anmeldeinformationen verfügen, sollten Sie [überprüfen, welchen Zugriff Sie haben](../../index.html#whoami) und versuchen, [Berechtigungen zu eskalieren](../../aws-privilege-escalation/index.html).
### Authentifiziert
@@ -147,9 +147,9 @@ Es könnten auch **Rollen** für **authentifizierte Benutzer, die auf den Identi
Dafür müssen Sie möglicherweise Zugriff auf den **Identitätsanbieter** haben. Wenn das ein **Cognito User Pool** ist, können Sie möglicherweise das Standardverhalten ausnutzen und **selbst einen neuen Benutzer erstellen**.
> [!TIP]
> Die **IAM Cognito authentifizierte Rolle, die über** erstellt wird, heißt standardmäßig `Cognito_<Identity Pool name>Auth_Role`
> Die **IAM Cognito authentifizierte Rolle, die erstellt wird, heißt** standardmäßig `Cognito_<Identity Pool name>Auth_Role`
Jedenfalls erwartet das **folgende Beispiel**, dass Sie sich bereits in einem **Cognito User Pool** angemeldet haben, der zum Zugriff auf den Identity Pool verwendet wird (vergessen Sie nicht, dass auch andere Arten von Identitätsanbietern konfiguriert sein könnten).
Jedenfalls erwartet das **folgende Beispiel**, dass Sie sich bereits in einem **Cognito User Pool** angemeldet haben, der verwendet wird, um auf den Identity Pool zuzugreifen (vergessen Sie nicht, dass auch andere Arten von Identitätsanbietern konfiguriert sein könnten).
<pre class="language-bash"><code class="lang-bash">
# Aktualisiertes Format
@@ -184,6 +184,6 @@ aws cognito-identity get-credentials-for-identity \
</code></pre>
> [!WARNING]
> Es ist möglich, **verschiedene IAM-Rollen je nach Identitätsanbieter** zu konfigurieren, bei dem der Benutzer angemeldet ist, oder sogar nur abhängig **vom Benutzer** (unter Verwendung von Ansprüchen). Daher könnte es **lohnenswert sein, sich anzumelden und auf die IAM-Rollen aller von ihnen zuzugreifen**, wenn Sie Zugriff auf verschiedene Benutzer über denselben oder verschiedene Anbieter haben.
> Es ist möglich, **verschiedene IAM-Rollen je nach Identitätsanbieter** zu konfigurieren, bei dem der Benutzer angemeldet ist, oder sogar nur abhängig **vom Benutzer** (unter Verwendung von Ansprüchen). Daher könnte es **lohnenswert sein, sich anzumelden und auf die IAM-Rollen aller von ihnen zuzugreifen**, wenn Sie Zugriff auf verschiedene Benutzer über denselben oder unterschiedliche Anbieter haben.
{{#include ../../../../banners/hacktricks-training.md}}

View File

@@ -38,7 +38,7 @@ gcloud tasks queues add-iam-policy-binding \
```
Dies ermöglicht es dem Angreifer, vollständige Cloud Tasks-Administratorberechtigungen für die Warteschlange an jedes Dienstkonto zu gewähren, das er kontrolliert.
## References
## Referenzen
- [Google Cloud Tasks Documentation](https://cloud.google.com/tasks/docs)