mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-07-28 22:51:09 -07:00
Translated ['src/pentesting-cloud/aws-security/aws-services/aws-cognito-
This commit is contained in:
+6
-6
@@ -4,12 +4,12 @@
|
||||
|
||||
## Basic Information
|
||||
|
||||
Οι πισίνες ταυτότητας παίζουν κρίσιμο ρόλο επιτρέποντας στους χρήστες σας να **αποκτούν προσωρινές πιστοποιήσεις**. Αυτές οι πιστοποιήσεις είναι απαραίτητες για την πρόσβαση σε διάφορες υπηρεσίες AWS, συμπεριλαμβανομένων αλλά όχι περιορισμένων σε Amazon S3 και DynamoDB. Μια αξιοσημείωτη δυνατότητα των πισινών ταυτότητας είναι η υποστήριξή τους για ανώνυμους επισκέπτες καθώς και για μια σειρά παρόχων ταυτότητας για την αυθεντικοποίηση χρηστών. Οι υποστηριζόμενοι πάροχοι ταυτότητας περιλαμβάνουν:
|
||||
Οι πισίνες ταυτοτήτων παίζουν κρίσιμο ρόλο επιτρέποντας στους χρήστες σας να **αποκτούν προσωρινές πιστοποιήσεις**. Αυτές οι πιστοποιήσεις είναι απαραίτητες για την πρόσβαση σε διάφορες υπηρεσίες AWS, συμπεριλαμβανομένων αλλά όχι περιορισμένων σε Amazon S3 και DynamoDB. Ένα αξιοσημείωτο χαρακτηριστικό των πισινών ταυτοτήτων είναι η υποστήριξή τους για ανώνυμους επισκέπτες καθώς και για μια σειρά παρόχων ταυτοτήτων για την αυθεντικοποίηση χρηστών. Οι υποστηριζόμενοι πάροχοι ταυτοτήτων περιλαμβάνουν:
|
||||
|
||||
- Amazon Cognito user pools
|
||||
- Επιλογές κοινωνικής σύνδεσης όπως Facebook, Google, Login with Amazon, και Sign in with Apple
|
||||
- Πάροχοι συμβατοί με OpenID Connect (OIDC)
|
||||
- SAML (Security Assertion Markup Language) πάροχοι ταυτότητας
|
||||
- SAML (Security Assertion Markup Language) πάροχοι ταυτοτήτων
|
||||
- Ταυτότητες που πιστοποιούνται από προγραμματιστές
|
||||
```python
|
||||
# Sample code to demonstrate how to integrate an identity provider with an identity pool can be structured as follows:
|
||||
@@ -35,7 +35,7 @@ print(response)
|
||||
```
|
||||
### Cognito Sync
|
||||
|
||||
Για να δημιουργήσετε συνεδρίες Identity Pool, πρέπει πρώτα να **δημιουργήσετε μια Identity ID**. Αυτή η Identity ID είναι η **ταυτοποίηση της συνεδρίας αυτού του χρήστη**. Αυτές οι ταυτοποιήσεις μπορούν να έχουν έως 20 σύνολα δεδομένων που μπορούν να αποθηκεύσουν έως 1MB ζευγών κλειδιού-τιμής.
|
||||
Για να δημιουργήσετε συνεδρίες Identity Pool, πρέπει πρώτα να **δημιουργήσετε μια Identity ID**. Αυτή η Identity ID είναι η **ταυτοποίηση της συνεδρίας αυτού του χρήστη**. Αυτές οι ταυτοποιήσεις μπορούν να έχουν έως και 20 σύνολα δεδομένων που μπορούν να αποθηκεύσουν έως 1MB ζευγών κλειδιού-τιμής.
|
||||
|
||||
Αυτό είναι **χρήσιμο για να διατηρείτε πληροφορίες ενός χρήστη** (ο οποίος θα χρησιμοποιεί πάντα την ίδια Identity ID).
|
||||
|
||||
@@ -55,7 +55,7 @@ Pacu (new:test) > run cognito__attack --username randomuser --email XX+sdfs2@gma
|
||||
us-east-2:a06XXXXX-c9XX-4aXX-9a33-9ceXXXXXXXXX --user_pool_clients
|
||||
59f6tuhfXXXXXXXXXXXXXXXXXX@us-east-2_0aXXXXXXX
|
||||
```
|
||||
Δείγμα χρήσης cognito\_\_enum για τη συλλογή όλων των πισίνων χρηστών, πελατών πισίνας χρηστών, πισίνων ταυτότητας, χρηστών κ.λπ. που είναι ορατές στον τρέχοντα λογαριασμό AWS:
|
||||
Δείγμα χρήσης cognito\_\_enum για τη συλλογή όλων των πισινών χρηστών, πελατών πισινών χρηστών, πισινών ταυτοτήτων, χρηστών κ.λπ. που είναι ορατές στον τρέχοντα λογαριασμό AWS:
|
||||
```bash
|
||||
Pacu (new:test) > run cognito__enum
|
||||
```
|
||||
@@ -106,7 +106,7 @@ r = requests.post(url, json=params, headers=headers)
|
||||
|
||||
print(r.json())
|
||||
```
|
||||
Ή θα μπορούσατε να χρησιμοποιήσετε τις παρακάτω **aws cli εντολές**:
|
||||
Ή μπορείτε να χρησιμοποιήσετε τις παρακάτω **aws cli εντολές**:
|
||||
```bash
|
||||
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
|
||||
@@ -184,6 +184,6 @@ aws cognito-identity get-credentials-for-identity \
|
||||
</code></pre>
|
||||
|
||||
> [!WARNING]
|
||||
> Είναι δυνατόν να **ρυθμίσετε διαφορετικούς ρόλους IAM ανάλογα με τον πάροχο ταυτότητας** με τον οποίο ο χρήστης συνδέεται ή ακόμη και απλά ανάλογα **με τον χρήστη** (χρησιμοποιώντας claims). Επομένως, αν έχετε πρόσβαση σε διαφορετικούς χρήστες μέσω του ίδιου ή διαφορετικών παρόχων, ίσως αξίζει να συνδεθείτε και να αποκτήσετε πρόσβαση στους ρόλους IAM όλων τους.
|
||||
> Είναι δυνατόν να **ρυθμίσετε διαφορετικούς ρόλους IAM ανάλογα με τον πάροχο ταυτότητας** που έχει συνδεθεί ο χρήστης ή ακόμη και απλά ανάλογα **με τον χρήστη** (χρησιμοποιώντας δηλώσεις). Επομένως, αν έχετε πρόσβαση σε διαφορετικούς χρήστες μέσω του ίδιου ή διαφορετικών παρόχων, ίσως αξίζει να συνδεθείτε και να αποκτήσετε πρόσβαση στους ρόλους IAM όλων τους.
|
||||
|
||||
{{#include ../../../../banners/hacktricks-training.md}}
|
||||
|
||||
+2
-2
@@ -6,7 +6,7 @@
|
||||
|
||||
### `cloudtasks.tasks.create`, `iam.serviceAccounts.actAs`
|
||||
|
||||
Ένας επιτιθέμενος με αυτές τις άδειες μπορεί να **παριστάνει άλλους λογαριασμούς υπηρεσιών** δημιουργώντας εργασίες που εκτελούνται με την ταυτότητα του καθορισμένου λογαριασμού υπηρεσίας. Αυτό επιτρέπει την αποστολή **επαληθευμένων HTTP αιτημάτων σε υπηρεσίες Cloud Run ή Cloud Functions που προστατεύονται από IAM**.
|
||||
Ένας επιτιθέμενος με αυτές τις άδειες μπορεί να **παριστάνει άλλους λογαριασμούς υπηρεσιών** δημιουργώντας εργασίες που εκτελούνται με την ταυτότητα του συγκεκριμένου λογαριασμού υπηρεσίας. Αυτό επιτρέπει την αποστολή **επαληθευμένων HTTP αιτημάτων σε υπηρεσίες Cloud Run ή Cloud Functions που προστατεύονται από IAM**.
|
||||
```bash
|
||||
gcloud tasks create-http-task \
|
||||
task-$(date '+%Y%m%d%H%M%S') \
|
||||
@@ -36,7 +36,7 @@ gcloud tasks queues add-iam-policy-binding \
|
||||
--member serviceAccount:<account>@<project_id>.iam.gserviceaccount.com \
|
||||
--role roles/cloudtasks.admin
|
||||
```
|
||||
Αυτό επιτρέπει στον επιτιθέμενο να παραχωρήσει πλήρη δικαιώματα διαχειριστή Cloud Tasks στην ουρά σε οποιονδήποτε λογαριασμό υπηρεσίας ελέγχει.
|
||||
Αυτό επιτρέπει στον επιτιθέμενο να παραχωρήσει πλήρη δικαιώματα διαχειριστή Cloud Tasks στην ουρά σε οποιονδήποτε λογαριασμό υπηρεσίας ελέγχουν.
|
||||
|
||||
## Αναφορές
|
||||
|
||||
|
||||
Reference in New Issue
Block a user