AWS - S3 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)
s3:PutBucketNotification
, s3:PutObject
, s3:GetObject
Ένας επιτιθέμενος με αυτές τις άδειες σε ενδιαφέροντα buckets μπορεί να είναι σε θέση να καταλάβει πόρους και να αναβαθμίσει τα προνόμια.
Για παράδειγμα, ένας επιτιθέμενος με αυτές τις άδειες σε ένα cloudformation bucket που ονομάζεται "cf-templates-nohnwfax6a6i-us-east-1" θα είναι σε θέση να καταλάβει την ανάπτυξη. Η πρόσβαση μπορεί να δοθεί με την παρακάτω πολιτική:
And the hijack is possible because there is a μικρό χρονικό παράθυρο από τη στιγμή που το πρότυπο ανεβαίνει στο bucket μέχρι τη στιγμή που το πρότυπο αναπτύσσεται. An attacker might just create a lambda function in his account that will trigger when a bucket notification is sent, and hijacks the content of that bucket.
The Pacu module cfn__resouce_injection
can be used to automate this attack.
For mor informatino check the original research: https://rhinosecuritylabs.com/aws/cloud-malware-cloudformation-injection/
s3:PutObject
, s3:GetObject
These are the permissions to get and upload objects to S3. Several services inside AWS (and outside of it) use S3 storage to store config files. An attacker with read access to them might find ευαίσθητες πληροφορίες on them. An attacker with write access to them could modify the data to abuse some service and try to escalate privileges. These are some examples:
If an EC2 instance is storing the user data in a S3 bucket, an attacker could modify it to execute arbitrary code inside the EC2 instance.
s3:PutBucketPolicy
An attacker, that needs to be from the same account, if not the error The specified method is not allowed will trigger
, with this permission will be able to grant himself more permissions over the bucket(s) allowing him to read, write, modify, delete and expose buckets.
s3:GetBucketAcl
, s3:PutBucketAcl
Ένας επιτιθέμενος θα μπορούσε να εκμεταλλευτεί αυτές τις άδειες για να του παραχωρήσει περισσότερη πρόσβαση σε συγκεκριμένα buckets. Σημειώστε ότι ο επιτιθέμενος δεν χρειάζεται να είναι από τον ίδιο λογαριασμό. Επιπλέον, η πρόσβαση εγγραφής
s3:GetObjectAcl
, s3:PutObjectAcl
Ένας επιτιθέμενος θα μπορούσε να εκμεταλλευτεί αυτές τις άδειες για να του παραχωρήσει περισσότερη πρόσβαση σε συγκεκριμένα αντικείμενα μέσα σε κάδους.
s3:GetObjectAcl
, s3:PutObjectVersionAcl
Ένας επιτιθέμενος με αυτά τα δικαιώματα αναμένεται να μπορεί να προσθέσει ένα Acl σε μια συγκεκριμένη έκδοση αντικειμένου
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)