AWS - Cloudformation Privesc
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Για περισσότερες πληροφορίες σχετικά με το cloudformation, ελέγξτε:
iam:PassRole
, cloudformation:CreateStack
Ένας επιτιθέμενος με αυτές τις άδειες μπορεί να κλιμακώσει τα προνόμια δημιουργώντας ένα CloudFormation stack με ένα προσαρμοσμένο πρότυπο, φιλοξενούμενο στον διακομιστή τους, για να εκτελέσει ενέργειες υπό τις άδειες ενός καθορισμένου ρόλου:
Στην παρακάτω σελίδα έχετε ένα παράδειγμα εκμετάλλευσης με την επιπλέον άδεια cloudformation:DescribeStacks
:
Πιθανές Επιπτώσεις: Privesc στον ρόλο υπηρεσίας cloudformation που καθορίζεται.
iam:PassRole
, (cloudformation:UpdateStack
| cloudformation:SetStackPolicy
)Σε αυτή την περίπτωση μπορείτε να καταχραστείτε μια υπάρχουσα στοίβα cloudformation για να την ενημερώσετε και να κλιμακώσετε τα προνόμια όπως στο προηγούμενο σενάριο:
Η άδεια cloudformation:SetStackPolicy
μπορεί να χρησιμοποιηθεί για να δώσετε στον εαυτό σας άδεια UpdateStack
πάνω σε ένα stack και να εκτελέσετε την επίθεση.
Πιθανές Επιπτώσεις: Privesc στον ρόλο υπηρεσίας cloudformation που έχει καθοριστεί.
cloudformation:UpdateStack
| cloudformation:SetStackPolicy
Εάν έχετε αυτή την άδεια αλλά όχι iam:PassRole
, μπορείτε ακόμα να ενημερώσετε τα stacks που χρησιμοποιούνται και να εκμεταλλευτείτε τους IAM Ρόλους που έχουν ήδη συνημμένους. Ελέγξτε την προηγούμενη ενότητα για παράδειγμα εκμετάλλευσης (απλά μην υποδείξετε κανέναν ρόλο στην ενημέρωση).
Η άδεια cloudformation:SetStackPolicy
μπορεί να χρησιμοποιηθεί για να δώσετε στον εαυτό σας άδεια UpdateStack
πάνω σε ένα stack και να εκτελέσετε την επίθεση.
Πιθανές Επιπτώσεις: Privesc στον ρόλο υπηρεσίας cloudformation που έχει ήδη συνημμένο.
iam:PassRole
,((cloudformation:CreateChangeSet
, cloudformation:ExecuteChangeSet
) | cloudformation:SetStackPolicy
)Ένας επιτιθέμενος με άδειες να περάσει έναν ρόλο και να δημιουργήσει & εκτελέσει ένα ChangeSet μπορεί να δημιουργήσει/ενημερώσει ένα νέο cloudformation stack και να εκμεταλλευτεί τους ρόλους υπηρεσίας cloudformation ακριβώς όπως με το CreateStack ή UpdateStack.
Η παρακάτω εκμετάλλευση είναι μια παραλλαγή του CreateStack one χρησιμοποιώντας τις άδειες ChangeSet για να δημιουργήσει ένα stack.
Η άδεια cloudformation:SetStackPolicy
μπορεί να χρησιμοποιηθεί για να δώσετε στον εαυτό σας άδειες ChangeSet
πάνω σε ένα stack και να εκτελέσετε την επίθεση.
Πιθανές Επιπτώσεις: Privesc σε ρόλους υπηρεσίας cloudformation.
cloudformation:CreateChangeSet
, cloudformation:ExecuteChangeSet
) | cloudformation:SetStackPolicy
)Αυτό είναι όπως η προηγούμενη μέθοδος χωρίς να περάσετε ρόλους IAM, οπότε μπορείτε απλά να καταχραστείτε αυτούς που είναι ήδη συνδεδεμένοι, απλά τροποποιήστε την παράμετρο:
Πιθανές Επιπτώσεις: Privesc στον ρόλο υπηρεσίας cloudformation που είναι ήδη συνημμένος.
iam:PassRole
,(cloudformation:CreateStackSet
| cloudformation:UpdateStackSet
)Ένας επιτιθέμενος θα μπορούσε να εκμεταλλευτεί αυτές τις άδειες για να δημιουργήσει/ενημερώσει StackSets για να εκμεταλλευτεί αυθαίρετους ρόλους cloudformation.
Πιθανές Επιπτώσεις: Privesc στους ρόλους υπηρεσίας cloudformation.
cloudformation:UpdateStackSet
Ένας επιτιθέμενος θα μπορούσε να εκμεταλλευτεί αυτή την άδεια χωρίς την άδεια passRole για να ενημερώσει StackSets για να εκμεταλλευτεί τους συνημμένους ρόλους cloudformation.
Πιθανές Επιπτώσεις: Privesc στους συνημμένους ρόλους cloudformation.
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)