Translated ['src/pentesting-cloud/aws-security/aws-basic-information/REA

This commit is contained in:
Translator
2025-04-11 00:29:39 +00:00
parent 611c21ec75
commit cf8e591491
4 changed files with 39 additions and 39 deletions
@@ -27,7 +27,7 @@
Ο λογαριασμός διαχείρισης έχει τις **ευθύνες ενός λογαριασμού πληρωμής** και είναι υπεύθυνος για την πληρωμή όλων των χρεώσεων που προκύπτουν από τους λογαριασμούς μελών. Δεν μπορείτε να αλλάξετε τον λογαριασμό διαχείρισης μιας οργάνωσης.
- Οι **λογαριασμοί μελών** αποτελούν όλους τους υπόλοιπους λογαριασμούς σε μια οργάνωση. Ένας λογαριασμός μπορεί να είναι μέλος μόνο μιας οργάνωσης τη φορά. Μπορείτε να επισυνάψετε μια πολιτική σε έναν λογαριασμό για να εφαρμόσετε ελέγχους μόνο σε αυτόν τον λογαριασμό.
- Οι λογαριασμοί μελών **πρέπει να χρησιμοποιούν μια έγκυρη διεύθυνση email** και μπορούν να έχουν ένα **όνομα**, γενικά δεν θα μπορούν να διαχειρίζονται την τιμολόγηση (αλλά μπορεί να τους δοθεί πρόσβαση σε αυτή).
- Οι λογαριασμοί μελών **πρέπει να χρησιμοποιούν μια έγκυρη διεύθυνση email** και μπορούν να έχουν ένα **όνομα**, γενικά δεν θα μπορούν να διαχειρίζονται την τιμολόγηση (αλλά μπορεί να τους δοθεί πρόσβαση σε αυτήν).
```
aws organizations create-account --account-name testingaccount --email testingaccount@lalala1233fr.com
```
@@ -40,7 +40,7 @@ aws organizations create-organizational-unit --parent-id r-lalala --name TestOU
```
### Service Control Policy (SCP)
Μια **service control policy (SCP)** είναι μια πολιτική που καθορίζει τις υπηρεσίες και τις ενέργειες που μπορούν να χρησιμοποιούν οι χρήστες και οι ρόλοι στους λογαριασμούς που επηρεάζει η SCP. Οι SCP είναι **παρόμοιες με τις πολιτικές δικαιωμάτων IAM** εκτός από το ότι **δεν παρέχουν κανένα δικαίωμα**. Αντίθετα, οι SCP καθορίζουν τα **μέγιστα δικαιώματα** για έναν οργανισμό, μια οργανωτική μονάδα (OU) ή έναν λογαριασμό. Όταν επισυνάπτετε μια SCP στη ρίζα του οργανισμού σας ή σε μια OU, η **SCP περιορίζει τα δικαιώματα για οντότητες σε λογαριασμούς μελών**.
Μια **service control policy (SCP)** είναι μια πολιτική που καθορίζει τις υπηρεσίες και τις ενέργειες που μπορούν να χρησιμοποιούν οι χρήστες και οι ρόλοι στους λογαριασμούς που επηρεάζει η SCP. Οι SCP είναι **παρόμοιες με τις πολιτικές δικαιωμάτων IAM** εκτός από το ότι **δεν παρέχουν κανένα δικαίωμα**. Αντίθετα, οι SCP καθορίζουν τα **μέγιστα δικαιώματα** για έναν οργανισμό, οργανωτική μονάδα (OU) ή λογαριασμό. Όταν επισυνάπτετε μια SCP στη ρίζα του οργανισμού σας ή σε μια OU, η **SCP περιορίζει τα δικαιώματα για οντότητες σε μέλη λογαριασμούς**.
Αυτή είναι η ΜΟΝΗ τρόπος που **ακόμα και ο ριζικός χρήστης μπορεί να σταματήσει** να κάνει κάτι. Για παράδειγμα, θα μπορούσε να χρησιμοποιηθεί για να σταματήσει τους χρήστες από το να απενεργοποιούν το CloudTrail ή να διαγράφουν αντίγραφα ασφαλείας.\
Ο μόνος τρόπος να παρακαμφθεί αυτό είναι να παραβιαστεί επίσης ο **κύριος λογαριασμός** που ρυθμίζει τις SCP (ο κύριος λογαριασμός δεν μπορεί να αποκλειστεί).
@@ -78,9 +78,9 @@ aws organizations create-organizational-unit --parent-id r-lalala --name TestOU
Παραδείγματα RCP:
- Περιορίστε τα S3 buckets ώστε να μπορούν να προσπελαστούν μόνο από κύριους εντός του οργανισμού σας
- Περιορίστε τη χρήση κλειδιών KMS ώστε να επιτρέπονται μόνο λειτουργίες από αξιόπιστους οργανωτικούς λογαριασμούς
- Περιορίστε τη χρήση κλειδιών KMS ώστε να επιτρέπουν μόνο λειτουργίες από αξιόπιστους οργανωτικούς λογαριασμούς
- Περιορίστε τα δικαιώματα στις SQS ουρές για να αποτρέψετε μη εξουσιοδοτημένες τροποποιήσεις
- Επιβάλετε όρια πρόσβασης σε μυστικά του Secrets Manager για να προστατεύσετε ευαίσθητα δεδομένα
- Επιβάλετε όρια πρόσβασης στα μυστικά του Secrets Manager για να προστατεύσετε ευαίσθητα δεδομένα
Βρείτε παραδείγματα στην [τεκμηρίωση Πολιτικών Ελέγχου Πόρων AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html)
@@ -106,7 +106,7 @@ arn:aws:elasticbeanstalk:us-west-1:123456789098:environment/App/Env
- **Authorization** - Καθορίζει τι μπορεί να έχει πρόσβαση μια ταυτότητα μέσα σε ένα σύστημα μόλις έχει επαληθευτεί σε αυτό.
- **Access Control** - Η μέθοδος και η διαδικασία με την οποία παρέχεται πρόσβαση σε έναν ασφαλή πόρο.
Το IAM μπορεί να οριστεί από την ικανότητά του να διαχειρίζεται, ελέγχει και κυβερνά τους μηχανισμούς επαλήθευσης, εξουσιοδότησης και ελέγχου πρόσβασης ταυτοτήτων στους πόρους σας μέσα στον λογαριασμό σας στο AWS.
Το IAM μπορεί να οριστεί από την ικανότητά του να διαχειρίζεται, ελέγχει και κυβερνά τους μηχανισμούς αυθεντικοποίησης, εξουσιοδότησης και ελέγχου πρόσβασης ταυτοτήτων στους πόρους σας μέσα στον λογαριασμό σας στο AWS.
### [AWS account root user](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html) <a href="#id_root" id="id_root"></a>
@@ -130,11 +130,11 @@ arn:aws:elasticbeanstalk:us-west-1:123456789098:environment/App/Env
- **Secret access key ID**: 40 τυχαίοι χαρακτήρες κεφαλαίους και πεζούς: S836fh/J73yHSb64Ag3Rkdi/jaD6sPl6/antFtU (Δεν είναι δυνατή η ανάκτηση χαμένων κωδικών πρόσβασης).
Όποτε χρειάζεστε να **αλλάξετε το Access Key**, αυτή είναι η διαδικασία που πρέπει να ακολουθήσετε:\
_Δημιουργήστε ένα νέο κλειδί πρόσβασης -> Εφαρμόστε το νέο κλειδί στο σύστημα/εφαρμογή -> σημειώστε το αρχικό ως ανενεργό -> Δοκιμάστε και επαληθεύστε ότι το νέο κλειδί πρόσβασης λειτουργεί -> Διαγράψτε το παλιό κλειδί πρόσβασης_
_Δημιουργήστε ένα νέο access key -> Εφαρμόστε το νέο κλειδί στο σύστημα/εφαρμογή -> σημειώστε το αρχικό ως ανενεργό -> Δοκιμάστε και επαληθεύστε ότι το νέο access key λειτουργεί -> Διαγράψτε το παλιό access key_
### MFA - Multi Factor Authentication
Χρησιμοποιείται για να **δημιουργήσει έναν επιπλέον παράγοντα για την επαλήθευση** εκτός από τις υπάρχουσες μεθόδους σας, όπως ο κωδικός πρόσβασης, δημιουργώντας έτσι ένα επίπεδο πολλαπλής επαλήθευσης.\
Χρησιμοποιείται για να **δημιουργήσει έναν επιπλέον παράγοντα για την αυθεντικοποίηση** εκτός από τις υπάρχουσες μεθόδους σας, όπως ο κωδικός πρόσβασης, δημιουργώντας έτσι ένα επίπεδο πολλαπλής αυθεντικοποίησης.\
Μπορείτε να χρησιμοποιήσετε μια **δωρεάν εικονική εφαρμογή ή μια φυσική συσκευή**. Μπορείτε να χρησιμοποιήσετε εφαρμογές όπως η Google Authentication δωρεάν για να ενεργοποιήσετε το MFA στο AWS.
Πολιτικές με συνθήκες MFA μπορούν να συνημμένες στα εξής:
@@ -154,14 +154,14 @@ aws sts get-session-token --serial-number <arn_device> --token-code <code>
Μια ομάδα [χρηστών IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) είναι ένας τρόπος για να **συνδέσετε πολιτικές σε πολλούς χρήστες** ταυτόχρονα, κάτι που μπορεί να διευκολύνει τη διαχείριση των δικαιωμάτων για αυτούς τους χρήστες. **Οι ρόλοι και οι ομάδες δεν μπορούν να είναι μέρος μιας ομάδας**.
Μπορείτε να συνδέσετε μια **πολιτική βάσει ταυτότητας σε μια ομάδα χρηστών** έτσι ώστε όλοι οι **χρήστες** στην ομάδα χρηστών **να λαμβάνουν τα δικαιώματα της πολιτικής**. **Δεν μπορείτε** να προσδιορίσετε μια **ομάδα χρηστών** ως **`Principal`** σε μια **πολιτική** (όπως μια πολιτική βάσης πόρων) επειδή οι ομάδες σχετίζονται με τα δικαιώματα, όχι με την ταυτοποίηση, και οι principals είναι ταυτοποιημένες οντότητες IAM.
Μπορείτε να συνδέσετε μια **πολιτική βάσει ταυτότητας σε μια ομάδα χρηστών** έτσι ώστε όλοι οι **χρήστες** στην ομάδα χρηστών **να λαμβάνουν τα δικαιώματα της πολιτικής**. **Δεν μπορείτε** να προσδιορίσετε μια **ομάδα χρηστών** ως **`Principal`** σε μια **πολιτική** (όπως μια πολιτική βάσης πόρων) επειδή οι ομάδες σχετίζονται με τα δικαιώματα, όχι με την αυθεντικοποίηση, και οι principals είναι αυθεντικοποιημένες οντότητες IAM.
Ακολουθούν μερικά σημαντικά χαρακτηριστικά των ομάδων χρηστών:
- Μια **ομάδα** χρηστών μπορεί να **περιέχει πολλούς χρήστες**, και ένας **χρήστης** μπορεί να **ανήκει σε πολλές ομάδες**.
- **Οι ομάδες χρηστών δεν μπορούν να είναι φωλιασμένες**; μπορούν να περιέχουν μόνο χρήστες, όχι άλλες ομάδες χρηστών.
- Δεν υπάρχει **καμία προεπιλεγμένη ομάδα χρηστών που να περιλαμβάνει αυτόματα όλους τους χρήστες στον λογαριασμό AWS**. Εάν θέλετε να έχετε μια ομάδα χρηστών όπως αυτή, πρέπει να τη δημιουργήσετε και να αναθέσετε κάθε νέο χρήστη σε αυτήν.
- Ο αριθμός και το μέγεθος των πόρων IAM σε έναν λογαριασμό AWS, όπως ο αριθμός των ομάδων και ο αριθμός των ομάδων στις οποίες μπορεί να είναι μέλος ένας χρήστης, είναι περιορισμένα. Για περισσότερες πληροφορίες, δείτε [IAM και όρια AWS STS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html).
- Δεν υπάρχει **καμία προεπιλεγμένη ομάδα χρηστών που να περιλαμβάνει αυτόματα όλους τους χρήστες στον λογαριασμό AWS**. Εάν θέλετε να έχετε μια τέτοια ομάδα χρηστών, πρέπει να τη δημιουργήσετε και να αναθέσετε κάθε νέο χρήστη σε αυτήν.
- Ο αριθμός και το μέγεθος των πόρων IAM σε έναν λογαριασμό AWS, όπως ο αριθμός των ομάδων και ο αριθμός των ομάδων στις οποίες μπορεί να είναι μέλος ένας χρήστης, είναι περιορισμένα. Για περισσότερες πληροφορίες, δείτε [ποσοστά IAM και AWS STS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html).
### [Ρόλοι IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) <a href="#id_iam-roles" id="id_iam-roles"></a>
@@ -187,7 +187,7 @@ aws sts get-session-token --serial-number <arn_device> --token-code <code>
- Πολιτικές διαχείρισης πελατών: Ρυθμισμένες από εσάς. Μπορείτε να δημιουργήσετε πολιτικές βασισμένες σε πολιτικές διαχείρισης AWS (τροποποιώντας μία από αυτές και δημιουργώντας τη δική σας), χρησιμοποιώντας τον γεννήτρια πολιτικών (μια GUI προβολή που σας βοηθά να παραχωρείτε και να αρνείστε δικαιώματα) ή γράφοντας τη δική σας.
Κατά **προεπιλογή, η πρόσβαση** είναι **αρνητική**, η πρόσβαση θα παραχωρηθεί εάν έχει καθοριστεί ρητά ένας ρόλος.\
Εάν **υπάρχει μία μόνο "Άρνηση", θα υπερισχύσει της "Άδειας"**, εκτός από αιτήματα που χρησιμοποιούν τα διαπιστευτήρια ασφαλείας του ριζικού λογαριασμού AWS (τα οποία επιτρέπονται κατά προεπιλογή).
Εάν **υπάρχει μία μόνο "Άρνηση", θα υπερισχύσει της "Άδειας"**, εκτός από αιτήματα που χρησιμοποιούν τα διαπιστευτήρια ασφαλείας του ριζικού λογαριασμού AWS (τα οποία επιτρέπονται από προεπιλογή).
```javascript
{
"Version": "2012-10-17", //Version of the policy
@@ -215,26 +215,26 @@ aws sts get-session-token --serial-number <arn_device> --token-code <code>
#### Inline Policies
Αυτός ο τύπος πολιτικών είναι **άμεσα ανατεθειμένος** σε έναν χρήστη, ομάδα ή ρόλο. Έτσι, δεν εμφανίζονται στη λίστα Πολιτικών καθώς κανένας άλλος μπορεί να τις χρησιμοποιήσει.\
Αυτός ο τύπος πολιτικών είναι **άμεσα ανατεθειμένος** σε έναν χρήστη, ομάδα ή ρόλο. Έτσι, δεν εμφανίζονται στη λίστα Πολιτικών καθώς οποιοσδήποτε άλλος μπορεί να τις χρησιμοποιήσει.\
Οι inline πολιτικές είναι χρήσιμες αν θέλετε να **διατηρήσετε μια αυστηρή σχέση ένα προς ένα μεταξύ μιας πολιτικής και της ταυτότητας** στην οποία εφαρμόζεται. Για παράδειγμα, θέλετε να είστε σίγουροι ότι οι άδειες σε μια πολιτική δεν ανατίθενται κατά λάθος σε μια ταυτότητα εκτός από αυτήν για την οποία προορίζονται. Όταν χρησιμοποιείτε μια inline πολιτική, οι άδειες στην πολιτική δεν μπορούν να προσαρτηθούν κατά λάθος στη λάθος ταυτότητα. Επιπλέον, όταν χρησιμοποιείτε την κονσόλα διαχείρισης AWS για να διαγράψετε αυτήν την ταυτότητα, οι πολιτικές που ενσωματώνονται στην ταυτότητα διαγράφονται επίσης. Αυτό συμβαίνει επειδή είναι μέρος της κύριας οντότητας.
#### Resource Bucket Policies
Αυτές είναι **πολιτικές** που μπορούν να οριστούν σε **πόρους**. **Όχι όλοι οι πόροι του AWS τις υποστηρίζουν**.
Αυτές είναι **πολιτικές** που μπορούν να οριστούν σε **πόρους**. **Όλοι οι πόροι του AWS δεν τις υποστηρίζουν**.
Εάν μια κύρια οντότητα δεν έχει ρητή άρνηση γι' αυτές, και μια πολιτική πόρου τους παραχωρεί πρόσβαση, τότε επιτρέπεται.
### IAM Boundaries
Οι όρια IAM μπορούν να χρησιμοποιηθούν για να **περιορίσουν τις άδειες που πρέπει να έχει πρόσβαση ένας χρήστης ή ρόλος**. Με αυτόν τον τρόπο, ακόμη και αν μια διαφορετική σειρά αδειών παραχωρηθεί στον χρήστη από μια **διαφορετική πολιτική**, η λειτουργία θα **αποτύχει** αν προσπαθήσει να τις χρησιμοποιήσει.
Οι IAM boundaries μπορούν να χρησιμοποιηθούν για να **περιορίσουν τις άδειες που πρέπει να έχει πρόσβαση ένας χρήστης ή ρόλος**. Με αυτόν τον τρόπο, ακόμη και αν μια διαφορετική σειρά αδειών παραχωρηθεί στον χρήστη από μια **διαφορετική πολιτική**, η λειτουργία θα **αποτύχει** αν προσπαθήσει να τις χρησιμοποιήσει.
Ένα όριο είναι απλώς μια πολιτική που συνδέεται με έναν χρήστη και **υποδεικνύει το μέγιστο επίπεδο αδειών που μπορεί να έχει ο χρήστης ή ο ρόλος**. Έτσι, **ακόμη και αν ο χρήστης έχει πρόσβαση Διαχειριστή**, αν το όριο υποδεικνύει ότι μπορεί να διαβάσει μόνο S· buckets, αυτό είναι το μέγιστο που μπορεί να κάνει.
Μια boundary είναι απλώς μια πολιτική που συνδέεται με έναν χρήστη και **υποδεικνύει το μέγιστο επίπεδο αδειών που μπορεί να έχει ο χρήστης ή ο ρόλος**. Έτσι, **ακόμη και αν ο χρήστης έχει πρόσβαση Διαχειριστή**, αν η boundary υποδεικνύει ότι μπορεί να διαβάσει μόνο S· buckets, αυτό είναι το μέγιστο που μπορεί να κάνει.
**Αυτό**, **SCPs** και **η τήρηση της αρχής της ελάχιστης προνομίας** είναι οι τρόποι ελέγχου ώστε οι χρήστες να μην έχουν περισσότερες άδειες από αυτές που χρειάζονται.
### Session Policies
Μια πολιτική συνεδρίας είναι μια **πολιτική που ορίζεται όταν αναλαμβάνεται ένας ρόλος** με κάποιο τρόπο. Αυτό θα είναι σαν ένα **όριο IAM για αυτή τη συνεδρία**: Αυτό σημαίνει ότι η πολιτική συνεδρίας δεν παραχωρεί άδειες αλλά **περιορίζει αυτές στις αναφερόμενες στην πολιτική** (με τις μέγιστες άδειες να είναι αυτές που έχει ο ρόλος).
Μια πολιτική συνεδρίας είναι μια **πολιτική που ορίζεται όταν αναλαμβάνεται ένας ρόλος** με κάποιο τρόπο. Αυτό θα είναι σαν μια **IAM boundary για αυτή τη συνεδρία**: Αυτό σημαίνει ότι η πολιτική συνεδρίας δεν παραχωρεί άδειες αλλά **περιορίζει αυτές στις αναφερόμενες στην πολιτική** (με τις μέγιστες άδειες να είναι αυτές που έχει ο ρόλος).
Αυτό είναι χρήσιμο για **μέτρα ασφαλείας**: Όταν ένας διαχειριστής πρόκειται να αναλάβει έναν πολύ προνομιακό ρόλο, θα μπορούσε να περιορίσει την άδεια μόνο στις αναφερόμενες στην πολιτική συνεδρίας σε περίπτωση που η συνεδρία παραβιαστεί.
```bash
@@ -244,16 +244,16 @@ aws sts assume-role \
[--policy-arns <arn_custom_policy1> <arn_custom_policy2>]
[--policy <file://policy.json>]
```
Σημειώστε ότι από προεπιλογή **το AWS μπορεί να προσθέσει πολιτικές συνεδρίας σε συνεδρίες** που πρόκειται να δημιουργηθούν λόγω τρίτων λόγων. Για παράδειγμα, σε [μη αυθεντικοποιημένους ρόλους cognito](../aws-services/aws-cognito-enum/cognito-identity-pools.md#accessing-iam-roles) από προεπιλογή (χρησιμοποιώντας ενισχυμένη αυθεντικοποίηση), το AWS θα δημιουργήσει **διαπιστευτήρια συνεδρίας με πολιτική συνεδρίας** που περιορίζει τις υπηρεσίες που μπορεί να έχει πρόσβαση η συνεδρία [**στην παρακάτω λίστα**](https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html#access-policies-scope-down-services).
Σημειώστε ότι από προεπιλογή **η AWS μπορεί να προσθέσει πολιτικές συνεδρίας σε συνεδρίες** που πρόκειται να δημιουργηθούν λόγω τρίτων λόγων. Για παράδειγμα, σε [μη αυθεντικοποιημένους ρόλους cognito](../aws-services/aws-cognito-enum/cognito-identity-pools.md#accessing-iam-roles) από προεπιλογή (χρησιμοποιώντας ενισχυμένη αυθεντικοποίηση), η AWS θα δημιουργήσει **διαπιστευτήρια συνεδρίας με πολιτική συνεδρίας** που περιορίζει τις υπηρεσίες που μπορεί να έχει πρόσβαση η συνεδρία [**στην παρακάτω λίστα**](https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html#access-policies-scope-down-services).
Επομένως, αν σε κάποιο σημείο αντιμετωπίσετε το σφάλμα "... επειδή καμία πολιτική συνεδρίας δεν επιτρέπει το ...", και ο ρόλος έχει πρόσβαση για να εκτελέσει την ενέργεια, είναι επειδή **υπάρχει μια πολιτική συνεδρίας που το εμποδίζει**.
Επομένως, αν σε κάποια στιγμή αντιμετωπίσετε το σφάλμα "... επειδή καμία πολιτική συνεδρίας δεν επιτρέπει το ...", και ο ρόλος έχει πρόσβαση για να εκτελέσει την ενέργεια, είναι επειδή **υπάρχει μια πολιτική συνεδρίας που το εμποδίζει**.
### Ομοσπονδία Ταυτότητας
Η ομοσπονδία ταυτότητας **επιτρέπει στους χρήστες από παρόχους ταυτότητας που είναι εξωτερικοί** στο AWS να έχουν ασφαλή πρόσβαση σε πόρους του AWS χωρίς να χρειάζεται να παρέχουν διαπιστευτήρια χρήστη AWS από έγκυρο λογαριασμό IAM.\
Ένα παράδειγμα παρόχου ταυτότητας μπορεί να είναι το δικό σας εταιρικό **Microsoft Active Directory** (μέσω **SAML**) ή υπηρεσίες **OpenID** (όπως **Google**). Η ομοσπονδία πρόσβασης θα επιτρέπει στους χρήστες εντός της να έχουν πρόσβαση στο AWS.
Η ομοσπονδία ταυτότητας **επιτρέπει στους χρήστες από παρόχους ταυτότητας που είναι εξωτερικοί** στην AWS να έχουν ασφαλή πρόσβαση σε πόρους της AWS χωρίς να χρειάζεται να παρέχουν διαπιστευτήρια χρήστη AWS από έγκυρο λογαριασμό IAM.\
Ένα παράδειγμα παρόχου ταυτότητας μπορεί να είναι το δικό σας εταιρικό **Microsoft Active Directory** (μέσω **SAML**) ή υπηρεσίες **OpenID** (όπως **Google**). Η ομοσπονδία πρόσβασης θα επιτρέπει στους χρήστες εντός της να έχουν πρόσβαση στην AWS.
Για να ρυθμίσετε αυτήν την εμπιστοσύνη, θα δημιουργηθεί ένας **Πάροχος Ταυτότητας IAM (SAML ή OAuth)** που θα **εμπιστεύεται** την **άλλη πλατφόρμα**. Στη συνέχεια, τουλάχιστον ένας **ρόλος IAM ανατίθεται (εμπιστευόμενος) στον Πάροχο Ταυτότητας**. Εάν ένας χρήστης από την εμπιστευμένη πλατφόρμα αποκτήσει πρόσβαση στο AWS, θα έχει πρόσβαση ως ο αναφερόμενος ρόλος.
Για να ρυθμίσετε αυτήν την εμπιστοσύνη, θα δημιουργηθεί ένας **Πάροχος Ταυτότητας IAM (SAML ή OAuth)** που θα **εμπιστεύεται** την **άλλη πλατφόρμα**. Στη συνέχεια, τουλάχιστον ένας **ρόλος IAM ανατίθεται (εμπιστευόμενος) στον Πάροχο Ταυτότητας**. Εάν ένας χρήστης από την εμπιστευμένη πλατφόρμα αποκτήσει πρόσβαση στην AWS, θα έχει πρόσβαση ως ο αναφερόμενος ρόλος.
Ωστόσο, συνήθως θα θέλετε να δώσετε έναν **διαφορετικό ρόλο ανάλογα με την ομάδα του χρήστη** στην τρίτη πλατφόρμα. Στη συνέχεια, αρκετοί **ρόλοι IAM μπορούν να εμπιστεύονται** τον τρίτο Πάροχο Ταυτότητας και η τρίτη πλατφόρμα θα είναι αυτή που θα επιτρέπει στους χρήστες να αναλαμβάνουν έναν ρόλο ή τον άλλο.
@@ -275,7 +275,7 @@ aws sts assume-role \
Στην απλούστερη περίπτωση του καταλόγου Κέντρου Ταυτότητας, το **Κέντρο Ταυτότητας θα έχει μια λίστα χρηστών & ομάδων** και θα μπορεί να **αναθέτει πολιτικές** σε αυτούς για **οποιουσδήποτε από τους λογαριασμούς** της οργάνωσης.
Για να δώσετε πρόσβαση σε έναν χρήστη/ομάδα του Κέντρου Ταυτότητας σε έναν λογαριασμό, θα δημιουργηθεί ένας **Πάροχος Ταυτότητας SAML που εμπιστεύεται το Κέντρο Ταυτότητας**, και θα δημιουργηθεί ένας **ρόλος που εμπιστεύεται τον Πάροχο Ταυτότητας με τις καθορισμένες πολιτικές** στον προορισμό λογαριασμό.
Για να δώσετε πρόσβαση σε έναν χρήστη/ομάδα του Κέντρου Ταυτότητας σε έναν λογαριασμό, θα δημιουργηθεί ένας **Πάροχος Ταυτότητας SAML που εμπιστεύεται το Κέντρο Ταυτότητας**, και θα δημιουργηθεί ένας **ρόλος που εμπιστεύεται τον Πάροχο Ταυτότητας με τις καθορισμένες πολιτικές** στον προορισμένο λογαριασμό.
#### AwsSSOInlinePolicy
@@ -285,7 +285,7 @@ aws sts assume-role \
### Διασυνοριακές Εμπιστοσύνες και Ρόλοι
**Ένας χρήστης** (εμπιστευόμενος) μπορεί να δημιουργήσει έναν Διασυνοριακό Ρόλο με κάποιες πολιτικές και στη συνέχεια, **να επιτρέψει σε έναν άλλο χρήστη** (εμπιστευμένος) να **έχει πρόσβαση στον λογαριασμό του** αλλά μόνο **έχοντας την πρόσβαση που υποδεικνύεται στις νέες πολιτικές ρόλου**. Για να το δημιουργήσετε, απλώς δημιουργήστε έναν νέο Ρόλο και επιλέξτε Διασυνοριακό Ρόλο. Οι ρόλοι για Διασυνοριακή Πρόσβαση προσφέρουν δύο επιλογές. Παροχή πρόσβασης μεταξύ λογαριασμών AWS που κατέχετε και παροχή πρόσβασης μεταξύ ενός λογαριασμού που κατέχετε και ενός τρίτου λογαριασμού AWS.\
**Ένας χρήστης** (εμπιστευόμενος) μπορεί να δημιουργήσει έναν Διασυνοριακό Ρόλο με κάποιες πολιτικές και στη συνέχεια, **να επιτρέψει σε έναν άλλο χρήστη** (εμπιστευμένος) να **έχει πρόσβαση στον λογαριασμό του** αλλά μόνο **έχοντας την πρόσβαση που υποδεικνύεται στις νέες πολιτικές ρόλου**. Για να το δημιουργήσετε αυτό, απλώς δημιουργήστε έναν νέο Ρόλο και επιλέξτε Διασυνοριακό Ρόλο. Οι ρόλοι για Διασυνοριακή Πρόσβαση προσφέρουν δύο επιλογές. Παρέχοντας πρόσβαση μεταξύ λογαριασμών AWS που κατέχετε, και παρέχοντας πρόσβαση μεταξύ ενός λογαριασμού που κατέχετε και ενός τρίτου λογαριασμού AWS.\
Συνιστάται να **καθορίσετε τον χρήστη που είναι εμπιστευμένος και να μην βάλετε κάτι γενικό** γιατί αν όχι, άλλοι αυθεντικοποιημένοι χρήστες όπως οι ομοσπονδικοί χρήστες θα μπορούν επίσης να εκμεταλλευτούν αυτήν την εμπιστοσύνη.
### AWS Simple AD
@@ -298,18 +298,18 @@ aws sts assume-role \
- Κάδος Ανακύκλωσης AD
- Διαχειριζόμενοι Λογαριασμοί Υπηρεσιών Ομάδας
- Επεκτάσεις Σχήματος
- Καμία Άμεση πρόσβαση στο OS ή σε Instances
- Καμία Άμεση πρόσβαση στο OS ή στις Εγκαταστάσεις
#### Ομοσπονδία Ιστού ή Αυθεντικοποίηση OpenID
Η εφαρμογή χρησιμοποιεί το AssumeRoleWithWebIdentity για να δημιουργήσει προσωρινά διαπιστευτήρια. Ωστόσο, αυτό δεν παρέχει πρόσβαση στην κονσόλα AWS, μόνο πρόσβαση σε πόρους εντός του AWS.
Η εφαρμογή χρησιμοποιεί το AssumeRoleWithWebIdentity για να δημιουργήσει προσωρινά διαπιστευτήρια. Ωστόσο, αυτό δεν παρέχει πρόσβαση στην κονσόλα AWS, μόνο πρόσβαση σε πόρους εντός της AWS.
### Άλλες επιλογές IAM
- Μπορείτε να **ρυθμίσετε μια πολιτική κωδικού πρόσβασης** με επιλογές όπως ελάχιστο μήκος και απαιτήσεις κωδικού πρόσβασης.
- Μπορείτε να **κατεβάσετε την "Έκθεση Διαπιστευτηρίων"** με πληροφορίες σχετικά με τα τρέχοντα διαπιστευτήρια (όπως χρόνος δημιουργίας χρήστη, αν είναι ενεργοποιημένος ο κωδικός πρόσβασης...). Μπορείτε να δημιουργήσετε μια έκθεση διαπιστευτηρίων όσο συχνά κάθε **τέσσερις ώρες**.
Η Διαχείριση Ταυτότητας και Πρόσβασης AWS (IAM) παρέχει **λεπτομερή έλεγχο πρόσβασης** σε όλο το AWS. Με το IAM, μπορείτε να καθορίσετε **ποιος μπορεί να έχει πρόσβαση σε ποιες υπηρεσίες και πόρους**, και υπό ποιες συνθήκες. Με τις πολιτικές IAM, διαχειρίζεστε τις άδειες στην εργατική σας δύναμη και τα συστήματα για να **διασφαλίσετε τις ελάχιστες άδειες**.
Η Διαχείριση Ταυτότητας και Πρόσβασης AWS (IAM) παρέχει **λεπτομερή έλεγχο πρόσβασης** σε όλη την AWS. Με το IAM, μπορείτε να καθορίσετε **ποιος μπορεί να έχει πρόσβαση σε ποιες υπηρεσίες και πόρους**, και υπό ποιες συνθήκες. Με τις πολιτικές IAM, διαχειρίζεστε τις άδειες στην εργατική σας δύναμη και τα συστήματα για να **διασφαλίσετε τις ελάχιστες άδειες**.
### Πρόθεμα ID IAM
@@ -348,7 +348,7 @@ aws sts assume-role \
### Αυθεντικοποίηση CLI
Για να μπορέσει ένας κανονικός χρήστης να αυθεντικοποιηθεί στο AWS μέσω CLI, πρέπει να έχει **τοπικά διαπιστευτήρια**. Από προεπιλογή μπορείτε να τα ρυθμίσετε **χειροκίνητα** στο `~/.aws/credentials` ή **τρέχοντας** `aws configure`.\
Για να μπορέσει ένας κανονικός χρήστης να αυθεντικοποιηθεί στην AWS μέσω CLI, πρέπει να έχει **τοπικά διαπιστευτήρια**. Από προεπιλογή μπορείτε να τα ρυθμίσετε **χειροκίνητα** στο `~/.aws/credentials` ή **τρέχοντας** `aws configure`.\
Σε αυτό το αρχείο μπορείτε να έχετε περισσότερα από ένα προφίλ, αν **δεν καθοριστεί προφίλ** χρησιμοποιώντας το **aws cli**, το προφίλ που ονομάζεται **`[default]`** σε αυτό το αρχείο θα χρησιμοποιηθεί.\
Παράδειγμα αρχείου διαπιστευτηρίων με περισσότερα από 1 προφίλ:
```
@@ -377,7 +377,7 @@ sts_regional_endpoints = regional
```
aws --profile acc2 ...
```
Αν ψάχνετε για κάτι **παρόμοιο** με αυτό αλλά για τον **πλοηγό**, μπορείτε να ελέγξετε την **επέκταση** [**AWS Extend Switch Roles**](https://chrome.google.com/webstore/detail/aws-extend-switch-roles/jpmkfafbacpgapdghgdpembnojdlgkdl?hl=en).
Αν ψάχνετε για κάτι **παρόμοιο** με αυτό αλλά για τον **περιηγητή**, μπορείτε να ελέγξετε την **επέκταση** [**AWS Extend Switch Roles**](https://chrome.google.com/webstore/detail/aws-extend-switch-roles/jpmkfafbacpgapdghgdpembnojdlgkdl?hl=en).
#### Αυτοματοποίηση προσωρινών διαπιστευτηρίων
@@ -14,19 +14,19 @@
Η Lambda χρησιμοποιεί μεταβλητές περιβάλλοντος για να εισάγει διαπιστευτήρια κατά την εκτέλεση. Αν μπορείτε να αποκτήσετε πρόσβαση σε αυτές (διαβάζοντας το `/proc/self/environ` ή χρησιμοποιώντας τη λειτουργία που είναι ευάλωτη), μπορείτε να τις χρησιμοποιήσετε. Βρίσκονται στα προεπιλεγμένα ονόματα μεταβλητών `AWS_SESSION_TOKEN`, `AWS_SECRET_ACCESS_KEY` και `AWS_ACCESS_KEY_ID`.
Από προεπιλογή, αυτές θα έχουν πρόσβαση για να γράφουν σε μια ομάδα καταγραφής cloudwatch (το όνομα της οποίας αποθηκεύεται στο `AWS_LAMBDA_LOG_GROUP_NAME`), καθώς και να δημιουργούν αυθαίρετες ομάδες καταγραφής, ωστόσο οι λειτουργίες lambda συχνά έχουν περισσότερες άδειες που έχουν ανατεθεί με βάση τη σκοπούμενη χρήση τους.
Από προεπιλογή, αυτές θα έχουν πρόσβαση για να γράφουν σε μια ομάδα καταγραφής cloudwatch (το όνομα της οποίας αποθηκεύεται στο `AWS_LAMBDA_LOG_GROUP_NAME`), καθώς και για να δημιουργούν αυθαίρετες ομάδες καταγραφής, ωστόσο οι λειτουργίες lambda συχνά έχουν περισσότερες άδειες που έχουν ανατεθεί με βάση τη σκοπούμενη χρήση τους.
### Κλοπή HTTP Αιτημάτων Άλλων Χρηστών Lambda
### Κλοπή Αιτημάτων URL Άλλων Lambda
Αν ένας επιτιθέμενος καταφέρει με κάποιο τρόπο να αποκτήσει RCE μέσα σε μια Lambda, θα είναι σε θέση να κλέψει τα HTTP αιτήματα άλλων χρηστών προς τη lambda. Αν τα αιτήματα περιέχουν ευαίσθητες πληροφορίες (cookies, διαπιστευτήρια...), θα μπορεί να τα κλέψει.
Αν ένας επιτιθέμενος καταφέρει με κάποιο τρόπο να αποκτήσει RCE μέσα σε μια Lambda, θα είναι σε θέση να κλέψει τα HTTP αιτήματα άλλων χρηστών προς τη lambda. Αν τα αιτήματα περιέχουν ευαίσθητες πληροφορίες (cookies, διαπιστευτήρια...), θα είναι σε θέση να τα κλέψει.
{{#ref}}
aws-warm-lambda-persistence.md
{{#endref}}
### Κλοπή HTTP Αιτημάτων Άλλων Χρηστών Lambda & Αιτημάτων Επεκτάσεων
### Κλοπή Αιτημάτων URL Άλλων Lambda & Αιτημάτων Επεκτάσεων
Καταχρώντας τις Lambda Layers είναι επίσης δυνατό να καταχραστεί κανείς τις επεκτάσεις και να παραμείνει στη lambda αλλά και να κλέψει και να τροποποιήσει αιτήματα.
Καταχρώντας τις Lambda Layers είναι επίσης δυνατό να καταχραστείτε τις επεκτάσεις και να παραμείνετε στη lambda αλλά και να κλέψετε και να τροποποιήσετε αιτήματα.
{{#ref}}
../../aws-persistence/aws-lambda-persistence/aws-abusing-lambda-extensions.md
@@ -89,7 +89,7 @@ aws cloudformation describe-stacks \
```
--change-set-type UPDATE
```
**Πιθανές Επιπτώσεις:** Privesc στο ρόλο υπηρεσίας cloudformation που έχει ήδη προσαρτηθεί.
**Πιθανές Επιπτώσεις:** Privesc στον ρόλο υπηρεσίας cloudformation που είναι ήδη συνδεδεμένος.
### `iam:PassRole`,(`cloudformation:CreateStackSet` | `cloudformation:UpdateStackSet`)
@@ -99,9 +99,9 @@ aws cloudformation describe-stacks \
### `cloudformation:UpdateStackSet`
Ένας επιτιθέμενος θα μπορούσε να εκμεταλλευτεί αυτή την άδεια χωρίς την άδεια passRole για να ενημερώσει StackSets για να εκμεταλλευτεί τους προσαρτημένους ρόλους cloudformation.
Ένας επιτιθέμενος θα μπορούσε να εκμεταλλευτεί αυτή την άδεια χωρίς την άδεια passRole για να ενημερώσει StackSets για να εκμεταλλευτεί τους συνδεδεμένους ρόλους cloudformation.
**Πιθανές Επιπτώσεις:** Privesc στους προσαρτημένους ρόλους cloudformation.
**Πιθανές Επιπτώσεις:** Privesc στους συνδεδεμένους ρόλους cloudformation.
## AWS CDK
@@ -109,7 +109,7 @@ aws cloudformation describe-stacks \
Για να χρησιμοποιήσετε το CDK, ένας διαχειριστικός χρήστης πρέπει πρώτα να εκκινήσει τον λογαριασμό, ο οποίος δημιουργεί αρκετούς ρόλους IAM, συμπεριλαμβανομένου του *exec role*, ο οποίος έχει \*/\* άδειες. Αυτοί οι ρόλοι ακολουθούν τη δομή ονοματοδοσίας `cdk-<qualifier>-<name>-<account-id>-<region>`. Η εκκίνηση πρέπει να γίνει μία φορά ανά περιοχή ανά λογαριασμό.
Από προεπιλογή, οι χρήστες CDK δεν έχουν πρόσβαση για να καταγράψουν τους ρόλους που απαιτούνται για τη χρήση του CDK, πράγμα που σημαίνει ότι θα χρειαστεί να τους προσδιορίσετε χειροκίνητα. Εάν παραβιάσετε μια μηχανή προγραμματιστή ή κάποιο κόμβο CI/CD, αυτοί οι ρόλοι μπορούν να υποτεθούν για να σας δώσουν τη δυνατότητα να αναπτύξετε πρότυπα CFN, χρησιμοποιώντας τον ρόλο `cfn-exec` για να επιτρέψετε στο CFN να αναπτύξει οποιουσδήποτε πόρους, πλήρως παραβιάζοντας τον λογαριασμό.
Από προεπιλογή, οι χρήστες CDK δεν έχουν πρόσβαση για να καταγράψουν τους ρόλους που απαιτούνται για τη χρήση του CDK, πράγμα που σημαίνει ότι θα χρειαστεί να τους προσδιορίσετε χειροκίνητα. Εάν παραβιάσετε τη μηχανή ενός προγραμματιστή ή κάποιο κόμβο CI/CD, αυτοί οι ρόλοι μπορούν να υποτεθούν για να σας δώσουν τη δυνατότητα να αναπτύξετε πρότυπα CFN, χρησιμοποιώντας τον ρόλο `cfn-exec` για να επιτρέψετε στο CFN να αναπτύξει οποιουσδήποτε πόρους, πλήρως παραβιάζοντας τον λογαριασμό.
### Προσδιορισμός των ονομάτων ρόλων
@@ -4,7 +4,7 @@
## CloudFormation
Η υπηρεσία AWS CloudFormation έχει σχεδιαστεί για να **απλοποιεί τη διαχείριση των πόρων AWS**. Επιτρέπει στους χρήστες να επικεντρώνονται περισσότερο στις εφαρμογές τους που εκτελούνται στο AWS, **ελαχιστοποιώντας τον χρόνο που δαπανάται στη διαχείριση πόρων**. Η κύρια δυνατότητα αυτής της υπηρεσίας είναι το **πρότυπο**—ένα περιγραφικό μοντέλο των επιθυμητών πόρων AWS. Μόλις παρασχεθεί αυτό το πρότυπο, το CloudFormation είναι υπεύθυνο για την **παροχή και τη διαμόρφωση** των καθορισμένων πόρων. Αυτή η αυτοματοποίηση διευκολύνει μια πιο αποδοτική και χωρίς σφάλματα διαχείριση της υποδομής AWS.
AWS CloudFormation είναι μια υπηρεσία σχεδιασμένη να **απλοποιεί τη διαχείριση των πόρων AWS**. Επιτρέπει στους χρήστες να εστιάζουν περισσότερο στις εφαρμογές τους που τρέχουν στο AWS μειώνοντας **τον χρόνο που δαπανάται στη διαχείριση πόρων**. Η κύρια δυνατότητα αυτής της υπηρεσίας είναι το **πρότυπο**—ένα περιγραφικό μοντέλο των επιθυμητών πόρων AWS. Μόλις παρασχεθεί αυτό το πρότυπο, το CloudFormation είναι υπεύθυνο για την **παροχή και τη διαμόρφωση** των καθορισμένων πόρων. Αυτή η αυτοματοποίηση διευκολύνει μια πιο αποδοτική και χωρίς σφάλματα διαχείριση της υποδομής AWS.
### Enumeration
```bash
@@ -31,7 +31,7 @@ aws cloudformation list-stack-set-operation-results --stack-set-name <name> --op
```
### Privesc
Στην παρακάτω σελίδα μπορείτε να ελέγξετε πώς να **καταχραστείτε τις άδειες cloudformation για να κλιμακώσετε τα προνόμια**:
Στην παρακάτω σελίδα μπορείτε να ελέγξετε πώς να **καταχραστείτε τις άδειες cloudformation για να κλιμακώσετε τα δικαιώματα**:
{{#ref}}
../aws-privilege-escalation/aws-cloudformation-privesc/